[Orxonox-commit 4960] r9629 - in code/branches/core6: src/libraries/core src/libraries/core/class src/libraries/core/object src/libraries/network/packet src/libraries/network/synchronisable src/libraries/tools src/modules/designtools src/modules/docking src/modules/gametypes src/modules/notifications src/modules/notifications/dispatchers src/modules/objects src/modules/objects/collisionshapes src/modules/objects/eventsystem src/modules/objects/triggers src/modules/overlays src/modules/overlays/debugging src/modules/overlays/hud src/modules/overlays/stats src/modules/pickup src/modules/pickup/items src/modules/pong src/modules/portals src/modules/questsystem src/modules/questsystem/effects src/modules/tetris src/modules/towerdefense src/modules/weapons src/modules/weapons/munitions src/modules/weapons/projectiles src/modules/weapons/weaponmodes src/orxonox src/orxonox/chat src/orxonox/collisionshapes src/orxonox/controllers src/orxonox/gametypes src/orxonox/graphics src/orxonox/infos src/orxonox/items src/orxonox/overlays src/orxonox/sound src/orxonox/weaponsystem src/orxonox/worldentities src/orxonox/worldentities/pawns test/core/class test/core/object

landauf at orxonox.net landauf at orxonox.net
Fri Aug 9 21:26:47 CEST 2013


Author: landauf
Date: 2013-08-09 21:26:46 +0200 (Fri, 09 Aug 2013)
New Revision: 9629

Modified:
   code/branches/core6/src/libraries/core/BaseObject.cc
   code/branches/core6/src/libraries/core/BaseObject.h
   code/branches/core6/src/libraries/core/Loader.cc
   code/branches/core6/src/libraries/core/Namespace.cc
   code/branches/core6/src/libraries/core/Namespace.h
   code/branches/core6/src/libraries/core/Template.cc
   code/branches/core6/src/libraries/core/Template.h
   code/branches/core6/src/libraries/core/XMLPort.cc
   code/branches/core6/src/libraries/core/class/Identifier.cc
   code/branches/core6/src/libraries/core/class/Identifier.h
   code/branches/core6/src/libraries/core/class/SubclassIdentifier.h
   code/branches/core6/src/libraries/core/object/ClassFactory.h
   code/branches/core6/src/libraries/core/object/Context.cc
   code/branches/core6/src/libraries/core/object/Context.h
   code/branches/core6/src/libraries/network/packet/Gamestate.cc
   code/branches/core6/src/libraries/network/synchronisable/Synchronisable.cc
   code/branches/core6/src/libraries/network/synchronisable/Synchronisable.h
   code/branches/core6/src/libraries/tools/ResourceCollection.cc
   code/branches/core6/src/libraries/tools/ResourceCollection.h
   code/branches/core6/src/libraries/tools/ResourceLocation.cc
   code/branches/core6/src/libraries/tools/ResourceLocation.h
   code/branches/core6/src/modules/designtools/CreateStars.cc
   code/branches/core6/src/modules/designtools/CreateStars.h
   code/branches/core6/src/modules/docking/Dock.cc
   code/branches/core6/src/modules/docking/Dock.h
   code/branches/core6/src/modules/docking/DockToShip.cc
   code/branches/core6/src/modules/docking/DockToShip.h
   code/branches/core6/src/modules/docking/DockingAnimation.cc
   code/branches/core6/src/modules/docking/DockingAnimation.h
   code/branches/core6/src/modules/docking/DockingController.cc
   code/branches/core6/src/modules/docking/DockingController.h
   code/branches/core6/src/modules/docking/DockingEffect.cc
   code/branches/core6/src/modules/docking/DockingEffect.h
   code/branches/core6/src/modules/docking/DockingTarget.cc
   code/branches/core6/src/modules/docking/DockingTarget.h
   code/branches/core6/src/modules/docking/MoveToDockingTarget.cc
   code/branches/core6/src/modules/docking/MoveToDockingTarget.h
   code/branches/core6/src/modules/gametypes/OldRaceCheckPoint.cc
   code/branches/core6/src/modules/gametypes/OldRaceCheckPoint.h
   code/branches/core6/src/modules/gametypes/OldSpaceRace.cc
   code/branches/core6/src/modules/gametypes/OldSpaceRace.h
   code/branches/core6/src/modules/gametypes/RaceCheckPoint.cc
   code/branches/core6/src/modules/gametypes/RaceCheckPoint.h
   code/branches/core6/src/modules/gametypes/SpaceRace.cc
   code/branches/core6/src/modules/gametypes/SpaceRace.h
   code/branches/core6/src/modules/gametypes/SpaceRaceBot.cc
   code/branches/core6/src/modules/gametypes/SpaceRaceBot.h
   code/branches/core6/src/modules/gametypes/SpaceRaceController.cc
   code/branches/core6/src/modules/gametypes/SpaceRaceController.h
   code/branches/core6/src/modules/gametypes/SpaceRaceManager.cc
   code/branches/core6/src/modules/gametypes/SpaceRaceManager.h
   code/branches/core6/src/modules/notifications/NotificationDispatcher.cc
   code/branches/core6/src/modules/notifications/NotificationDispatcher.h
   code/branches/core6/src/modules/notifications/NotificationQueue.cc
   code/branches/core6/src/modules/notifications/NotificationQueue.h
   code/branches/core6/src/modules/notifications/NotificationQueueCEGUI.cc
   code/branches/core6/src/modules/notifications/NotificationQueueCEGUI.h
   code/branches/core6/src/modules/notifications/dispatchers/CommandNotification.cc
   code/branches/core6/src/modules/notifications/dispatchers/CommandNotification.h
   code/branches/core6/src/modules/notifications/dispatchers/SimpleNotification.cc
   code/branches/core6/src/modules/notifications/dispatchers/SimpleNotification.h
   code/branches/core6/src/modules/objects/Attacher.cc
   code/branches/core6/src/modules/objects/Attacher.h
   code/branches/core6/src/modules/objects/ForceField.cc
   code/branches/core6/src/modules/objects/ForceField.h
   code/branches/core6/src/modules/objects/Planet.cc
   code/branches/core6/src/modules/objects/Planet.h
   code/branches/core6/src/modules/objects/Script.cc
   code/branches/core6/src/modules/objects/Script.h
   code/branches/core6/src/modules/objects/SpaceBoundaries.cc
   code/branches/core6/src/modules/objects/SpaceBoundaries.h
   code/branches/core6/src/modules/objects/Turret.cc
   code/branches/core6/src/modules/objects/Turret.h
   code/branches/core6/src/modules/objects/collisionshapes/BoxCollisionShape.cc
   code/branches/core6/src/modules/objects/collisionshapes/BoxCollisionShape.h
   code/branches/core6/src/modules/objects/collisionshapes/ConeCollisionShape.cc
   code/branches/core6/src/modules/objects/collisionshapes/ConeCollisionShape.h
   code/branches/core6/src/modules/objects/collisionshapes/PlaneCollisionShape.cc
   code/branches/core6/src/modules/objects/collisionshapes/PlaneCollisionShape.h
   code/branches/core6/src/modules/objects/collisionshapes/SphereCollisionShape.cc
   code/branches/core6/src/modules/objects/collisionshapes/SphereCollisionShape.h
   code/branches/core6/src/modules/objects/eventsystem/EventDispatcher.cc
   code/branches/core6/src/modules/objects/eventsystem/EventDispatcher.h
   code/branches/core6/src/modules/objects/eventsystem/EventFilter.cc
   code/branches/core6/src/modules/objects/eventsystem/EventFilter.h
   code/branches/core6/src/modules/objects/eventsystem/EventListener.cc
   code/branches/core6/src/modules/objects/eventsystem/EventListener.h
   code/branches/core6/src/modules/objects/eventsystem/EventName.cc
   code/branches/core6/src/modules/objects/eventsystem/EventName.h
   code/branches/core6/src/modules/objects/eventsystem/EventTarget.cc
   code/branches/core6/src/modules/objects/eventsystem/EventTarget.h
   code/branches/core6/src/modules/objects/triggers/CheckPoint.cc
   code/branches/core6/src/modules/objects/triggers/CheckPoint.h
   code/branches/core6/src/modules/objects/triggers/DistanceMultiTrigger.cc
   code/branches/core6/src/modules/objects/triggers/DistanceMultiTrigger.h
   code/branches/core6/src/modules/objects/triggers/DistanceTrigger.cc
   code/branches/core6/src/modules/objects/triggers/DistanceTrigger.h
   code/branches/core6/src/modules/objects/triggers/DistanceTriggerBeacon.cc
   code/branches/core6/src/modules/objects/triggers/DistanceTriggerBeacon.h
   code/branches/core6/src/modules/objects/triggers/EventMultiTrigger.cc
   code/branches/core6/src/modules/objects/triggers/EventMultiTrigger.h
   code/branches/core6/src/modules/objects/triggers/EventTrigger.cc
   code/branches/core6/src/modules/objects/triggers/EventTrigger.h
   code/branches/core6/src/modules/objects/triggers/MultiTrigger.cc
   code/branches/core6/src/modules/objects/triggers/MultiTrigger.h
   code/branches/core6/src/modules/objects/triggers/MultiTriggerContainer.cc
   code/branches/core6/src/modules/objects/triggers/MultiTriggerContainer.h
   code/branches/core6/src/modules/objects/triggers/Trigger.cc
   code/branches/core6/src/modules/objects/triggers/Trigger.h
   code/branches/core6/src/modules/objects/triggers/TriggerBase.cc
   code/branches/core6/src/modules/objects/triggers/TriggerBase.h
   code/branches/core6/src/modules/overlays/FadeoutText.cc
   code/branches/core6/src/modules/overlays/FadeoutText.h
   code/branches/core6/src/modules/overlays/GUIOverlay.cc
   code/branches/core6/src/modules/overlays/GUIOverlay.h
   code/branches/core6/src/modules/overlays/OverlayText.cc
   code/branches/core6/src/modules/overlays/OverlayText.h
   code/branches/core6/src/modules/overlays/debugging/DebugFPSText.cc
   code/branches/core6/src/modules/overlays/debugging/DebugFPSText.h
   code/branches/core6/src/modules/overlays/debugging/DebugRTRText.cc
   code/branches/core6/src/modules/overlays/debugging/DebugRTRText.h
   code/branches/core6/src/modules/overlays/hud/AnnounceMessage.cc
   code/branches/core6/src/modules/overlays/hud/AnnounceMessage.h
   code/branches/core6/src/modules/overlays/hud/ChatOverlay.cc
   code/branches/core6/src/modules/overlays/hud/ChatOverlay.h
   code/branches/core6/src/modules/overlays/hud/DeathMessage.cc
   code/branches/core6/src/modules/overlays/hud/DeathMessage.h
   code/branches/core6/src/modules/overlays/hud/GametypeFadingMessage.cc
   code/branches/core6/src/modules/overlays/hud/GametypeFadingMessage.h
   code/branches/core6/src/modules/overlays/hud/GametypeStaticMessage.cc
   code/branches/core6/src/modules/overlays/hud/GametypeStaticMessage.h
   code/branches/core6/src/modules/overlays/hud/HUDBar.cc
   code/branches/core6/src/modules/overlays/hud/HUDBar.h
   code/branches/core6/src/modules/overlays/hud/HUDBoostBar.cc
   code/branches/core6/src/modules/overlays/hud/HUDBoostBar.h
   code/branches/core6/src/modules/overlays/hud/HUDEnemyHealthBar.cc
   code/branches/core6/src/modules/overlays/hud/HUDEnemyHealthBar.h
   code/branches/core6/src/modules/overlays/hud/HUDHealthBar.cc
   code/branches/core6/src/modules/overlays/hud/HUDHealthBar.h
   code/branches/core6/src/modules/overlays/hud/HUDNavigation.cc
   code/branches/core6/src/modules/overlays/hud/HUDNavigation.h
   code/branches/core6/src/modules/overlays/hud/HUDRadar.cc
   code/branches/core6/src/modules/overlays/hud/HUDRadar.h
   code/branches/core6/src/modules/overlays/hud/HUDSpeedBar.cc
   code/branches/core6/src/modules/overlays/hud/HUDSpeedBar.h
   code/branches/core6/src/modules/overlays/hud/HUDTimer.cc
   code/branches/core6/src/modules/overlays/hud/HUDTimer.h
   code/branches/core6/src/modules/overlays/hud/KillMessage.cc
   code/branches/core6/src/modules/overlays/hud/KillMessage.h
   code/branches/core6/src/modules/overlays/hud/LastManStandingInfos.cc
   code/branches/core6/src/modules/overlays/hud/LastManStandingInfos.h
   code/branches/core6/src/modules/overlays/hud/LastTeamStandingInfos.cc
   code/branches/core6/src/modules/overlays/hud/LastTeamStandingInfos.h
   code/branches/core6/src/modules/overlays/hud/PauseNotice.cc
   code/branches/core6/src/modules/overlays/hud/PauseNotice.h
   code/branches/core6/src/modules/overlays/hud/TeamBaseMatchScore.cc
   code/branches/core6/src/modules/overlays/hud/TeamBaseMatchScore.h
   code/branches/core6/src/modules/overlays/stats/Scoreboard.cc
   code/branches/core6/src/modules/overlays/stats/Scoreboard.h
   code/branches/core6/src/modules/overlays/stats/Stats.cc
   code/branches/core6/src/modules/overlays/stats/Stats.h
   code/branches/core6/src/modules/pickup/Pickup.cc
   code/branches/core6/src/modules/pickup/Pickup.h
   code/branches/core6/src/modules/pickup/PickupCollection.cc
   code/branches/core6/src/modules/pickup/PickupCollection.h
   code/branches/core6/src/modules/pickup/PickupRepresentation.cc
   code/branches/core6/src/modules/pickup/PickupRepresentation.h
   code/branches/core6/src/modules/pickup/PickupSpawner.cc
   code/branches/core6/src/modules/pickup/PickupSpawner.h
   code/branches/core6/src/modules/pickup/items/DamageBoostPickup.cc
   code/branches/core6/src/modules/pickup/items/DamageBoostPickup.h
   code/branches/core6/src/modules/pickup/items/DronePickup.cc
   code/branches/core6/src/modules/pickup/items/DronePickup.h
   code/branches/core6/src/modules/pickup/items/HealthPickup.cc
   code/branches/core6/src/modules/pickup/items/HealthPickup.h
   code/branches/core6/src/modules/pickup/items/InvisiblePickup.cc
   code/branches/core6/src/modules/pickup/items/InvisiblePickup.h
   code/branches/core6/src/modules/pickup/items/MetaPickup.cc
   code/branches/core6/src/modules/pickup/items/MetaPickup.h
   code/branches/core6/src/modules/pickup/items/ShieldPickup.cc
   code/branches/core6/src/modules/pickup/items/ShieldPickup.h
   code/branches/core6/src/modules/pickup/items/ShrinkPickup.cc
   code/branches/core6/src/modules/pickup/items/ShrinkPickup.h
   code/branches/core6/src/modules/pickup/items/SpeedPickup.cc
   code/branches/core6/src/modules/pickup/items/SpeedPickup.h
   code/branches/core6/src/modules/pong/Pong.cc
   code/branches/core6/src/modules/pong/Pong.h
   code/branches/core6/src/modules/pong/PongAI.cc
   code/branches/core6/src/modules/pong/PongAI.h
   code/branches/core6/src/modules/pong/PongBall.cc
   code/branches/core6/src/modules/pong/PongBall.h
   code/branches/core6/src/modules/pong/PongBat.cc
   code/branches/core6/src/modules/pong/PongBat.h
   code/branches/core6/src/modules/pong/PongBot.cc
   code/branches/core6/src/modules/pong/PongBot.h
   code/branches/core6/src/modules/pong/PongCenterpoint.cc
   code/branches/core6/src/modules/pong/PongCenterpoint.h
   code/branches/core6/src/modules/pong/PongScore.cc
   code/branches/core6/src/modules/pong/PongScore.h
   code/branches/core6/src/modules/portals/PortalEndPoint.cc
   code/branches/core6/src/modules/portals/PortalEndPoint.h
   code/branches/core6/src/modules/portals/PortalLink.cc
   code/branches/core6/src/modules/portals/PortalLink.h
   code/branches/core6/src/modules/questsystem/GlobalQuest.cc
   code/branches/core6/src/modules/questsystem/GlobalQuest.h
   code/branches/core6/src/modules/questsystem/LocalQuest.cc
   code/branches/core6/src/modules/questsystem/LocalQuest.h
   code/branches/core6/src/modules/questsystem/Quest.cc
   code/branches/core6/src/modules/questsystem/Quest.h
   code/branches/core6/src/modules/questsystem/QuestDescription.cc
   code/branches/core6/src/modules/questsystem/QuestDescription.h
   code/branches/core6/src/modules/questsystem/QuestEffect.cc
   code/branches/core6/src/modules/questsystem/QuestEffect.h
   code/branches/core6/src/modules/questsystem/QuestEffectBeacon.cc
   code/branches/core6/src/modules/questsystem/QuestEffectBeacon.h
   code/branches/core6/src/modules/questsystem/QuestHint.cc
   code/branches/core6/src/modules/questsystem/QuestHint.h
   code/branches/core6/src/modules/questsystem/QuestItem.cc
   code/branches/core6/src/modules/questsystem/QuestItem.h
   code/branches/core6/src/modules/questsystem/QuestListener.cc
   code/branches/core6/src/modules/questsystem/QuestListener.h
   code/branches/core6/src/modules/questsystem/effects/AddQuest.cc
   code/branches/core6/src/modules/questsystem/effects/AddQuest.h
   code/branches/core6/src/modules/questsystem/effects/AddQuestHint.cc
   code/branches/core6/src/modules/questsystem/effects/AddQuestHint.h
   code/branches/core6/src/modules/questsystem/effects/AddReward.cc
   code/branches/core6/src/modules/questsystem/effects/AddReward.h
   code/branches/core6/src/modules/questsystem/effects/ChangeQuestStatus.cc
   code/branches/core6/src/modules/questsystem/effects/ChangeQuestStatus.h
   code/branches/core6/src/modules/questsystem/effects/CompleteQuest.cc
   code/branches/core6/src/modules/questsystem/effects/CompleteQuest.h
   code/branches/core6/src/modules/questsystem/effects/FailQuest.cc
   code/branches/core6/src/modules/questsystem/effects/FailQuest.h
   code/branches/core6/src/modules/tetris/Tetris.cc
   code/branches/core6/src/modules/tetris/Tetris.h
   code/branches/core6/src/modules/tetris/TetrisBrick.cc
   code/branches/core6/src/modules/tetris/TetrisBrick.h
   code/branches/core6/src/modules/tetris/TetrisCenterpoint.cc
   code/branches/core6/src/modules/tetris/TetrisCenterpoint.h
   code/branches/core6/src/modules/tetris/TetrisScore.cc
   code/branches/core6/src/modules/tetris/TetrisScore.h
   code/branches/core6/src/modules/tetris/TetrisStone.cc
   code/branches/core6/src/modules/tetris/TetrisStone.h
   code/branches/core6/src/modules/towerdefense/Tower.cc
   code/branches/core6/src/modules/towerdefense/Tower.h
   code/branches/core6/src/modules/towerdefense/TowerDefense.cc
   code/branches/core6/src/modules/towerdefense/TowerDefense.h
   code/branches/core6/src/modules/towerdefense/TowerDefenseCenterpoint.cc
   code/branches/core6/src/modules/towerdefense/TowerDefenseCenterpoint.h
   code/branches/core6/src/modules/towerdefense/TowerDefenseController.cc
   code/branches/core6/src/modules/towerdefense/TowerDefenseController.h
   code/branches/core6/src/modules/towerdefense/TowerDefenseHUDController.cc
   code/branches/core6/src/modules/towerdefense/TowerDefenseHUDController.h
   code/branches/core6/src/modules/weapons/MuzzleFlash.cc
   code/branches/core6/src/modules/weapons/MuzzleFlash.h
   code/branches/core6/src/modules/weapons/RocketController.cc
   code/branches/core6/src/modules/weapons/RocketController.h
   code/branches/core6/src/modules/weapons/munitions/FusionMunition.cc
   code/branches/core6/src/modules/weapons/munitions/FusionMunition.h
   code/branches/core6/src/modules/weapons/munitions/LaserMunition.cc
   code/branches/core6/src/modules/weapons/munitions/LaserMunition.h
   code/branches/core6/src/modules/weapons/munitions/ReplenishingMunition.cc
   code/branches/core6/src/modules/weapons/munitions/ReplenishingMunition.h
   code/branches/core6/src/modules/weapons/munitions/RocketMunition.cc
   code/branches/core6/src/modules/weapons/munitions/RocketMunition.h
   code/branches/core6/src/modules/weapons/projectiles/BasicProjectile.cc
   code/branches/core6/src/modules/weapons/projectiles/BillboardProjectile.cc
   code/branches/core6/src/modules/weapons/projectiles/BillboardProjectile.h
   code/branches/core6/src/modules/weapons/projectiles/LightningGunProjectile.cc
   code/branches/core6/src/modules/weapons/projectiles/LightningGunProjectile.h
   code/branches/core6/src/modules/weapons/projectiles/ParticleProjectile.cc
   code/branches/core6/src/modules/weapons/projectiles/ParticleProjectile.h
   code/branches/core6/src/modules/weapons/projectiles/Projectile.cc
   code/branches/core6/src/modules/weapons/projectiles/Projectile.h
   code/branches/core6/src/modules/weapons/projectiles/Rocket.cc
   code/branches/core6/src/modules/weapons/projectiles/Rocket.h
   code/branches/core6/src/modules/weapons/projectiles/SimpleRocket.cc
   code/branches/core6/src/modules/weapons/projectiles/SimpleRocket.h
   code/branches/core6/src/modules/weapons/weaponmodes/EnergyDrink.cc
   code/branches/core6/src/modules/weapons/weaponmodes/EnergyDrink.h
   code/branches/core6/src/modules/weapons/weaponmodes/FusionFire.cc
   code/branches/core6/src/modules/weapons/weaponmodes/FusionFire.h
   code/branches/core6/src/modules/weapons/weaponmodes/HsW01.cc
   code/branches/core6/src/modules/weapons/weaponmodes/HsW01.h
   code/branches/core6/src/modules/weapons/weaponmodes/LaserFire.cc
   code/branches/core6/src/modules/weapons/weaponmodes/LaserFire.h
   code/branches/core6/src/modules/weapons/weaponmodes/LightningGun.cc
   code/branches/core6/src/modules/weapons/weaponmodes/LightningGun.h
   code/branches/core6/src/modules/weapons/weaponmodes/RocketFire.cc
   code/branches/core6/src/modules/weapons/weaponmodes/RocketFire.h
   code/branches/core6/src/modules/weapons/weaponmodes/SimpleRocketFire.cc
   code/branches/core6/src/modules/weapons/weaponmodes/SimpleRocketFire.h
   code/branches/core6/src/orxonox/Level.cc
   code/branches/core6/src/orxonox/Level.h
   code/branches/core6/src/orxonox/LevelInfo.cc
   code/branches/core6/src/orxonox/LevelInfo.h
   code/branches/core6/src/orxonox/Scene.cc
   code/branches/core6/src/orxonox/Scene.h
   code/branches/core6/src/orxonox/Test.cc
   code/branches/core6/src/orxonox/Test.h
   code/branches/core6/src/orxonox/chat/ChatHistory.cc
   code/branches/core6/src/orxonox/collisionshapes/CollisionShape.cc
   code/branches/core6/src/orxonox/collisionshapes/CollisionShape.h
   code/branches/core6/src/orxonox/collisionshapes/CompoundCollisionShape.cc
   code/branches/core6/src/orxonox/collisionshapes/CompoundCollisionShape.h
   code/branches/core6/src/orxonox/collisionshapes/WorldEntityCollisionShape.cc
   code/branches/core6/src/orxonox/collisionshapes/WorldEntityCollisionShape.h
   code/branches/core6/src/orxonox/controllers/AIController.cc
   code/branches/core6/src/orxonox/controllers/AIController.h
   code/branches/core6/src/orxonox/controllers/ArtificialController.cc
   code/branches/core6/src/orxonox/controllers/ArtificialController.h
   code/branches/core6/src/orxonox/controllers/Controller.cc
   code/branches/core6/src/orxonox/controllers/Controller.h
   code/branches/core6/src/orxonox/controllers/DroneController.cc
   code/branches/core6/src/orxonox/controllers/DroneController.h
   code/branches/core6/src/orxonox/controllers/FormationController.cc
   code/branches/core6/src/orxonox/controllers/FormationController.h
   code/branches/core6/src/orxonox/controllers/HumanController.cc
   code/branches/core6/src/orxonox/controllers/HumanController.h
   code/branches/core6/src/orxonox/controllers/NewHumanController.cc
   code/branches/core6/src/orxonox/controllers/NewHumanController.h
   code/branches/core6/src/orxonox/controllers/ScriptController.cc
   code/branches/core6/src/orxonox/controllers/ScriptController.h
   code/branches/core6/src/orxonox/controllers/WaypointController.cc
   code/branches/core6/src/orxonox/controllers/WaypointController.h
   code/branches/core6/src/orxonox/controllers/WaypointPatrolController.cc
   code/branches/core6/src/orxonox/controllers/WaypointPatrolController.h
   code/branches/core6/src/orxonox/gametypes/Asteroids.cc
   code/branches/core6/src/orxonox/gametypes/Asteroids.h
   code/branches/core6/src/orxonox/gametypes/Deathmatch.cc
   code/branches/core6/src/orxonox/gametypes/Deathmatch.h
   code/branches/core6/src/orxonox/gametypes/Dynamicmatch.cc
   code/branches/core6/src/orxonox/gametypes/Dynamicmatch.h
   code/branches/core6/src/orxonox/gametypes/Gametype.cc
   code/branches/core6/src/orxonox/gametypes/Gametype.h
   code/branches/core6/src/orxonox/gametypes/LastManStanding.cc
   code/branches/core6/src/orxonox/gametypes/LastManStanding.h
   code/branches/core6/src/orxonox/gametypes/LastTeamStanding.cc
   code/branches/core6/src/orxonox/gametypes/LastTeamStanding.h
   code/branches/core6/src/orxonox/gametypes/Mission.cc
   code/branches/core6/src/orxonox/gametypes/Mission.h
   code/branches/core6/src/orxonox/gametypes/TeamBaseMatch.cc
   code/branches/core6/src/orxonox/gametypes/TeamBaseMatch.h
   code/branches/core6/src/orxonox/gametypes/TeamDeathmatch.cc
   code/branches/core6/src/orxonox/gametypes/TeamDeathmatch.h
   code/branches/core6/src/orxonox/gametypes/TeamGametype.cc
   code/branches/core6/src/orxonox/gametypes/TeamGametype.h
   code/branches/core6/src/orxonox/gametypes/UnderAttack.cc
   code/branches/core6/src/orxonox/gametypes/UnderAttack.h
   code/branches/core6/src/orxonox/graphics/AnimatedModel.cc
   code/branches/core6/src/orxonox/graphics/AnimatedModel.h
   code/branches/core6/src/orxonox/graphics/Backlight.cc
   code/branches/core6/src/orxonox/graphics/Backlight.h
   code/branches/core6/src/orxonox/graphics/Billboard.cc
   code/branches/core6/src/orxonox/graphics/Billboard.h
   code/branches/core6/src/orxonox/graphics/BlinkingBillboard.cc
   code/branches/core6/src/orxonox/graphics/BlinkingBillboard.h
   code/branches/core6/src/orxonox/graphics/Camera.cc
   code/branches/core6/src/orxonox/graphics/Camera.h
   code/branches/core6/src/orxonox/graphics/FadingBillboard.cc
   code/branches/core6/src/orxonox/graphics/FadingBillboard.h
   code/branches/core6/src/orxonox/graphics/GlobalShader.cc
   code/branches/core6/src/orxonox/graphics/GlobalShader.h
   code/branches/core6/src/orxonox/graphics/Light.cc
   code/branches/core6/src/orxonox/graphics/Light.h
   code/branches/core6/src/orxonox/graphics/MeshLodInformation.cc
   code/branches/core6/src/orxonox/graphics/MeshLodInformation.h
   code/branches/core6/src/orxonox/graphics/Model.cc
   code/branches/core6/src/orxonox/graphics/Model.h
   code/branches/core6/src/orxonox/graphics/ParticleEmitter.cc
   code/branches/core6/src/orxonox/graphics/ParticleEmitter.h
   code/branches/core6/src/orxonox/graphics/ParticleSpawner.cc
   code/branches/core6/src/orxonox/graphics/ParticleSpawner.h
   code/branches/core6/src/orxonox/infos/Bot.cc
   code/branches/core6/src/orxonox/infos/Bot.h
   code/branches/core6/src/orxonox/infos/GametypeInfo.cc
   code/branches/core6/src/orxonox/infos/GametypeInfo.h
   code/branches/core6/src/orxonox/infos/HumanPlayer.cc
   code/branches/core6/src/orxonox/infos/HumanPlayer.h
   code/branches/core6/src/orxonox/infos/Info.cc
   code/branches/core6/src/orxonox/infos/Info.h
   code/branches/core6/src/orxonox/infos/PlayerInfo.cc
   code/branches/core6/src/orxonox/infos/PlayerInfo.h
   code/branches/core6/src/orxonox/items/Engine.cc
   code/branches/core6/src/orxonox/items/Engine.h
   code/branches/core6/src/orxonox/items/Item.cc
   code/branches/core6/src/orxonox/items/Item.h
   code/branches/core6/src/orxonox/items/MultiStateEngine.cc
   code/branches/core6/src/orxonox/items/MultiStateEngine.h
   code/branches/core6/src/orxonox/overlays/GUISheet.cc
   code/branches/core6/src/orxonox/overlays/GUISheet.h
   code/branches/core6/src/orxonox/overlays/OrxonoxOverlay.cc
   code/branches/core6/src/orxonox/overlays/OrxonoxOverlay.h
   code/branches/core6/src/orxonox/overlays/OverlayGroup.cc
   code/branches/core6/src/orxonox/overlays/OverlayGroup.h
   code/branches/core6/src/orxonox/sound/WorldAmbientSound.cc
   code/branches/core6/src/orxonox/sound/WorldAmbientSound.h
   code/branches/core6/src/orxonox/sound/WorldSound.cc
   code/branches/core6/src/orxonox/sound/WorldSound.h
   code/branches/core6/src/orxonox/weaponsystem/DefaultWeaponmodeLink.cc
   code/branches/core6/src/orxonox/weaponsystem/DefaultWeaponmodeLink.h
   code/branches/core6/src/orxonox/weaponsystem/Munition.cc
   code/branches/core6/src/orxonox/weaponsystem/Munition.h
   code/branches/core6/src/orxonox/weaponsystem/Weapon.cc
   code/branches/core6/src/orxonox/weaponsystem/Weapon.h
   code/branches/core6/src/orxonox/weaponsystem/WeaponMode.cc
   code/branches/core6/src/orxonox/weaponsystem/WeaponMode.h
   code/branches/core6/src/orxonox/weaponsystem/WeaponPack.cc
   code/branches/core6/src/orxonox/weaponsystem/WeaponPack.h
   code/branches/core6/src/orxonox/weaponsystem/WeaponSet.cc
   code/branches/core6/src/orxonox/weaponsystem/WeaponSet.h
   code/branches/core6/src/orxonox/weaponsystem/WeaponSlot.cc
   code/branches/core6/src/orxonox/weaponsystem/WeaponSlot.h
   code/branches/core6/src/orxonox/weaponsystem/WeaponSystem.cc
   code/branches/core6/src/orxonox/weaponsystem/WeaponSystem.h
   code/branches/core6/src/orxonox/worldentities/BigExplosion.cc
   code/branches/core6/src/orxonox/worldentities/BigExplosion.h
   code/branches/core6/src/orxonox/worldentities/CameraPosition.cc
   code/branches/core6/src/orxonox/worldentities/CameraPosition.h
   code/branches/core6/src/orxonox/worldentities/ControllableEntity.cc
   code/branches/core6/src/orxonox/worldentities/ControllableEntity.h
   code/branches/core6/src/orxonox/worldentities/Drone.cc
   code/branches/core6/src/orxonox/worldentities/Drone.h
   code/branches/core6/src/orxonox/worldentities/EffectContainer.cc
   code/branches/core6/src/orxonox/worldentities/EffectContainer.h
   code/branches/core6/src/orxonox/worldentities/ExplosionChunk.cc
   code/branches/core6/src/orxonox/worldentities/ExplosionChunk.h
   code/branches/core6/src/orxonox/worldentities/MobileEntity.cc
   code/branches/core6/src/orxonox/worldentities/MobileEntity.h
   code/branches/core6/src/orxonox/worldentities/MovableEntity.cc
   code/branches/core6/src/orxonox/worldentities/MovableEntity.h
   code/branches/core6/src/orxonox/worldentities/SpawnPoint.cc
   code/branches/core6/src/orxonox/worldentities/SpawnPoint.h
   code/branches/core6/src/orxonox/worldentities/StaticEntity.cc
   code/branches/core6/src/orxonox/worldentities/StaticEntity.h
   code/branches/core6/src/orxonox/worldentities/TeamSpawnPoint.cc
   code/branches/core6/src/orxonox/worldentities/TeamSpawnPoint.h
   code/branches/core6/src/orxonox/worldentities/WorldEntity.cc
   code/branches/core6/src/orxonox/worldentities/WorldEntity.h
   code/branches/core6/src/orxonox/worldentities/pawns/Destroyer.cc
   code/branches/core6/src/orxonox/worldentities/pawns/Destroyer.h
   code/branches/core6/src/orxonox/worldentities/pawns/FpsPlayer.cc
   code/branches/core6/src/orxonox/worldentities/pawns/FpsPlayer.h
   code/branches/core6/src/orxonox/worldentities/pawns/Pawn.cc
   code/branches/core6/src/orxonox/worldentities/pawns/Pawn.h
   code/branches/core6/src/orxonox/worldentities/pawns/SpaceShip.cc
   code/branches/core6/src/orxonox/worldentities/pawns/SpaceShip.h
   code/branches/core6/src/orxonox/worldentities/pawns/Spectator.cc
   code/branches/core6/src/orxonox/worldentities/pawns/Spectator.h
   code/branches/core6/src/orxonox/worldentities/pawns/TeamBaseMatchBase.cc
   code/branches/core6/src/orxonox/worldentities/pawns/TeamBaseMatchBase.h
   code/branches/core6/test/core/class/SubclassIdentifierTest.cc
   code/branches/core6/test/core/class/SuperTest.cc
   code/branches/core6/test/core/object/ContextTest.cc
Log:
BaseObject now requires a Context instead of a creator (BaseObject*) in its constructor.
Namespace, Level, and Scene inherit from Context

Modified: code/branches/core6/src/libraries/core/BaseObject.cc
===================================================================
--- code/branches/core6/src/libraries/core/BaseObject.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/BaseObject.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     /**
         @brief Constructor: Registers the object in the BaseObject-list.
     */
-    BaseObject::BaseObject(BaseObject* creator) : bInitialized_(false)
+    BaseObject::BaseObject(Context* context) : bInitialized_(false)
     {
         RegisterRootObject(BaseObject);
 
@@ -69,6 +69,10 @@
 
         this->mainStateFunctor_ = 0;
 
+        if (context)
+            this->setContext(context);
+
+        BaseObject* creator = orxonox_cast<BaseObject*>(context);
         this->setCreator(creator);
         if (this->creator_)
         {
@@ -200,7 +204,7 @@
         if (temp->isLink())
         {
             this->networkTemplateNames_.insert(temp->getLink());
-            
+
             Template* link;
             assert(!(link = Template::getTemplate(temp->getLink())) || !link->isLink());
             link = NULL;

Modified: code/branches/core6/src/libraries/core/BaseObject.h
===================================================================
--- code/branches/core6/src/libraries/core/BaseObject.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/BaseObject.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -64,7 +64,7 @@
         template <class T> friend class XMLPortClassParamContainer;
 
         public:
-            BaseObject(BaseObject* creator);
+            BaseObject(Context* context);
             virtual ~BaseObject();
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
             virtual void XMLEventPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/libraries/core/Loader.cc
===================================================================
--- code/branches/core6/src/libraries/core/Loader.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/Loader.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -208,7 +208,7 @@
                 rootElement.InsertEndChild(*child);
 
             orxout(verbose, context::loader) << "  creating root-namespace..." << endl;
-            Namespace* rootNamespace = new Namespace(0);
+            Namespace* rootNamespace = new Namespace(Context::getRootContext());
             rootNamespace->setLoaderIndentation("    ");
             rootNamespace->setFile(file);
             rootNamespace->setNamespace(rootNamespace);

Modified: code/branches/core6/src/libraries/core/Namespace.cc
===================================================================
--- code/branches/core6/src/libraries/core/Namespace.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/Namespace.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateFactory(Namespace);
 
-    Namespace::Namespace(BaseObject* creator) : BaseObject(creator),
+    Namespace::Namespace(Context* context) : BaseObject(context), Context(context),
       bAutogeneratedFileRootNamespace_(false),
       bRoot_(false),
       operator_("or")

Modified: code/branches/core6/src/libraries/core/Namespace.h
===================================================================
--- code/branches/core6/src/libraries/core/Namespace.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/Namespace.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,13 +39,14 @@
 #include <set>
 #include <string>
 #include "BaseObject.h"
+#include "object/Context.h"
 
 namespace orxonox
 {
-    class Namespace : public BaseObject
+    class Namespace : public BaseObject, public Context
     {
         public:
-            Namespace(BaseObject* creator);
+            Namespace(Context* context);
             virtual ~Namespace();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/libraries/core/Template.cc
===================================================================
--- code/branches/core6/src/libraries/core/Template.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/Template.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateFactory(Template);
 
-    Template::Template(BaseObject* creator) : BaseObject(creator)
+    Template::Template(Context* context) : BaseObject(context)
     {
         this->xmlelement_ = new TiXmlElement("");
 

Modified: code/branches/core6/src/libraries/core/Template.h
===================================================================
--- code/branches/core6/src/libraries/core/Template.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/Template.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     class _CoreExport Template : public BaseObject
     {
         public:
-            Template(BaseObject* creator);
+            Template(Context* context);
             virtual ~Template();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/libraries/core/XMLPort.cc
===================================================================
--- code/branches/core6/src/libraries/core/XMLPort.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/XMLPort.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -88,7 +88,7 @@
                     {
                         orxout(verbose, context::xml) << object->getLoaderIndentation() << "fabricating " << child->Value() << "..." << endl;
 
-                        BaseObject* newObject = orxonox_cast<BaseObject*>(identifier->fabricate(object));
+                        BaseObject* newObject = orxonox_cast<BaseObject*>(identifier->fabricate(object->getContext()));
                         newObject->setLoaderIndentation(object->getLoaderIndentation() + "  ");
 
                         if (this->bLoadBefore_)

Modified: code/branches/core6/src/libraries/core/class/Identifier.cc
===================================================================
--- code/branches/core6/src/libraries/core/class/Identifier.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/class/Identifier.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -173,11 +173,11 @@
         @brief Creates an object of the type the Identifier belongs to.
         @return The new object
     */
-    OrxonoxClass* Identifier::fabricate(BaseObject* creator)
+    OrxonoxClass* Identifier::fabricate(Context* context)
     {
         if (this->factory_)
         {
-            return this->factory_->fabricate(creator);
+            return this->factory_->fabricate(context);
         }
         else
         {

Modified: code/branches/core6/src/libraries/core/class/Identifier.h
===================================================================
--- code/branches/core6/src/libraries/core/class/Identifier.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/class/Identifier.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -124,7 +124,7 @@
             /// Returns true if the Identifier has a Factory.
             inline bool hasFactory() const { return (this->factory_ != 0); }
 
-            OrxonoxClass* fabricate(BaseObject* creator);
+            OrxonoxClass* fabricate(Context* context);
 
             /// Returns true if the class can be loaded through XML.
             inline bool isLoadable() const { return this->bLoadable_; }

Modified: code/branches/core6/src/libraries/core/class/SubclassIdentifier.h
===================================================================
--- code/branches/core6/src/libraries/core/class/SubclassIdentifier.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/class/SubclassIdentifier.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -162,9 +162,9 @@
             }
 
             /// Creates a new object of the type of the assigned Identifier and dynamic_casts it to the minimal type given by T.
-            T* fabricate(BaseObject* creator) const
+            T* fabricate(Context* context) const
             {
-                OrxonoxClass* newObject = this->identifier_->fabricate(creator);
+                OrxonoxClass* newObject = this->identifier_->fabricate(context);
 
                 // Check if the creation was successful
                 if (newObject)

Modified: code/branches/core6/src/libraries/core/object/ClassFactory.h
===================================================================
--- code/branches/core6/src/libraries/core/object/ClassFactory.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/object/ClassFactory.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     {
         public:
             virtual ~Factory() {};
-            virtual OrxonoxClass* fabricate(BaseObject* creator) = 0;
+            virtual OrxonoxClass* fabricate(Context* context) = 0;
     };
 
     // ###############################
@@ -81,9 +81,9 @@
                 @brief Creates and returns a new object of class T.
                 @return The new object
             */
-            inline OrxonoxClass* fabricate(BaseObject* creator)
+            inline OrxonoxClass* fabricate(Context* context)
             {
-                return static_cast<OrxonoxClass*>(new T(creator));
+                return static_cast<OrxonoxClass*>(new T(context));
             }
     };
 }

Modified: code/branches/core6/src/libraries/core/object/Context.cc
===================================================================
--- code/branches/core6/src/libraries/core/object/Context.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/object/Context.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -55,7 +55,7 @@
 
     /*static*/ Context* Context::getRootContext()
     {
-        static Context rootContext;
+        static Context rootContext(NULL);
         return &rootContext;
     }
 

Modified: code/branches/core6/src/libraries/core/object/Context.h
===================================================================
--- code/branches/core6/src/libraries/core/object/Context.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/core/object/Context.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
         public:
             static Context* getRootContext();
 
-            Context(Context* context = NULL);
+            Context(Context* context);
             virtual ~Context();
 
             inline Context* getParentContext() const

Modified: code/branches/core6/src/libraries/network/packet/Gamestate.cc
===================================================================
--- code/branches/core6/src/libraries/network/packet/Gamestate.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/network/packet/Gamestate.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -132,7 +132,7 @@
 
     tempsize = it->getData(mem, this->sizes_, id, mode);
     if ( tempsize != 0 )
-      dataVector_.push_back( obj(it->getObjectID(), it->getCreatorID(), tempsize, mem-data_) );
+      dataVector_.push_back( obj(it->getObjectID(), it->getContextID(), tempsize, mem-data_) );
 
 #ifndef NDEBUG
     if(currentsize+tempsize > size)
@@ -468,7 +468,7 @@
     if ( htemp.getObjectID() == objectID )
     {
       assert( objectHeader.getClassID() == htemp.getClassID() );
-      assert( objectHeader.getCreatorID() == htemp.getCreatorID() );
+      assert( objectHeader.getContextID() == htemp.getContextID() );
       return true;
     }
     {

Modified: code/branches/core6/src/libraries/network/synchronisable/Synchronisable.cc
===================================================================
--- code/branches/core6/src/libraries/network/synchronisable/Synchronisable.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/network/synchronisable/Synchronisable.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
   * Constructor:
   * Initializes all Variables and sets the right objectID_
   */
-  Synchronisable::Synchronisable(BaseObject* creator )
+  Synchronisable::Synchronisable(Context* context)
   {
     RegisterRootObject(Synchronisable);
     static uint32_t idCounter=0;
@@ -68,11 +68,8 @@
     // set standard priority
     this->setPriority( Priority::Normal );
 
-    // get creator id
-    if( creator )
-      this->creatorID_ = creator->getSceneID();
-    else
-      this->creatorID_ = OBJECTID_UNKNOWN;
+    // get context id
+    this->contextID_ = this->findContextID(context);
   }
 
   /**
@@ -99,7 +96,22 @@
 
   }
 
+  /**
+   * @brief Returns the id of the context.
+   * If the context is not Synchronisable, it moves on to its parent, recursively.
+   */
+  uint32_t Synchronisable::findContextID(Context* context)
+  {
+      if (context == NULL)
+          return OBJECTID_UNKNOWN;
 
+      Synchronisable* synchronisableContext = orxonox_cast<Synchronisable*>(context);
+      if (synchronisableContext != NULL)
+          return synchronisableContext->getObjectID();
+      else
+          return this->findContextID(context->getParentContext());
+  }
+
   /**
    * This function sets the internal mode for synchronisation
    * @param b true if this object is located on a client or on a server
@@ -141,31 +153,35 @@
         abort();
     }
     assert(id);
-    BaseObject* creator = 0;
-    if (header.getCreatorID() != OBJECTID_UNKNOWN)
+    Context* context = 0;
+    if (header.getContextID() != OBJECTID_UNKNOWN)
     {
-      Synchronisable* synchronisable_creator = Synchronisable::getSynchronisable(header.getCreatorID());
-      if (!synchronisable_creator)
+      Synchronisable* synchronisable_context = Synchronisable::getSynchronisable(header.getContextID());
+      if (!synchronisable_context)
       {
         mem += header.getDataSize()+SynchronisableHeader::getSize(); //.TODO: this suckz.... remove size from header
         assert(0); // TODO: uncomment this if we have a clean objecthierarchy (with destruction of children of objects) ^^
         return 0;
       }
       else
-        creator = orxonox_cast<BaseObject*>(synchronisable_creator);
+        context = orxonox_cast<Context*>(synchronisable_context);
     }
     assert(getSynchronisable(header.getObjectID())==0);   //make sure no object with this id exists
-    BaseObject *bo = orxonox_cast<BaseObject*>(id->fabricate(creator));
+    BaseObject *bo = orxonox_cast<BaseObject*>(id->fabricate(context));
     assert(bo);
     Synchronisable *no = orxonox_cast<Synchronisable*>(bo);
     assert(no);
     assert( Synchronisable::objectMap_.find(header.getObjectID()) == Synchronisable::objectMap_.end() );
     no->setObjectID(header.getObjectID());
-    //no->creatorID=header.getCreatorID(); //TODO: remove this
+    //no->contextID=header.getContextID(); //TODO: remove this
     no->setClassID(header.getClassID());
-    assert(no->creatorID_ == header.getCreatorID());
-    if( creator )
-      bo->setLevel(creator->getLevel());          // Note: this ensures that the level is known on the client for child objects of the scene (and the scene itself)
+    assert(no->contextID_ == header.getContextID());
+    if( context )
+    {
+      BaseObject* boContext = orxonox_cast<BaseObject*>(context);
+      if (boContext)
+          bo->setLevel(boContext->getLevel()); // Note: this ensures that the level is known on the client for child objects of the scene (and the scene itself)
+    }
     //assert(no->classID_ == header.getClassID());
     orxout(verbose, context::network) << "fabricate objectID_: " << no->objectID_ << " classID_: " << no->classID_ << endl;
           // update data and create object/entity...
@@ -273,7 +289,7 @@
 //     orxout(verbose, context::network) << endl;
 
     header.setObjectID( this->objectID_ );
-    header.setCreatorID( this->creatorID_ );
+    header.setContextID( this->contextID_ );
     header.setClassID( this->classID_ );
     header.setDataSize( tempsize );
     assert( tempsize == mem-oldmem-SynchronisableHeader::getSize() );
@@ -330,7 +346,7 @@
     {
       SynchronisableHeader syncHeader2(mem);
       assert( this->getClassID() == syncHeader2.getClassID() );
-      assert( this->getCreatorID() == syncHeader2.getCreatorID() );
+      assert( this->getContextID() == syncHeader2.getContextID() );
       mem += SynchronisableHeader::getSize();
       std::vector<SynchronisableVariableBase *>::iterator i;
       for(i=syncList_.begin(); i!=syncList_.end(); ++i)

Modified: code/branches/core6/src/libraries/network/synchronisable/Synchronisable.h
===================================================================
--- code/branches/core6/src/libraries/network/synchronisable/Synchronisable.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/network/synchronisable/Synchronisable.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -106,13 +106,13 @@
   /**
    * @brief: stores information about a Synchronisable
    *
-   * This class stores the information about a Synchronisable (objectID_, classID_, creatorID_, dataSize)
+   * This class stores the information about a Synchronisable (objectID_, classID_, contextID_, dataSize)
    * in an emulated bitset.
    * Bit 1 to 31 store the size of the Data the synchronisable consumes in the stream
    * Bit 32 is a bool and defines whether the variables are stored in diff mode
    * Byte 5 to 8: objectID_
    * Byte 9 to 12: classID_
-   * Byte 13 to 16: creatorID_
+   * Byte 13 to 16: contextID_
    */
   class _NetworkExport SynchronisableHeader: public SynchronisableHeaderLight
   {
@@ -125,10 +125,10 @@
         { return *(uint32_t*)(data_+SynchronisableHeaderLight::getSize()); }
       inline void setClassID(uint32_t classID_)
         { *(uint32_t*)(data_+SynchronisableHeaderLight::getSize()) = classID_; }
-      inline uint32_t getCreatorID() const
+      inline uint32_t getContextID() const
         { return *(uint32_t*)(data_+SynchronisableHeaderLight::getSize()+4); }
-      inline void setCreatorID(uint32_t creatorID_)
-        { *(uint32_t*)(data_+SynchronisableHeaderLight::getSize()+4) = creatorID_; }
+      inline void setContextID(uint32_t contextID_)
+        { *(uint32_t*)(data_+SynchronisableHeaderLight::getSize()+4) = contextID_; }
       inline void operator=(SynchronisableHeader& h)
         { memcpy(data_, h.data_, getSize()); }
   };
@@ -157,7 +157,7 @@
     static uint32_t popDeletedObject(){ uint32_t i = deletedObjects_.front(); deletedObjects_.pop(); return i; }
 
     inline uint32_t getObjectID() const {return this->objectID_;}
-    inline unsigned int getCreatorID() const {return this->creatorID_;}
+    inline unsigned int getContextID() const {return this->contextID_;}
     inline uint32_t getClassID() const {return this->classID_;}
     inline unsigned int getPriority() const { return this->objectFrequency_;}
     inline uint8_t getSyncMode() const { return this->objectMode_; }
@@ -169,14 +169,14 @@
     { return this->syncList_[ID]->getSize(state_); }
 
   protected:
-    Synchronisable(BaseObject* creator);
+    Synchronisable(Context* context);
     template <class T> void registerVariable(T& variable, uint8_t mode=0x1, NetworkCallbackBase *cb=0, bool bidirectional=false);
     template <class T> void registerVariable(std::set<T>& variable, uint8_t mode=0x1, NetworkCallbackBase *cb=0, bool bidirectional=false);
     template <class T> void unregisterVariable(T& var);
 
     void setPriority(unsigned int freq){ objectFrequency_ = freq; }
+    uint32_t findContextID(Context* context);
 
-
   private:
     uint32_t getData(uint8_t*& mem, std::vector<uint32_t>& sizes, int32_t id, uint8_t mode);
     uint32_t getSize(int32_t id, uint8_t mode=0x0);
@@ -188,7 +188,7 @@
     inline void setClassID(uint32_t id){ this->classID_ = id; }
 
     uint32_t objectID_;
-    uint32_t creatorID_;
+    uint32_t contextID_;
     uint32_t classID_;
 
     std::vector<SynchronisableVariableBase*> syncList_;

Modified: code/branches/core6/src/libraries/tools/ResourceCollection.cc
===================================================================
--- code/branches/core6/src/libraries/tools/ResourceCollection.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/tools/ResourceCollection.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,8 +38,8 @@
 {
     CreateFactory(ResourceCollection);
 
-    ResourceCollection::ResourceCollection(BaseObject* creator)
-        : BaseObject(creator)
+    ResourceCollection::ResourceCollection(Context* context)
+        : BaseObject(context)
     {
         RegisterObject(ResourceCollection);
 

Modified: code/branches/core6/src/libraries/tools/ResourceCollection.h
===================================================================
--- code/branches/core6/src/libraries/tools/ResourceCollection.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/tools/ResourceCollection.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _ToolsExport ResourceCollection : public BaseObject
     {
     public:
-        ResourceCollection(BaseObject* creator);
+        ResourceCollection(Context* context);
         virtual ~ResourceCollection();
 
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/libraries/tools/ResourceLocation.cc
===================================================================
--- code/branches/core6/src/libraries/tools/ResourceLocation.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/tools/ResourceLocation.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,8 +42,8 @@
 {
     CreateFactory(ResourceLocation);
 
-    ResourceLocation::ResourceLocation(BaseObject* creator)
-        : BaseObject(creator)
+    ResourceLocation::ResourceLocation(Context* context)
+        : BaseObject(context)
     {
         RegisterObject(ResourceLocation);
 

Modified: code/branches/core6/src/libraries/tools/ResourceLocation.h
===================================================================
--- code/branches/core6/src/libraries/tools/ResourceLocation.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/libraries/tools/ResourceLocation.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
         friend class ResourceCollection;
 
     public:
-        ResourceLocation(BaseObject* creator);
+        ResourceLocation(Context* context);
         virtual ~ResourceLocation();
 
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/designtools/CreateStars.cc
===================================================================
--- code/branches/core6/src/modules/designtools/CreateStars.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/designtools/CreateStars.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(CreateStars);
 
-    CreateStars::CreateStars(BaseObject* creator) : BaseObject(creator)
+    CreateStars::CreateStars(Context* context) : BaseObject(context)
     {
         RegisterObject(CreateStars);
         this->material_ = "Examples/Flare";
@@ -68,7 +68,7 @@
 
         for(int i=0; i < numStars_; i++)
         {
-            Billboard* bb = new Billboard(this);
+            Billboard* bb = new Billboard(this->getContext());
 
             float r = rnd(-colourDiff_,colourDiff_);
             float g = rnd(-colourDiff_,colourDiff_);

Modified: code/branches/core6/src/modules/designtools/CreateStars.h
===================================================================
--- code/branches/core6/src/modules/designtools/CreateStars.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/designtools/CreateStars.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
     class CreateStars : public BaseObject
     {
         public:
-            CreateStars(orxonox::BaseObject* creator);
+            CreateStars(Context* context);
             virtual ~CreateStars();
 
             void createBillboards();

Modified: code/branches/core6/src/modules/docking/Dock.cc
===================================================================
--- code/branches/core6/src/modules/docking/Dock.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/Dock.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
 
     registerStaticNetworkFunction(Dock::showDockingDialog);
 
-    Dock::Dock(BaseObject* creator) : StaticEntity(creator)
+    Dock::Dock(Context* context) : StaticEntity(context)
     {
         RegisterObject(Dock);
     }

Modified: code/branches/core6/src/modules/docking/Dock.h
===================================================================
--- code/branches/core6/src/modules/docking/Dock.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/Dock.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
         : public StaticEntity
     { // tolua_export
         public:
-            Dock(BaseObject* creator);
+            Dock(Context* context);
             virtual ~Dock();
 
             // Trigger interface

Modified: code/branches/core6/src/modules/docking/DockToShip.cc
===================================================================
--- code/branches/core6/src/modules/docking/DockToShip.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockToShip.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateFactory(DockToShip);
 
-    DockToShip::DockToShip(BaseObject* creator) : DockingEffect(creator)
+    DockToShip::DockToShip(Context* context) : DockingEffect(context)
     {
         RegisterObject(DockToShip);
         orxout(verbose, context::docking) << "DockToShip instance created.." << endl;

Modified: code/branches/core6/src/modules/docking/DockToShip.h
===================================================================
--- code/branches/core6/src/modules/docking/DockToShip.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockToShip.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     class _DockingExport DockToShip : public DockingEffect
     {
         public:
-            DockToShip(BaseObject* creator);
+            DockToShip(Context* context);
             virtual ~DockToShip();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/docking/DockingAnimation.cc
===================================================================
--- code/branches/core6/src/modules/docking/DockingAnimation.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockingAnimation.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 
 namespace orxonox
 {
-    DockingAnimation::DockingAnimation(BaseObject* creator) : BaseObject(creator)
+    DockingAnimation::DockingAnimation(Context* context) : BaseObject(context)
     {
         RegisterObject(DockingAnimation);
 

Modified: code/branches/core6/src/modules/docking/DockingAnimation.h
===================================================================
--- code/branches/core6/src/modules/docking/DockingAnimation.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockingAnimation.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -62,7 +62,7 @@
     class _DockingExport DockingAnimation : public BaseObject
     {
         public:
-            DockingAnimation(BaseObject* creator);
+            DockingAnimation(Context* context);
             virtual ~DockingAnimation();
 
             virtual bool docking(PlayerInfo* player) = 0; //!< Called when a player starts docking

Modified: code/branches/core6/src/modules/docking/DockingController.cc
===================================================================
--- code/branches/core6/src/modules/docking/DockingController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockingController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateFactory(DockingController);
 
-    DockingController::DockingController(BaseObject* creator) : ArtificialController(creator)
+    DockingController::DockingController(Context* context) : ArtificialController(context)
     {
         RegisterObject(DockingController);
 

Modified: code/branches/core6/src/modules/docking/DockingController.h
===================================================================
--- code/branches/core6/src/modules/docking/DockingController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockingController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
     class _DockingExport DockingController : public ArtificialController, public Tickable
     {
         public:
-            DockingController(BaseObject* creator);
+            DockingController(Context* context);
             virtual ~DockingController();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/modules/docking/DockingEffect.cc
===================================================================
--- code/branches/core6/src/modules/docking/DockingEffect.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockingEffect.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 
 namespace orxonox
 {
-    DockingEffect::DockingEffect(BaseObject* creator) : BaseObject(creator)
+    DockingEffect::DockingEffect(Context* context) : BaseObject(context)
     {
         RegisterObject(DockingEffect);
     }

Modified: code/branches/core6/src/modules/docking/DockingEffect.h
===================================================================
--- code/branches/core6/src/modules/docking/DockingEffect.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockingEffect.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -60,7 +60,7 @@
     class _DockingExport DockingEffect : public BaseObject
     {
         public:
-            DockingEffect(BaseObject* creator);
+            DockingEffect(Context* context);
             virtual ~DockingEffect();
 
             virtual bool docking(PlayerInfo* player) = 0; //!< Called when player docked

Modified: code/branches/core6/src/modules/docking/DockingTarget.cc
===================================================================
--- code/branches/core6/src/modules/docking/DockingTarget.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockingTarget.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
 {
     CreateFactory(DockingTarget);
 
-    DockingTarget::DockingTarget(BaseObject* creator) : StaticEntity(creator)
+    DockingTarget::DockingTarget(Context* context) : StaticEntity(context)
     {
         RegisterObject(DockingTarget);
     }

Modified: code/branches/core6/src/modules/docking/DockingTarget.h
===================================================================
--- code/branches/core6/src/modules/docking/DockingTarget.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/DockingTarget.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     class _DockingExport DockingTarget : public StaticEntity
     {
         public:
-            DockingTarget(BaseObject* creator);
+            DockingTarget(Context* context);
             virtual ~DockingTarget();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/docking/MoveToDockingTarget.cc
===================================================================
--- code/branches/core6/src/modules/docking/MoveToDockingTarget.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/MoveToDockingTarget.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
 {
     CreateFactory(MoveToDockingTarget);
 
-    MoveToDockingTarget::MoveToDockingTarget(BaseObject *creator) : DockingAnimation(creator)
+    MoveToDockingTarget::MoveToDockingTarget(Context* context) : DockingAnimation(context)
     {
         RegisterObject(MoveToDockingTarget);
     }
@@ -54,7 +54,7 @@
     {
         assert(this->parent_);
 
-        DockingController *dockingController = new DockingController(this);
+        DockingController *dockingController = new DockingController(this->getContext());
         dockingController->setDock(this->parent_);
         dockingController->setPlayer(player);
         dockingController->takeControl(true);

Modified: code/branches/core6/src/modules/docking/MoveToDockingTarget.h
===================================================================
--- code/branches/core6/src/modules/docking/MoveToDockingTarget.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/docking/MoveToDockingTarget.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -55,7 +55,7 @@
     class _DockingExport MoveToDockingTarget : public DockingAnimation
     {
         public:
-            MoveToDockingTarget(BaseObject* creator);
+            MoveToDockingTarget(Context* context);
             virtual ~MoveToDockingTarget();
 
             virtual bool docking(PlayerInfo* player); //!< Called when a player starts docking

Modified: code/branches/core6/src/modules/gametypes/OldRaceCheckPoint.cc
===================================================================
--- code/branches/core6/src/modules/gametypes/OldRaceCheckPoint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/OldRaceCheckPoint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateFactory(OldRaceCheckPoint);
 
-    OldRaceCheckPoint::OldRaceCheckPoint(BaseObject* creator): DistanceTrigger(creator), RadarViewable(creator, static_cast<WorldEntity*>(this))
+    OldRaceCheckPoint::OldRaceCheckPoint(Context* context): DistanceTrigger(context), RadarViewable(this, static_cast<WorldEntity*>(this))
     {
         RegisterObject(OldRaceCheckPoint);
 

Modified: code/branches/core6/src/modules/gametypes/OldRaceCheckPoint.h
===================================================================
--- code/branches/core6/src/modules/gametypes/OldRaceCheckPoint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/OldRaceCheckPoint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
     class _GametypesExport OldRaceCheckPoint : public DistanceTrigger, public RadarViewable
     {
         public:
-            OldRaceCheckPoint(BaseObject* creator);
+            OldRaceCheckPoint(Context* context);
             virtual ~OldRaceCheckPoint();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/gametypes/OldSpaceRace.cc
===================================================================
--- code/branches/core6/src/modules/gametypes/OldSpaceRace.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/OldSpaceRace.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateUnloadableFactory(OldSpaceRace);
 
-    OldSpaceRace::OldSpaceRace(BaseObject* creator) : Gametype(creator)
+    OldSpaceRace::OldSpaceRace(Context* context) : Gametype(context)
     {
         RegisterObject(OldSpaceRace);
         this->checkpointsReached_ = 0;

Modified: code/branches/core6/src/modules/gametypes/OldSpaceRace.h
===================================================================
--- code/branches/core6/src/modules/gametypes/OldSpaceRace.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/OldSpaceRace.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
         friend class OldRaceCheckPoint;
 
         public:
-            OldSpaceRace(BaseObject* creator);
+            OldSpaceRace(Context* context);
             virtual ~OldSpaceRace() {}
 
             virtual void start();

Modified: code/branches/core6/src/modules/gametypes/RaceCheckPoint.cc
===================================================================
--- code/branches/core6/src/modules/gametypes/RaceCheckPoint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/RaceCheckPoint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,8 +42,8 @@
 {
     CreateFactory(RaceCheckPoint);
 
-    RaceCheckPoint::RaceCheckPoint(BaseObject* creator) : DistanceMultiTrigger(creator),
-            RadarViewable(creator, static_cast<WorldEntity*> (this))
+    RaceCheckPoint::RaceCheckPoint(Context* context) : DistanceMultiTrigger(context),
+            RadarViewable(this, static_cast<WorldEntity*> (this))
     {
         RegisterObject(RaceCheckPoint);
         this->setDistance(100);

Modified: code/branches/core6/src/modules/gametypes/RaceCheckPoint.h
===================================================================
--- code/branches/core6/src/modules/gametypes/RaceCheckPoint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/RaceCheckPoint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
             public RadarViewable
     {
         public:
-            RaceCheckPoint(BaseObject* creator);
+            RaceCheckPoint(Context* context);
             virtual ~RaceCheckPoint();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/gametypes/SpaceRace.cc
===================================================================
--- code/branches/core6/src/modules/gametypes/SpaceRace.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/SpaceRace.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
 {
     CreateUnloadableFactory(SpaceRace);
 
-    SpaceRace::SpaceRace(BaseObject* creator) : Gametype(creator)
+    SpaceRace::SpaceRace(Context* context) : Gametype(context)
     {
         RegisterObject(SpaceRace);
 

Modified: code/branches/core6/src/modules/gametypes/SpaceRace.h
===================================================================
--- code/branches/core6/src/modules/gametypes/SpaceRace.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/SpaceRace.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -53,7 +53,7 @@
 
 
         public:
-            SpaceRace(BaseObject* creator);
+            SpaceRace(Context* context);
             virtual ~SpaceRace() {}
 
             void tick(float dt);

Modified: code/branches/core6/src/modules/gametypes/SpaceRaceBot.cc
===================================================================
--- code/branches/core6/src/modules/gametypes/SpaceRaceBot.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/SpaceRaceBot.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -30,7 +30,7 @@
 {
     CreateFactory(SpaceRaceBot);
 
-    SpaceRaceBot::SpaceRaceBot(BaseObject* creator) : Bot(creator){
+    SpaceRaceBot::SpaceRaceBot(Context* context) : Bot(context){
         RegisterObject(SpaceRaceBot);
         this->defaultController_ = Class(SpaceRaceController);// ClassByString("")
         this->createController();

Modified: code/branches/core6/src/modules/gametypes/SpaceRaceBot.h
===================================================================
--- code/branches/core6/src/modules/gametypes/SpaceRaceBot.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/SpaceRaceBot.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _GametypesExport SpaceRaceBot: public Bot
     {
         public:
-        SpaceRaceBot(BaseObject* creator);
+        SpaceRaceBot(Context* context);
             virtual ~SpaceRaceBot() {}
     };
 }

Modified: code/branches/core6/src/modules/gametypes/SpaceRaceController.cc
===================================================================
--- code/branches/core6/src/modules/gametypes/SpaceRaceController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/SpaceRaceController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,8 +51,8 @@
     /*
      * Idea: Find static Point (checkpoints the spaceship has to reach)
      */
-    SpaceRaceController::SpaceRaceController(BaseObject* creator) :
-        ArtificialController(creator)
+    SpaceRaceController::SpaceRaceController(Context* context) :
+        ArtificialController(context)
     {
         RegisterObject(SpaceRaceController)
 ;        std::vector<RaceCheckPoint*> checkpoints;

Modified: code/branches/core6/src/modules/gametypes/SpaceRaceController.h
===================================================================
--- code/branches/core6/src/modules/gametypes/SpaceRaceController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/SpaceRaceController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -64,7 +64,7 @@
             //void computeVirtualCheckpoint(RaceCheckPoint*, RaceCheckPoint*, std::vector<StaticEntity*>);
 
         public:
-            SpaceRaceController(BaseObject* creator);
+            SpaceRaceController(Context* context);
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
             virtual ~SpaceRaceController();
             virtual void tick(float dt);

Modified: code/branches/core6/src/modules/gametypes/SpaceRaceManager.cc
===================================================================
--- code/branches/core6/src/modules/gametypes/SpaceRaceManager.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/SpaceRaceManager.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,8 +41,8 @@
 {
     CreateFactory(SpaceRaceManager);
 
-    SpaceRaceManager::SpaceRaceManager(BaseObject* creator) :
-        BaseObject(creator)
+    SpaceRaceManager::SpaceRaceManager(Context* context) :
+        BaseObject(context)
     {
         RegisterObject(SpaceRaceManager);
         this->race_ = orxonox_cast<SpaceRace*>(this->getGametype().get());

Modified: code/branches/core6/src/modules/gametypes/SpaceRaceManager.h
===================================================================
--- code/branches/core6/src/modules/gametypes/SpaceRaceManager.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/gametypes/SpaceRaceManager.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
         friend class RaceCheckPoint;
 
         public:
-            SpaceRaceManager(BaseObject* creator);
+            SpaceRaceManager(Context* context);
             virtual ~SpaceRaceManager() ;
 
             void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/notifications/NotificationDispatcher.cc
===================================================================
--- code/branches/core6/src/modules/notifications/NotificationDispatcher.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/NotificationDispatcher.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     @brief
         Default constructor. Initializes the object.
     */
-    NotificationDispatcher::NotificationDispatcher(BaseObject* creator) : BaseObject(creator), Synchronisable(creator)
+    NotificationDispatcher::NotificationDispatcher(Context* context) : BaseObject(context), Synchronisable(context)
     {
         RegisterObject(NotificationDispatcher);
 

Modified: code/branches/core6/src/modules/notifications/NotificationDispatcher.h
===================================================================
--- code/branches/core6/src/modules/notifications/NotificationDispatcher.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/NotificationDispatcher.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -75,7 +75,7 @@
     class _NotificationsExport NotificationDispatcher : public BaseObject, public Synchronisable
     {
         public:
-            NotificationDispatcher(BaseObject* creator); //!< Default constructor. Initializes the object.
+            NotificationDispatcher(Context* context); //!< Default constructor. Initializes the object.
             virtual ~NotificationDispatcher(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a NotificationDispatcher object through XML.

Modified: code/branches/core6/src/modules/notifications/NotificationQueue.cc
===================================================================
--- code/branches/core6/src/modules/notifications/NotificationQueue.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/NotificationQueue.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
     @param creator
         The creator of the NotificationQueue.
     */
-    NotificationQueue::NotificationQueue(BaseObject* creator) : BaseObject(creator), Synchronisable(creator), registered_(false)
+    NotificationQueue::NotificationQueue(Context* context) : BaseObject(context), Synchronisable(context), registered_(false)
     {
         RegisterObject(NotificationQueue);
 

Modified: code/branches/core6/src/modules/notifications/NotificationQueue.h
===================================================================
--- code/branches/core6/src/modules/notifications/NotificationQueue.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/NotificationQueue.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -93,7 +93,7 @@
     {
 
         public:
-            NotificationQueue(BaseObject* creator);
+            NotificationQueue(Context* context);
             virtual ~NotificationQueue();
 
             virtual void tick(float dt); // To update from time to time.

Modified: code/branches/core6/src/modules/notifications/NotificationQueueCEGUI.cc
===================================================================
--- code/branches/core6/src/modules/notifications/NotificationQueueCEGUI.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/NotificationQueueCEGUI.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -49,7 +49,7 @@
 
     /*static*/ const std::string NotificationQueueCEGUI::NOTIFICATION_LAYER("NotificationLayer");
 
-    NotificationQueueCEGUI::NotificationQueueCEGUI(BaseObject* creator) : NotificationQueue(creator)
+    NotificationQueueCEGUI::NotificationQueueCEGUI(Context* context) : NotificationQueue(context)
     {
         RegisterObject(NotificationQueueCEGUI);
 

Modified: code/branches/core6/src/modules/notifications/NotificationQueueCEGUI.h
===================================================================
--- code/branches/core6/src/modules/notifications/NotificationQueueCEGUI.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/NotificationQueueCEGUI.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -69,7 +69,7 @@
     { // tolua_export
 
         public:
-            NotificationQueueCEGUI(BaseObject* creator);
+            NotificationQueueCEGUI(Context* context);
             virtual ~NotificationQueueCEGUI();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/notifications/dispatchers/CommandNotification.cc
===================================================================
--- code/branches/core6/src/modules/notifications/dispatchers/CommandNotification.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/dispatchers/CommandNotification.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -49,7 +49,7 @@
     @brief
         Default Constructor. Registers the object and initializes variables.
     */
-    CommandNotification::CommandNotification(BaseObject* creator) : NotificationDispatcher(creator)
+    CommandNotification::CommandNotification(Context* context) : NotificationDispatcher(context)
     {
         RegisterObject(CommandNotification);
 

Modified: code/branches/core6/src/modules/notifications/dispatchers/CommandNotification.h
===================================================================
--- code/branches/core6/src/modules/notifications/dispatchers/CommandNotification.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/dispatchers/CommandNotification.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -69,7 +69,7 @@
     {
 
         public:
-            CommandNotification(BaseObject* creator); //!< Default Constructor.
+            CommandNotification(Context* context); //!< Default Constructor.
             virtual ~CommandNotification(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a CommandNotification object through XML.

Modified: code/branches/core6/src/modules/notifications/dispatchers/SimpleNotification.cc
===================================================================
--- code/branches/core6/src/modules/notifications/dispatchers/SimpleNotification.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/dispatchers/SimpleNotification.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
     @brief
         Default Constructor. Registers the object and initializes variables.
     */
-    SimpleNotification::SimpleNotification(BaseObject* creator) : NotificationDispatcher(creator)
+    SimpleNotification::SimpleNotification(Context* context) : NotificationDispatcher(context)
     {
         RegisterObject(SimpleNotification);
 

Modified: code/branches/core6/src/modules/notifications/dispatchers/SimpleNotification.h
===================================================================
--- code/branches/core6/src/modules/notifications/dispatchers/SimpleNotification.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/notifications/dispatchers/SimpleNotification.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -66,7 +66,7 @@
     class _NotificationsExport SimpleNotification : public NotificationDispatcher
     {
         public:
-            SimpleNotification(BaseObject* creator); //!< Default Constructor.
+            SimpleNotification(Context* context); //!< Default Constructor.
             virtual ~SimpleNotification(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a SimpleNotification object through XML.

Modified: code/branches/core6/src/modules/objects/Attacher.cc
===================================================================
--- code/branches/core6/src/modules/objects/Attacher.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/Attacher.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(Attacher);
 
-    Attacher::Attacher(BaseObject* creator) : StaticEntity(creator)
+    Attacher::Attacher(Context* context) : StaticEntity(context)
     {
         RegisterObject(Attacher);
 

Modified: code/branches/core6/src/modules/objects/Attacher.h
===================================================================
--- code/branches/core6/src/modules/objects/Attacher.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/Attacher.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     class _ObjectsExport Attacher : public StaticEntity, public XMLNameListener
     {
         public:
-            Attacher(BaseObject* creator);
+            Attacher(Context* context);
             virtual ~Attacher() {}
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/objects/ForceField.cc
===================================================================
--- code/branches/core6/src/modules/objects/ForceField.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/ForceField.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
     @brief
         Constructor. Registers the object and initializes some values.
     */
-    ForceField::ForceField(BaseObject* creator) : StaticEntity(creator)
+    ForceField::ForceField(Context* context) : StaticEntity(context)
     {
         RegisterObject(ForceField);
 

Modified: code/branches/core6/src/modules/objects/ForceField.h
===================================================================
--- code/branches/core6/src/modules/objects/ForceField.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/ForceField.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -85,7 +85,7 @@
     class _ObjectsExport ForceField : public StaticEntity, public Tickable
     {
         public:
-            ForceField(BaseObject* creator);
+            ForceField(Context* context);
             virtual ~ForceField();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Creates a ForceField object through XML.

Modified: code/branches/core6/src/modules/objects/Planet.cc
===================================================================
--- code/branches/core6/src/modules/objects/Planet.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/Planet.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
     /**
      * @brief Constructor
      */
-    Planet::Planet(BaseObject* creator) : MovableEntity(creator)
+    Planet::Planet(Context* context) : MovableEntity(context)
     {
         RegisterObject(Planet);
         this->registerVariables();

Modified: code/branches/core6/src/modules/objects/Planet.h
===================================================================
--- code/branches/core6/src/modules/objects/Planet.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/Planet.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     class _ObjectsExport Planet : public MovableEntity
     {
         public:
-            Planet(BaseObject* creator);
+            Planet(Context* context);
 
             virtual ~Planet();
 

Modified: code/branches/core6/src/modules/objects/Script.cc
===================================================================
--- code/branches/core6/src/modules/objects/Script.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/Script.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -60,7 +60,7 @@
     @param creator
         The creator of this object.
     */
-    Script::Script(BaseObject* creator) : BaseObject(creator)
+    Script::Script(Context* context) : BaseObject(context)
     {
         RegisterObject(Script);
 

Modified: code/branches/core6/src/modules/objects/Script.h
===================================================================
--- code/branches/core6/src/modules/objects/Script.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/Script.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -94,7 +94,7 @@
     class _ObjectsExport Script : public BaseObject, public ClientConnectionListener
     {
         public:
-            Script(BaseObject* creator);
+            Script(Context* context);
             virtual ~Script();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a Script object through XML.

Modified: code/branches/core6/src/modules/objects/SpaceBoundaries.cc
===================================================================
--- code/branches/core6/src/modules/objects/SpaceBoundaries.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/SpaceBoundaries.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -43,7 +43,7 @@
 {
     CreateFactory(SpaceBoundaries);
 
-    SpaceBoundaries::SpaceBoundaries(BaseObject* creator) : StaticEntity(creator)
+    SpaceBoundaries::SpaceBoundaries(Context* context) : StaticEntity(context)
     {
         RegisterObject(SpaceBoundaries);
 
@@ -103,7 +103,7 @@
 
         if (current == this->billboards_.size())
         {
-            Billboard* billboard = new Billboard(this);
+            Billboard* billboard = new Billboard(this->getContext());
             billboard->setPosition(position);
             billboard->setSyncMode(ObjectDirection::None);
             this->setBillboardOptions(billboard);

Modified: code/branches/core6/src/modules/objects/SpaceBoundaries.h
===================================================================
--- code/branches/core6/src/modules/objects/SpaceBoundaries.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/SpaceBoundaries.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -74,7 +74,7 @@
     class _ObjectsExport SpaceBoundaries : public StaticEntity, public Tickable
     {
         public:
-            SpaceBoundaries(BaseObject* creator);
+            SpaceBoundaries(Context* context);
             ~SpaceBoundaries();
 
             void setMaxDistance(float r);

Modified: code/branches/core6/src/modules/objects/Turret.cc
===================================================================
--- code/branches/core6/src/modules/objects/Turret.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/Turret.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,10 +39,10 @@
     /**
      * @brief Constructor
      */
-    Turret::Turret(BaseObject* creator) : SpaceShip(creator)
+    Turret::Turret(Context* context) : SpaceShip(context)
     {
         RegisterObject(Turret);
-        this->controller_ = new WaypointPatrolController(this);
+        this->controller_ = new WaypointPatrolController(this->getContext());
     }
 
     /**

Modified: code/branches/core6/src/modules/objects/Turret.h
===================================================================
--- code/branches/core6/src/modules/objects/Turret.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/Turret.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
     class _ObjectsExport Turret : public SpaceShip
     {
         public:
-            Turret(BaseObject* creator);
+            Turret(Context* context);
             virtual ~Turret();
 
             //virtual void tick(float dt);

Modified: code/branches/core6/src/modules/objects/collisionshapes/BoxCollisionShape.cc
===================================================================
--- code/branches/core6/src/modules/objects/collisionshapes/BoxCollisionShape.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/collisionshapes/BoxCollisionShape.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    BoxCollisionShape::BoxCollisionShape(BaseObject* creator) : CollisionShape(creator)
+    BoxCollisionShape::BoxCollisionShape(Context* context) : CollisionShape(context)
     {
         RegisterObject(BoxCollisionShape);
 

Modified: code/branches/core6/src/modules/objects/collisionshapes/BoxCollisionShape.h
===================================================================
--- code/branches/core6/src/modules/objects/collisionshapes/BoxCollisionShape.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/collisionshapes/BoxCollisionShape.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     class _ObjectsExport BoxCollisionShape : public CollisionShape
     {
         public:
-            BoxCollisionShape(BaseObject* creator);
+            BoxCollisionShape(Context* context);
             virtual ~BoxCollisionShape();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/objects/collisionshapes/ConeCollisionShape.cc
===================================================================
--- code/branches/core6/src/modules/objects/collisionshapes/ConeCollisionShape.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/collisionshapes/ConeCollisionShape.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    ConeCollisionShape::ConeCollisionShape(BaseObject* creator) : CollisionShape(creator)
+    ConeCollisionShape::ConeCollisionShape(Context* context) : CollisionShape(context)
     {
         RegisterObject(ConeCollisionShape);
 

Modified: code/branches/core6/src/modules/objects/collisionshapes/ConeCollisionShape.h
===================================================================
--- code/branches/core6/src/modules/objects/collisionshapes/ConeCollisionShape.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/collisionshapes/ConeCollisionShape.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     class _ObjectsExport ConeCollisionShape : public CollisionShape
     {
         public:
-            ConeCollisionShape(BaseObject* creator);
+            ConeCollisionShape(Context* context);
             virtual ~ConeCollisionShape();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/objects/collisionshapes/PlaneCollisionShape.cc
===================================================================
--- code/branches/core6/src/modules/objects/collisionshapes/PlaneCollisionShape.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/collisionshapes/PlaneCollisionShape.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    PlaneCollisionShape::PlaneCollisionShape(BaseObject* creator) : CollisionShape(creator)
+    PlaneCollisionShape::PlaneCollisionShape(Context* context) : CollisionShape(context)
     {
         RegisterObject(PlaneCollisionShape);
 

Modified: code/branches/core6/src/modules/objects/collisionshapes/PlaneCollisionShape.h
===================================================================
--- code/branches/core6/src/modules/objects/collisionshapes/PlaneCollisionShape.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/collisionshapes/PlaneCollisionShape.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     class _ObjectsExport PlaneCollisionShape : public CollisionShape
     {
         public:
-            PlaneCollisionShape(BaseObject* creator);
+            PlaneCollisionShape(Context* context);
             virtual ~PlaneCollisionShape();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/objects/collisionshapes/SphereCollisionShape.cc
===================================================================
--- code/branches/core6/src/modules/objects/collisionshapes/SphereCollisionShape.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/collisionshapes/SphereCollisionShape.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. registers and initializes the object.
     */
-    SphereCollisionShape::SphereCollisionShape(BaseObject* creator) : CollisionShape(creator)
+    SphereCollisionShape::SphereCollisionShape(Context* context) : CollisionShape(context)
     {
         RegisterObject(SphereCollisionShape);
 

Modified: code/branches/core6/src/modules/objects/collisionshapes/SphereCollisionShape.h
===================================================================
--- code/branches/core6/src/modules/objects/collisionshapes/SphereCollisionShape.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/collisionshapes/SphereCollisionShape.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     class _ObjectsExport SphereCollisionShape : public CollisionShape
     {
         public:
-            SphereCollisionShape(BaseObject* creator);
+            SphereCollisionShape(Context* context);
             virtual ~SphereCollisionShape();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/objects/eventsystem/EventDispatcher.cc
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventDispatcher.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventDispatcher.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateFactory(EventDispatcher);
 
-    EventDispatcher::EventDispatcher(BaseObject* creator) : BaseObject(creator)
+    EventDispatcher::EventDispatcher(Context* context) : BaseObject(context)
     {
         RegisterObject(EventDispatcher);
     }

Modified: code/branches/core6/src/modules/objects/eventsystem/EventDispatcher.h
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventDispatcher.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventDispatcher.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
     class _ObjectsExport EventDispatcher : public BaseObject
     {
         public:
-            EventDispatcher(BaseObject* creator);
+            EventDispatcher(Context* context);
             virtual ~EventDispatcher();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/objects/eventsystem/EventFilter.cc
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventFilter.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventFilter.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateFactory(EventFilter);
 
-    EventFilter::EventFilter(BaseObject* creator) : BaseObject(creator)
+    EventFilter::EventFilter(Context* context) : BaseObject(context)
     {
         RegisterObject(EventFilter);
 

Modified: code/branches/core6/src/modules/objects/eventsystem/EventFilter.h
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventFilter.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventFilter.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
     class _ObjectsExport EventFilter : public BaseObject
     {
         public:
-            EventFilter(BaseObject* creator);
+            EventFilter(Context* context);
             virtual ~EventFilter();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/objects/eventsystem/EventListener.cc
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventListener.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventListener.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateFactory(EventListener);
 
-    EventListener::EventListener(BaseObject* creator) : BaseObject(creator)
+    EventListener::EventListener(Context* context) : BaseObject(context)
     {
         RegisterObject(EventListener);
 

Modified: code/branches/core6/src/modules/objects/eventsystem/EventListener.h
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventListener.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventListener.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
     class _ObjectsExport EventListener : public BaseObject, public XMLNameListener
     {
         public:
-            EventListener(BaseObject* creator);
+            EventListener(Context* context);
             virtual ~EventListener();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/objects/eventsystem/EventName.cc
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventName.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventName.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -33,7 +33,7 @@
 {
     CreateFactory(EventName);
 
-    EventName::EventName(BaseObject* creator) : BaseObject(creator)
+    EventName::EventName(Context* context) : BaseObject(context)
     {
         RegisterObject(EventName);
     }

Modified: code/branches/core6/src/modules/objects/eventsystem/EventName.h
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventName.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventName.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
     class _ObjectsExport EventName : public BaseObject
     {
         public:
-            EventName(BaseObject* creator);
+            EventName(Context* context);
             virtual ~EventName() {}
     };
 }

Modified: code/branches/core6/src/modules/objects/eventsystem/EventTarget.cc
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventTarget.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventTarget.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -34,7 +34,7 @@
 {
     CreateFactory(EventTarget);
 
-    EventTarget::EventTarget(BaseObject* creator) : BaseObject(creator)
+    EventTarget::EventTarget(Context* context) : BaseObject(context)
     {
         RegisterObject(EventTarget);
 

Modified: code/branches/core6/src/modules/objects/eventsystem/EventTarget.h
===================================================================
--- code/branches/core6/src/modules/objects/eventsystem/EventTarget.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/eventsystem/EventTarget.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
     class _ObjectsExport EventTarget : public BaseObject, public XMLNameListener
     {
         public:
-            EventTarget(BaseObject* creator);
+            EventTarget(Context* context);
             virtual ~EventTarget();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/objects/triggers/CheckPoint.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/CheckPoint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/CheckPoint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -43,9 +43,9 @@
 {
     CreateFactory(CheckPoint);
 
-    CheckPoint::CheckPoint(BaseObject* creator)
-        : DistanceTrigger(creator)
-        , RadarViewable(creator, static_cast<WorldEntity*>(this))
+    CheckPoint::CheckPoint(Context* context)
+        : DistanceTrigger(context)
+        , RadarViewable(this, static_cast<WorldEntity*>(this))
     {
         RegisterObject(CheckPoint);
 

Modified: code/branches/core6/src/modules/objects/triggers/CheckPoint.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/CheckPoint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/CheckPoint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     class _ObjectsExport CheckPoint : public DistanceTrigger, public RadarViewable
     {
     public:
-        CheckPoint(BaseObject* creator);
+        CheckPoint(Context* context);
         virtual ~CheckPoint();
 
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a CheckPoint object through XML.

Modified: code/branches/core6/src/modules/objects/triggers/DistanceMultiTrigger.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/DistanceMultiTrigger.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/DistanceMultiTrigger.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
     @brief
         Default Constructor. Registers the object and initializes default values.
     */
-    DistanceMultiTrigger::DistanceMultiTrigger(BaseObject* creator) : MultiTrigger(creator)
+    DistanceMultiTrigger::DistanceMultiTrigger(Context* context) : MultiTrigger(context)
     {
         RegisterObject(DistanceMultiTrigger);
 

Modified: code/branches/core6/src/modules/objects/triggers/DistanceMultiTrigger.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/DistanceMultiTrigger.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/DistanceMultiTrigger.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -94,7 +94,7 @@
     {
 
         public:
-            DistanceMultiTrigger(BaseObject* creator); // Default Constructor. Registers the object and initializes default values.
+            DistanceMultiTrigger(Context* context); // Default Constructor. Registers the object and initializes default values.
             virtual ~DistanceMultiTrigger(); // Destructor.
 
             void XMLPort(Element& xmlelement, XMLPort::Mode mode); // Method for creating a DistanceMultiTrigger object through XML.

Modified: code/branches/core6/src/modules/objects/triggers/DistanceTrigger.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/DistanceTrigger.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/DistanceTrigger.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     @param creator
         The creator of this trigger.
     */
-    DistanceTrigger::DistanceTrigger(BaseObject* creator) : Trigger(creator)
+    DistanceTrigger::DistanceTrigger(Context* context) : Trigger(context)
     {
         RegisterObject(DistanceTrigger);
 

Modified: code/branches/core6/src/modules/objects/triggers/DistanceTrigger.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/DistanceTrigger.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/DistanceTrigger.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -96,7 +96,7 @@
     class _ObjectsExport DistanceTrigger : public Trigger, public PlayerTrigger
     {
         public:
-            DistanceTrigger(BaseObject* creator); // Constructor. Registers and initializes the object.
+            DistanceTrigger(Context* context); // Constructor. Registers and initializes the object.
             virtual ~DistanceTrigger();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); // Method for creating a DistanceTrigger object through XML.

Modified: code/branches/core6/src/modules/objects/triggers/DistanceTriggerBeacon.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/DistanceTriggerBeacon.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/DistanceTriggerBeacon.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @param creator
         The creator of this object.
     */
-    DistanceTriggerBeacon::DistanceTriggerBeacon(BaseObject* creator) : StaticEntity(creator)
+    DistanceTriggerBeacon::DistanceTriggerBeacon(Context* context) : StaticEntity(context)
     {
         RegisterObject(DistanceTriggerBeacon);
     }

Modified: code/branches/core6/src/modules/objects/triggers/DistanceTriggerBeacon.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/DistanceTriggerBeacon.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/DistanceTriggerBeacon.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     {
 
         public:
-            DistanceTriggerBeacon(BaseObject* creator); //!< Constructor.
+            DistanceTriggerBeacon(Context* context); //!< Constructor.
             virtual ~DistanceTriggerBeacon() {} //!< Destructor.
 
     };

Modified: code/branches/core6/src/modules/objects/triggers/EventMultiTrigger.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/EventMultiTrigger.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/EventMultiTrigger.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
     @brief
         Constructor. Registers the object.
     */
-    EventMultiTrigger::EventMultiTrigger(BaseObject* creator) : MultiTrigger(creator)
+    EventMultiTrigger::EventMultiTrigger(Context* context) : MultiTrigger(context)
     {
         RegisterObject(EventMultiTrigger);
     }

Modified: code/branches/core6/src/modules/objects/triggers/EventMultiTrigger.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/EventMultiTrigger.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/EventMultiTrigger.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -72,7 +72,7 @@
     {
 
         public:
-            EventMultiTrigger(BaseObject* creator); //!< Constructor. Registers the object.
+            EventMultiTrigger(Context* context); //!< Constructor. Registers the object.
             virtual ~EventMultiTrigger(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating an EventMultiTrigger object through XML.

Modified: code/branches/core6/src/modules/objects/triggers/EventTrigger.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/EventTrigger.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/EventTrigger.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @param creator
         The creator of the EventTrigger.
     */
-    EventTrigger::EventTrigger(BaseObject* creator) : Trigger(creator)
+    EventTrigger::EventTrigger(Context* context) : Trigger(context)
     {
         RegisterObject(EventTrigger);
 

Modified: code/branches/core6/src/modules/objects/triggers/EventTrigger.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/EventTrigger.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/EventTrigger.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -69,7 +69,7 @@
     class _ObjectsExport EventTrigger : public Trigger
     {
         public:
-            EventTrigger(BaseObject* creator); // Constructor. Registers and initializes the object.
+            EventTrigger(Context* context); // Constructor. Registers and initializes the object.
             virtual ~EventTrigger();
 
             virtual void XMLEventPort(Element& xmlelement, XMLPort::Mode mode); // Creates an event port.

Modified: code/branches/core6/src/modules/objects/triggers/MultiTrigger.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/MultiTrigger.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/MultiTrigger.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     @param creator
         The creator.
     */
-    MultiTrigger::MultiTrigger(BaseObject* creator) : TriggerBase(creator)
+    MultiTrigger::MultiTrigger(Context* context) : TriggerBase(context)
     {
         RegisterObject(MultiTrigger);
 
@@ -450,7 +450,7 @@
             return;
         }
 
-        MultiTriggerContainer* container = new MultiTriggerContainer(this, this, originator);
+        MultiTriggerContainer* container = new MultiTriggerContainer(this->getContext(), this, originator);
         this->fireEvent(status, container);
         orxout(verbose, context::triggers) << "MultiTrigger '" <<  this->getName() << "' (&" << this << "): Fired event. originator: " << originator->getIdentifier()->getName() << " (&" << originator << "), status: " << status << "." << endl;
         delete container;

Modified: code/branches/core6/src/modules/objects/triggers/MultiTrigger.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/MultiTrigger.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/MultiTrigger.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -98,7 +98,7 @@
     class _ObjectsExport MultiTrigger : public TriggerBase
     {
         public:
-            MultiTrigger(BaseObject* creator); //!< Constructor. Registers the objects and initializes default values.
+            MultiTrigger(Context* context); //!< Constructor. Registers the objects and initializes default values.
             virtual ~MultiTrigger(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a MultiTrigger object through XML.

Modified: code/branches/core6/src/modules/objects/triggers/MultiTriggerContainer.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/MultiTriggerContainer.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/MultiTriggerContainer.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -49,7 +49,7 @@
     @param creator
         The creator.
     */
-    MultiTriggerContainer::MultiTriggerContainer(BaseObject* creator) : BaseObject(creator), originator_(NULL), data_(NULL)
+    MultiTriggerContainer::MultiTriggerContainer(Context* context) : BaseObject(context), originator_(NULL), data_(NULL)
     {
         RegisterObject(MultiTriggerContainer);
     }
@@ -64,7 +64,7 @@
     @param data
         A pointer to the data that should be sent with the container.
     */
-    MultiTriggerContainer::MultiTriggerContainer(BaseObject* creator, MultiTrigger* originator, BaseObject* data) : BaseObject(creator), originator_(originator), data_(data)
+    MultiTriggerContainer::MultiTriggerContainer(Context* context, MultiTrigger* originator, BaseObject* data) : BaseObject(context), originator_(originator), data_(data)
     {
         RegisterObject(MultiTriggerContainer);
 

Modified: code/branches/core6/src/modules/objects/triggers/MultiTriggerContainer.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/MultiTriggerContainer.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/MultiTriggerContainer.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -57,8 +57,8 @@
     {
 
         public:
-            MultiTriggerContainer(BaseObject* creator); //!< Default constructor. Registers the object and creates an empty container.
-            MultiTriggerContainer(BaseObject* creator, MultiTrigger* originator, BaseObject* data); //!< Constructor. Registers the object and sets the input values.
+            MultiTriggerContainer(Context* context); //!< Default constructor. Registers the object and creates an empty container.
+            MultiTriggerContainer(Context* context, MultiTrigger* originator, BaseObject* data); //!< Constructor. Registers the object and sets the input values.
             virtual ~MultiTriggerContainer(); //!< Destructor.
 
             /**

Modified: code/branches/core6/src/modules/objects/triggers/Trigger.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/Trigger.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/Trigger.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     @param creator
         The creator of the Trigger.
     */
-    Trigger::Trigger(BaseObject* creator) : TriggerBase(creator)
+    Trigger::Trigger(Context* context) : TriggerBase(context)
     {
         RegisterObject(Trigger);
 

Modified: code/branches/core6/src/modules/objects/triggers/Trigger.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/Trigger.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/Trigger.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -79,7 +79,7 @@
     class _ObjectsExport Trigger : public TriggerBase
     {
         public:
-            Trigger(BaseObject* creator); // Constructor. Registers and initializes the object.
+            Trigger(Context* context); // Constructor. Registers and initializes the object.
             virtual ~Trigger();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); // Method for creating a Trigger object through XML.

Modified: code/branches/core6/src/modules/objects/triggers/TriggerBase.cc
===================================================================
--- code/branches/core6/src/modules/objects/triggers/TriggerBase.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/TriggerBase.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
     @brief
         Constructor. Registers the object and initializes some values.
     */
-    TriggerBase::TriggerBase(BaseObject* creator) : StaticEntity(creator)
+    TriggerBase::TriggerBase(Context* context) : StaticEntity(context)
     {
         RegisterObject(TriggerBase);
 

Modified: code/branches/core6/src/modules/objects/triggers/TriggerBase.h
===================================================================
--- code/branches/core6/src/modules/objects/triggers/TriggerBase.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/objects/triggers/TriggerBase.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -73,7 +73,7 @@
     class _ObjectsExport TriggerBase : public StaticEntity, public Tickable
     {
         public:
-            TriggerBase(BaseObject* creator);
+            TriggerBase(Context* context);
             virtual ~TriggerBase();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);  //!< Method for creating a TriggerBase object through XML.

Modified: code/branches/core6/src/modules/overlays/FadeoutText.cc
===================================================================
--- code/branches/core6/src/modules/overlays/FadeoutText.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/FadeoutText.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateFactory(FadeoutText);
 
-    FadeoutText::FadeoutText(BaseObject* creator) : OverlayText(creator)
+    FadeoutText::FadeoutText(Context* context) : OverlayText(context)
     {
         RegisterObject(FadeoutText);
 

Modified: code/branches/core6/src/modules/overlays/FadeoutText.h
===================================================================
--- code/branches/core6/src/modules/overlays/FadeoutText.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/FadeoutText.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OverlaysExport FadeoutText : public OverlayText, public Tickable
     {
         public:
-            FadeoutText(BaseObject* creator);
+            FadeoutText(Context* context);
             virtual ~FadeoutText() {}
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/overlays/GUIOverlay.cc
===================================================================
--- code/branches/core6/src/modules/overlays/GUIOverlay.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/GUIOverlay.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
 {
     CreateFactory(GUIOverlay);
 
-    GUIOverlay::GUIOverlay(BaseObject* creator) : OrxonoxOverlay(creator)
+    GUIOverlay::GUIOverlay(Context* context) : OrxonoxOverlay(context)
     {
         RegisterObject(GUIOverlay);
     }

Modified: code/branches/core6/src/modules/overlays/GUIOverlay.h
===================================================================
--- code/branches/core6/src/modules/overlays/GUIOverlay.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/GUIOverlay.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     {
         public:
 
-            GUIOverlay(BaseObject* creator);
+            GUIOverlay(Context* context);
             virtual ~GUIOverlay();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/overlays/OverlayText.cc
===================================================================
--- code/branches/core6/src/modules/overlays/OverlayText.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/OverlayText.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,8 +46,8 @@
     BOOST_STATIC_ASSERT((int)Ogre::TextAreaOverlayElement::Center == (int)OverlayText::Center);
     BOOST_STATIC_ASSERT((int)Ogre::TextAreaOverlayElement::Right  == (int)OverlayText::Right);
 
-    OverlayText::OverlayText(BaseObject* creator)
-        : OrxonoxOverlay(creator)
+    OverlayText::OverlayText(Context* context)
+        : OrxonoxOverlay(context)
     {
         RegisterObject(OverlayText);
 

Modified: code/branches/core6/src/modules/overlays/OverlayText.h
===================================================================
--- code/branches/core6/src/modules/overlays/OverlayText.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/OverlayText.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
             Center
         };
 
-        OverlayText(BaseObject* creator);
+        OverlayText(Context* context);
         virtual ~OverlayText();
 
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/overlays/debugging/DebugFPSText.cc
===================================================================
--- code/branches/core6/src/modules/overlays/debugging/DebugFPSText.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/debugging/DebugFPSText.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateFactory(DebugFPSText);
 
-    DebugFPSText::DebugFPSText(BaseObject* creator) : OverlayText(creator)
+    DebugFPSText::DebugFPSText(Context* context) : OverlayText(context)
     {
         RegisterObject(DebugFPSText);
     }

Modified: code/branches/core6/src/modules/overlays/debugging/DebugFPSText.h
===================================================================
--- code/branches/core6/src/modules/overlays/debugging/DebugFPSText.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/debugging/DebugFPSText.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport DebugFPSText : public OverlayText, public Tickable
     {
     public:
-        DebugFPSText(BaseObject* creator);
+        DebugFPSText(Context* context);
         virtual ~DebugFPSText();
 
         virtual void tick(float dt);

Modified: code/branches/core6/src/modules/overlays/debugging/DebugRTRText.cc
===================================================================
--- code/branches/core6/src/modules/overlays/debugging/DebugRTRText.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/debugging/DebugRTRText.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateFactory(DebugRTRText);
 
-    DebugRTRText::DebugRTRText(BaseObject* creator) : OverlayText(creator)
+    DebugRTRText::DebugRTRText(Context* context) : OverlayText(context)
     {
         RegisterObject(DebugRTRText);
     }

Modified: code/branches/core6/src/modules/overlays/debugging/DebugRTRText.h
===================================================================
--- code/branches/core6/src/modules/overlays/debugging/DebugRTRText.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/debugging/DebugRTRText.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport DebugRTRText : public OverlayText, public Tickable
     {
     public:
-        DebugRTRText(BaseObject* creator);
+        DebugRTRText(Context* context);
         virtual ~DebugRTRText();
 
         virtual void tick(float dt);

Modified: code/branches/core6/src/modules/overlays/hud/AnnounceMessage.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/AnnounceMessage.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/AnnounceMessage.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(AnnounceMessage);
 
-    AnnounceMessage::AnnounceMessage(BaseObject* creator) : FadeoutText(creator)
+    AnnounceMessage::AnnounceMessage(Context* context) : FadeoutText(context)
     {
         RegisterObject(AnnounceMessage);
 

Modified: code/branches/core6/src/modules/overlays/hud/AnnounceMessage.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/AnnounceMessage.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/AnnounceMessage.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport AnnounceMessage : public FadeoutText, public GametypeMessageListener
     {
         public:
-            AnnounceMessage(BaseObject* creator);
+            AnnounceMessage(Context* context);
             virtual ~AnnounceMessage() {}
 
             virtual void changedOwner();

Modified: code/branches/core6/src/modules/overlays/hud/ChatOverlay.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/ChatOverlay.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/ChatOverlay.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,8 +45,8 @@
 {
     CreateFactory(ChatOverlay);
 
-    ChatOverlay::ChatOverlay(BaseObject* creator)
-        : OverlayText(creator)
+    ChatOverlay::ChatOverlay(Context* context)
+        : OverlayText(context)
     {
         RegisterObject(ChatOverlay);
 

Modified: code/branches/core6/src/modules/overlays/hud/ChatOverlay.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/ChatOverlay.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/ChatOverlay.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
     class _OverlaysExport ChatOverlay : public OverlayText, public ChatListener
     {
         public:
-            ChatOverlay(BaseObject* creator);
+            ChatOverlay(Context* context);
             virtual ~ChatOverlay();
 
             void setConfigValues();

Modified: code/branches/core6/src/modules/overlays/hud/DeathMessage.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/DeathMessage.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/DeathMessage.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(DeathMessage);
 
-    DeathMessage::DeathMessage(BaseObject* creator) : FadeoutText(creator)
+    DeathMessage::DeathMessage(Context* context) : FadeoutText(context)
     {
         RegisterObject(DeathMessage);
 

Modified: code/branches/core6/src/modules/overlays/hud/DeathMessage.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/DeathMessage.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/DeathMessage.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport DeathMessage : public FadeoutText, public GametypeMessageListener
     {
         public:
-            DeathMessage(BaseObject* creator);
+            DeathMessage(Context* context);
             virtual ~DeathMessage() {}
 
             virtual void changedOwner();

Modified: code/branches/core6/src/modules/overlays/hud/GametypeFadingMessage.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/GametypeFadingMessage.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/GametypeFadingMessage.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(GametypeFadingMessage);
 
-    GametypeFadingMessage::GametypeFadingMessage(BaseObject* creator) : FadeoutText(creator)
+    GametypeFadingMessage::GametypeFadingMessage(Context* context) : FadeoutText(context)
     {
         RegisterObject(GametypeFadingMessage);
 

Modified: code/branches/core6/src/modules/overlays/hud/GametypeFadingMessage.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/GametypeFadingMessage.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/GametypeFadingMessage.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport GametypeFadingMessage : public FadeoutText, GametypeMessageListener
     {
         public:
-            GametypeFadingMessage(BaseObject* creator);
+            GametypeFadingMessage(Context* context);
             virtual ~GametypeFadingMessage();
 
             virtual void changedOwner();

Modified: code/branches/core6/src/modules/overlays/hud/GametypeStaticMessage.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/GametypeStaticMessage.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/GametypeStaticMessage.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
     CreateFactory(GametypeStaticMessage);
 
 
-    GametypeStaticMessage::GametypeStaticMessage(BaseObject* creator) : OverlayText(creator)
+    GametypeStaticMessage::GametypeStaticMessage(Context* context) : OverlayText(context)
     {
         RegisterObject(GametypeStaticMessage);
         this->owner_ = 0;

Modified: code/branches/core6/src/modules/overlays/hud/GametypeStaticMessage.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/GametypeStaticMessage.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/GametypeStaticMessage.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
     class _OverlaysExport GametypeStaticMessage : public OverlayText, GametypeMessageListener
     {
         public:
-            GametypeStaticMessage(BaseObject* creator);
+            GametypeStaticMessage(Context* context);
             virtual ~GametypeStaticMessage();
 
             virtual void changedOwner();

Modified: code/branches/core6/src/modules/overlays/hud/HUDBar.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDBar.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDBar.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,8 +46,8 @@
 {
     CreateFactory(BarColour);
 
-    BarColour::BarColour(BaseObject* creator)
-        : BaseObject(creator)
+    BarColour::BarColour(Context* context)
+        : BaseObject(context)
     {
         RegisterObject(BarColour);
 
@@ -66,8 +66,8 @@
 
     unsigned int HUDBar::materialcount_s = 0;
 
-    HUDBar::HUDBar(BaseObject* creator)
-        : OrxonoxOverlay(creator), right2Left_(false), autoColour_(false)
+    HUDBar::HUDBar(Context* context)
+        : OrxonoxOverlay(context), right2Left_(false), autoColour_(false)
     {
         RegisterObject(HUDBar);
 

Modified: code/branches/core6/src/modules/overlays/hud/HUDBar.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDBar.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDBar.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     class _OverlaysExport BarColour : public BaseObject
     {
     public:
-        BarColour(BaseObject* creator);
+        BarColour(Context* context);
         virtual ~BarColour() { }
 
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
@@ -67,7 +67,7 @@
     class _OverlaysExport HUDBar : public OrxonoxOverlay
     {
     public:
-        HUDBar(BaseObject* creator);
+        HUDBar(Context* context);
         virtual ~HUDBar();
 
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/overlays/hud/HUDBoostBar.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDBoostBar.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDBoostBar.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,8 +36,8 @@
 {
     CreateFactory(HUDBoostBar);
 
-    HUDBoostBar::HUDBoostBar(BaseObject* creator)
-        : HUDBar(creator)
+    HUDBoostBar::HUDBoostBar(Context* context)
+        : HUDBar(context)
     {
         RegisterObject(HUDBoostBar);
 

Modified: code/branches/core6/src/modules/overlays/hud/HUDBoostBar.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDBoostBar.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDBoostBar.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport HUDBoostBar : public HUDBar, public Tickable
     {
     public:
-        HUDBoostBar(BaseObject* creator);
+        HUDBoostBar(Context* context);
         virtual ~HUDBoostBar();
 
         virtual void tick(float dt);

Modified: code/branches/core6/src/modules/overlays/hud/HUDEnemyHealthBar.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDEnemyHealthBar.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDEnemyHealthBar.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(HUDEnemyHealthBar);
 
-    HUDEnemyHealthBar::HUDEnemyHealthBar(BaseObject* creator) : HUDHealthBar(creator)
+    HUDEnemyHealthBar::HUDEnemyHealthBar(Context* context) : HUDHealthBar(context)
     {
         RegisterObject(HUDEnemyHealthBar);
 

Modified: code/branches/core6/src/modules/overlays/hud/HUDEnemyHealthBar.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDEnemyHealthBar.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDEnemyHealthBar.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
     class _OverlaysExport HUDEnemyHealthBar : public HUDHealthBar
     {
         public:
-            HUDEnemyHealthBar(BaseObject* creator);
+            HUDEnemyHealthBar(Context* context);
             virtual ~HUDEnemyHealthBar();
 
             void setConfigValues();

Modified: code/branches/core6/src/modules/overlays/hud/HUDHealthBar.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDHealthBar.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDHealthBar.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,14 +38,14 @@
 {
     CreateFactory(HUDHealthBar);
 
-    HUDHealthBar::HUDHealthBar(BaseObject* creator) : HUDBar(creator)
+    HUDHealthBar::HUDHealthBar(Context* context) : HUDBar(context)
     {
         RegisterObject(HUDHealthBar);
 
         this->owner_ = 0;
         this->bUseBarColour_ = false;
 
-        this->textoverlay_ = new OverlayText(this);
+        this->textoverlay_ = new OverlayText(this->getContext());
 
         assert(this->textoverlay_.get());
 

Modified: code/branches/core6/src/modules/overlays/hud/HUDHealthBar.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDHealthBar.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDHealthBar.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
     class _OverlaysExport HUDHealthBar : public HUDBar, public Tickable
     {
         public:
-            HUDHealthBar(BaseObject* creator);
+            HUDHealthBar(Context* context);
             virtual ~HUDHealthBar();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/overlays/hud/HUDNavigation.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDNavigation.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDNavigation.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -70,8 +70,8 @@
 
     HUDNavigation* HUDNavigation::localHUD_s = 0;
 
-    HUDNavigation::HUDNavigation(BaseObject* creator) :
-        OrxonoxOverlay(creator)
+    HUDNavigation::HUDNavigation(Context* context) :
+        OrxonoxOverlay(context)
     {
         RegisterObject(HUDNavigation)
 ;        this->setConfigValues();

Modified: code/branches/core6/src/modules/overlays/hud/HUDNavigation.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDNavigation.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDNavigation.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
     class _OverlaysExport HUDNavigation : public OrxonoxOverlay, public Tickable, public RadarListener
     {
         public:
-            HUDNavigation(BaseObject* creator);
+            HUDNavigation(Context* context);
             virtual ~HUDNavigation();
 
             void setConfigValues();

Modified: code/branches/core6/src/modules/overlays/hud/HUDRadar.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDRadar.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDRadar.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,8 +45,8 @@
 {
     CreateFactory(HUDRadar);
 
-    HUDRadar::HUDRadar(BaseObject* creator)
-        : OrxonoxOverlay(creator)
+    HUDRadar::HUDRadar(Context* context)
+        : OrxonoxOverlay(context)
     {
         RegisterObject(HUDRadar);
 

Modified: code/branches/core6/src/modules/overlays/hud/HUDRadar.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDRadar.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDRadar.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
     class _OverlaysExport HUDRadar : public OrxonoxOverlay, public RadarListener
     {
     public:
-        HUDRadar(BaseObject* creator);
+        HUDRadar(Context* context);
         virtual ~HUDRadar();
 
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/overlays/hud/HUDSpeedBar.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDSpeedBar.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDSpeedBar.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,8 +37,8 @@
 {
     CreateFactory(HUDSpeedBar);
 
-    HUDSpeedBar::HUDSpeedBar(BaseObject* creator)
-        : HUDBar(creator)
+    HUDSpeedBar::HUDSpeedBar(Context* context)
+        : HUDBar(context)
     {
         RegisterObject(HUDSpeedBar);
 

Modified: code/branches/core6/src/modules/overlays/hud/HUDSpeedBar.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDSpeedBar.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDSpeedBar.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OverlaysExport HUDSpeedBar : public HUDBar, public Tickable
     {
     public:
-        HUDSpeedBar(BaseObject* creator);
+        HUDSpeedBar(Context* context);
         virtual ~HUDSpeedBar();
 
         virtual void tick(float dt);

Modified: code/branches/core6/src/modules/overlays/hud/HUDTimer.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDTimer.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDTimer.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateFactory(HUDTimer);
 
-    HUDTimer::HUDTimer(BaseObject* creator) : OverlayText(creator)
+    HUDTimer::HUDTimer(Context* context) : OverlayText(context)
     {
         RegisterObject(HUDTimer);
 

Modified: code/branches/core6/src/modules/overlays/hud/HUDTimer.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/HUDTimer.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/HUDTimer.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport HUDTimer : public OverlayText, public Tickable
     {
     public:
-        HUDTimer(BaseObject* creator);
+        HUDTimer(Context* context);
         virtual ~HUDTimer();
 
         virtual void tick(float dt);

Modified: code/branches/core6/src/modules/overlays/hud/KillMessage.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/KillMessage.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/KillMessage.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(KillMessage);
 
-    KillMessage::KillMessage(BaseObject* creator) : FadeoutText(creator)
+    KillMessage::KillMessage(Context* context) : FadeoutText(context)
     {
         RegisterObject(KillMessage);
 

Modified: code/branches/core6/src/modules/overlays/hud/KillMessage.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/KillMessage.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/KillMessage.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport KillMessage : public FadeoutText, public GametypeMessageListener
     {
         public:
-            KillMessage(BaseObject* creator);
+            KillMessage(Context* context);
             virtual ~KillMessage() {}
 
             virtual void changedOwner();

Modified: code/branches/core6/src/modules/overlays/hud/LastManStandingInfos.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/LastManStandingInfos.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/LastManStandingInfos.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(LastManStandingInfos);
 
-    LastManStandingInfos::LastManStandingInfos(BaseObject* creator) : OverlayText(creator)
+    LastManStandingInfos::LastManStandingInfos(Context* context) : OverlayText(context)
     {
         RegisterObject(LastManStandingInfos);
 

Modified: code/branches/core6/src/modules/overlays/hud/LastManStandingInfos.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/LastManStandingInfos.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/LastManStandingInfos.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport LastManStandingInfos : public OverlayText, public Tickable
     {
         public:
-            LastManStandingInfos(BaseObject* creator);
+            LastManStandingInfos(Context* context);
             virtual ~LastManStandingInfos();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/modules/overlays/hud/LastTeamStandingInfos.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/LastTeamStandingInfos.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/LastTeamStandingInfos.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(LastTeamStandingInfos);
 
-    LastTeamStandingInfos::LastTeamStandingInfos(BaseObject* creator) : OverlayText(creator)
+    LastTeamStandingInfos::LastTeamStandingInfos(Context* context) : OverlayText(context)
     {
         RegisterObject(LastTeamStandingInfos);
 

Modified: code/branches/core6/src/modules/overlays/hud/LastTeamStandingInfos.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/LastTeamStandingInfos.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/LastTeamStandingInfos.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport LastTeamStandingInfos : public OverlayText, public Tickable
     {
         public:
-            LastTeamStandingInfos(BaseObject* creator);
+            LastTeamStandingInfos(Context* context);
             virtual ~LastTeamStandingInfos();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/modules/overlays/hud/PauseNotice.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/PauseNotice.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/PauseNotice.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(PauseNotice);
 
-    PauseNotice::PauseNotice(BaseObject* creator) : OverlayText(creator)
+    PauseNotice::PauseNotice(Context* context) : OverlayText(context)
     {
         RegisterObject(PauseNotice);
 

Modified: code/branches/core6/src/modules/overlays/hud/PauseNotice.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/PauseNotice.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/PauseNotice.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport PauseNotice : public OverlayText, public TimeFactorListener
     {
         public:
-            PauseNotice(BaseObject* creator);
+            PauseNotice(Context* context);
 
             virtual void changedOwner();
 

Modified: code/branches/core6/src/modules/overlays/hud/TeamBaseMatchScore.cc
===================================================================
--- code/branches/core6/src/modules/overlays/hud/TeamBaseMatchScore.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/TeamBaseMatchScore.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(TeamBaseMatchScore);
 
-    TeamBaseMatchScore::TeamBaseMatchScore(BaseObject* creator) : OverlayText(creator)
+    TeamBaseMatchScore::TeamBaseMatchScore(Context* context) : OverlayText(context)
     {
         RegisterObject(TeamBaseMatchScore);
 

Modified: code/branches/core6/src/modules/overlays/hud/TeamBaseMatchScore.h
===================================================================
--- code/branches/core6/src/modules/overlays/hud/TeamBaseMatchScore.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/hud/TeamBaseMatchScore.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OverlaysExport TeamBaseMatchScore : public OverlayText, public Tickable
     {
         public:
-            TeamBaseMatchScore(BaseObject* creator);
+            TeamBaseMatchScore(Context* context);
             virtual ~TeamBaseMatchScore();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/modules/overlays/stats/Scoreboard.cc
===================================================================
--- code/branches/core6/src/modules/overlays/stats/Scoreboard.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/stats/Scoreboard.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,8 +39,8 @@
     /**
         @brief Constructor: Creates the scoreboard.
     */
-    Scoreboard::Scoreboard(BaseObject* creator)
-        : OrxonoxOverlay(creator)
+    Scoreboard::Scoreboard(Context* context)
+        : OrxonoxOverlay(context)
     {
         RegisterObject(Scoreboard);
     }

Modified: code/branches/core6/src/modules/overlays/stats/Scoreboard.h
===================================================================
--- code/branches/core6/src/modules/overlays/stats/Scoreboard.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/stats/Scoreboard.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OverlaysExport Scoreboard : public OrxonoxOverlay, public Tickable
     {
     public: // functions
-        Scoreboard(BaseObject* creator);
+        Scoreboard(Context* context);
         virtual ~Scoreboard();
 
         virtual void tick(float dt);

Modified: code/branches/core6/src/modules/overlays/stats/Stats.cc
===================================================================
--- code/branches/core6/src/modules/overlays/stats/Stats.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/stats/Stats.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -43,8 +43,8 @@
     /**
         @brief Constructor: Creates and initializes the Stats panel.
     */
-    Stats::Stats(BaseObject* creator)
-        : OrxonoxOverlay(creator)
+    Stats::Stats(Context* context)
+        : OrxonoxOverlay(context)
         , statsOverlayNoise_(0)
         , statsOverlayBorder_(0)
     {

Modified: code/branches/core6/src/modules/overlays/stats/Stats.h
===================================================================
--- code/branches/core6/src/modules/overlays/stats/Stats.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/overlays/stats/Stats.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OverlaysExport Stats : public OrxonoxOverlay, public Tickable
     {
     public: // functions
-        Stats(BaseObject* creator);
+        Stats(Context* context);
         virtual ~Stats();
 
         void setConfigValues();

Modified: code/branches/core6/src/modules/pickup/Pickup.cc
===================================================================
--- code/branches/core6/src/modules/pickup/Pickup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/Pickup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -55,7 +55,7 @@
     @param creator
         The objects creator.
     */
-    Pickup::Pickup(BaseObject* creator) : BaseObject(creator)
+    Pickup::Pickup(Context* context) : BaseObject(context)
     {
         RegisterObject(Pickup);
 
@@ -186,7 +186,7 @@
     */
     bool Pickup::createSpawner(void)
     {
-        PickupSpawner::createDroppedPickup(this, this, this->getCarrier());
+        PickupSpawner::createDroppedPickup(this->getContext(), this, this->getCarrier());
         return true;
     }
 

Modified: code/branches/core6/src/modules/pickup/Pickup.h
===================================================================
--- code/branches/core6/src/modules/pickup/Pickup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/Pickup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -99,7 +99,7 @@
     {
 
         public:
-            Pickup(BaseObject* creator); //!< Constructor.
+            Pickup(Context* context); //!< Constructor.
             virtual ~Pickup(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/pickup/PickupCollection.cc
===================================================================
--- code/branches/core6/src/modules/pickup/PickupCollection.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/PickupCollection.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
     @param creator
         The creator of the object.
     */
-    PickupCollection::PickupCollection(BaseObject* creator) : BaseObject(creator)
+    PickupCollection::PickupCollection(Context* context) : BaseObject(context)
     {
         RegisterObject(PickupCollection);
 
@@ -327,7 +327,7 @@
     */
     bool PickupCollection::createSpawner(void)
     {
-        PickupSpawner::createDroppedPickup(this, this, this->getCarrier());
+        PickupSpawner::createDroppedPickup(this->getContext(), this, this->getCarrier());
         return true;
     }
 

Modified: code/branches/core6/src/modules/pickup/PickupCollection.h
===================================================================
--- code/branches/core6/src/modules/pickup/PickupCollection.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/PickupCollection.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -69,7 +69,7 @@
     {
 
         public:
-            PickupCollection(BaseObject* creator); //!< Default Constructor.
+            PickupCollection(Context* context); //!< Default Constructor.
             virtual ~PickupCollection(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Creates an instance of this Class through XML.

Modified: code/branches/core6/src/modules/pickup/PickupRepresentation.cc
===================================================================
--- code/branches/core6/src/modules/pickup/PickupRepresentation.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/PickupRepresentation.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -63,7 +63,7 @@
     @brief
         Default Constructor. Registers the object and initializes its member variables.
     */
-    PickupRepresentation::PickupRepresentation(BaseObject* creator) : BaseObject(creator), Synchronisable(creator), spawnerRepresentation_(NULL)
+    PickupRepresentation::PickupRepresentation(Context* context) : BaseObject(context), Synchronisable(context), spawnerRepresentation_(NULL)
     {
         RegisterObject(PickupRepresentation);
 
@@ -179,12 +179,12 @@
     //TODO: Possibility to define default representation through XML?
     StaticEntity* PickupRepresentation::getDefaultSpawnerRepresentation(PickupSpawner* spawner)
     {
-        StaticEntity* representation = new StaticEntity(spawner);
-        Billboard* sphere = new Billboard(spawner);
+        StaticEntity* representation = new StaticEntity(spawner->getContext());
+        Billboard* sphere = new Billboard(spawner->getContext());
         sphere->setColour(ColourValue(0.95f, 0.85f, 0.27f));
         sphere->setMaterial("Sphere2");
         sphere->setScale(0.1f);
-        Billboard* icon = new Billboard(spawner);
+        Billboard* icon = new Billboard(spawner->getContext());
         icon->setColour(ColourValue(0.89f, 0.79f, 0.08f));
         icon->setMaterial("asterisk");
         icon->setScale(0.5);

Modified: code/branches/core6/src/modules/pickup/PickupRepresentation.h
===================================================================
--- code/branches/core6/src/modules/pickup/PickupRepresentation.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/PickupRepresentation.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -94,7 +94,7 @@
 
         public:
             PickupRepresentation(); //!< Constructor
-            PickupRepresentation(BaseObject* creator); //!< Default constructor.
+            PickupRepresentation(Context* context); //!< Default constructor.
             virtual ~PickupRepresentation(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a PickupRepresentation object through XML.

Modified: code/branches/core6/src/modules/pickup/PickupSpawner.cc
===================================================================
--- code/branches/core6/src/modules/pickup/PickupSpawner.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/PickupSpawner.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     @param creator
         Pointer to the object which created this item.
     */
-    PickupSpawner::PickupSpawner(BaseObject* creator) : StaticEntity(creator), pickup_(NULL), representation_(NULL), pickupTemplate_(NULL)
+    PickupSpawner::PickupSpawner(Context* context) : StaticEntity(context), pickup_(NULL), representation_(NULL), pickupTemplate_(NULL)
     {
         RegisterObject(PickupSpawner);
 
@@ -98,9 +98,9 @@
     @param triggerDistance
         The distance at which the PickupSpawner will trigger.
     */
-    /*static*/ PickupSpawner* PickupSpawner::createDroppedPickup(BaseObject* creator, Pickupable* pickup, PickupCarrier* carrier, float triggerDistance)
+    /*static*/ PickupSpawner* PickupSpawner::createDroppedPickup(Context* context, Pickupable* pickup, PickupCarrier* carrier, float triggerDistance)
     {
-        PickupSpawner* spawner = new PickupSpawner(creator);
+        PickupSpawner* spawner = new PickupSpawner(context);
 
         spawner->setPickupable(pickup);
         spawner->setTriggerDistance(triggerDistance);
@@ -288,7 +288,7 @@
             Identifier* identifier = this->pickupTemplate_->getBaseclassIdentifier();
             if (identifier != NULL)
             {
-                Pickupable* pickup = orxonox_cast<Pickupable*>(identifier->fabricate(this));
+                Pickupable* pickup = orxonox_cast<Pickupable*>(identifier->fabricate(this->getContext()));
                 orxonox_cast<BaseObject*>(pickup)->addTemplate(this->pickupTemplate_);
                 return pickup;
             }

Modified: code/branches/core6/src/modules/pickup/PickupSpawner.h
===================================================================
--- code/branches/core6/src/modules/pickup/PickupSpawner.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/PickupSpawner.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -76,10 +76,10 @@
     class _PickupExport PickupSpawner : public StaticEntity, public Tickable
     {
         public:
-            PickupSpawner(BaseObject* creator); //!< Default Constructor.
+            PickupSpawner(Context* context); //!< Default Constructor.
             virtual ~PickupSpawner(); //!< Destructor.
 
-            static PickupSpawner* createDroppedPickup(BaseObject* creator, Pickupable* pickup, PickupCarrier* carrier, float triggerDistance = 10.0);
+            static PickupSpawner* createDroppedPickup(Context* context, Pickupable* pickup, PickupCarrier* carrier, float triggerDistance = 10.0);
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);  //!< Method for creating a PickupSpawner through XML.
             virtual void tick(float dt); //!< Tick, checks if any Pawn is close enough to trigger.

Modified: code/branches/core6/src/modules/pickup/items/DamageBoostPickup.cc
===================================================================
--- code/branches/core6/src/modules/pickup/items/DamageBoostPickup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/DamageBoostPickup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers the object and initializes the member variables.
     */
-    DamageBoostPickup::DamageBoostPickup(BaseObject* creator) : Pickup(creator)
+    DamageBoostPickup::DamageBoostPickup(Context* context) : Pickup(context)
     {
         RegisterObject(DamageBoostPickup);
 

Modified: code/branches/core6/src/modules/pickup/items/DamageBoostPickup.h
===================================================================
--- code/branches/core6/src/modules/pickup/items/DamageBoostPickup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/DamageBoostPickup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
     {
         public:
 
-            DamageBoostPickup(BaseObject* creator); //!< Constructor.
+            DamageBoostPickup(Context* context); //!< Constructor.
             virtual ~DamageBoostPickup(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, orxonox::XMLPort::Mode mode); //!< Method for creating a DamageBoostPickup object through XML.

Modified: code/branches/core6/src/modules/pickup/items/DronePickup.cc
===================================================================
--- code/branches/core6/src/modules/pickup/items/DronePickup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/DronePickup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     @brief
         Constructor. Registers the object and initializes the member variables.
     */
-    DronePickup::DronePickup(BaseObject* creator) : Pickup(creator)
+    DronePickup::DronePickup(Context* context) : Pickup(context)
     {
         RegisterObject(DronePickup);
 
@@ -125,7 +125,7 @@
                     this->Pickupable::destroy();
 
                 //Attach to pawn
-                Drone* drone = new Drone(pawn->getCreator()); // this is neccessary because the projectiles fired need a valid creator for the particlespawner (when colliding against something)
+                Drone* drone = new Drone(pawn->getContext()); // this is neccessary because the projectiles fired need a valid creator for the particlespawner (when colliding against something)
                 drone->addTemplate(this->getDroneTemplate());
 
                 Controller* controller = drone->getController();

Modified: code/branches/core6/src/modules/pickup/items/DronePickup.h
===================================================================
--- code/branches/core6/src/modules/pickup/items/DronePickup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/DronePickup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -63,7 +63,7 @@
     {
         public:
 
-            DronePickup(BaseObject* creator); //!< Constructor.
+            DronePickup(Context* context); //!< Constructor.
             virtual ~DronePickup(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, orxonox::XMLPort::Mode mode); //!< Method for creating a DronePickup object through XML.

Modified: code/branches/core6/src/modules/pickup/items/HealthPickup.cc
===================================================================
--- code/branches/core6/src/modules/pickup/items/HealthPickup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/HealthPickup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
     @brief
         Constructor. Registers the object and initializes the member variables.
     */
-    HealthPickup::HealthPickup(BaseObject* creator) : Pickup(creator)
+    HealthPickup::HealthPickup(Context* context) : Pickup(context)
     {
         RegisterObject(HealthPickup);
 

Modified: code/branches/core6/src/modules/pickup/items/HealthPickup.h
===================================================================
--- code/branches/core6/src/modules/pickup/items/HealthPickup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/HealthPickup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -89,7 +89,7 @@
     {
         public:
 
-            HealthPickup(BaseObject* creator); //!< Constructor.
+            HealthPickup(Context* context); //!< Constructor.
             virtual ~HealthPickup(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, orxonox::XMLPort::Mode mode); //!< Method for creating a HealthPickup object through XML.

Modified: code/branches/core6/src/modules/pickup/items/InvisiblePickup.cc
===================================================================
--- code/branches/core6/src/modules/pickup/items/InvisiblePickup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/InvisiblePickup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     @brief
         Constructor. Registers the object and initializes the member variables.
     */
-    InvisiblePickup::InvisiblePickup(BaseObject* creator) : Pickup(creator)
+    InvisiblePickup::InvisiblePickup(Context* context) : Pickup(context)
     {
         RegisterObject(InvisiblePickup);
         this->initialize();

Modified: code/branches/core6/src/modules/pickup/items/InvisiblePickup.h
===================================================================
--- code/branches/core6/src/modules/pickup/items/InvisiblePickup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/InvisiblePickup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -69,7 +69,7 @@
     {
         public:
 
-            InvisiblePickup(BaseObject* creator); //!< Constructor.
+            InvisiblePickup(Context* context); //!< Constructor.
             virtual ~InvisiblePickup(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, orxonox::XMLPort::Mode mode); //!< Method for creating a HealthPickup object through XML.

Modified: code/branches/core6/src/modules/pickup/items/MetaPickup.cc
===================================================================
--- code/branches/core6/src/modules/pickup/items/MetaPickup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/MetaPickup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    MetaPickup::MetaPickup(BaseObject* creator) : Pickup(creator)
+    MetaPickup::MetaPickup(Context* context) : Pickup(context)
     {
         RegisterObject(MetaPickup);
 

Modified: code/branches/core6/src/modules/pickup/items/MetaPickup.h
===================================================================
--- code/branches/core6/src/modules/pickup/items/MetaPickup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/MetaPickup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -88,7 +88,7 @@
     {
 
         public:
-            MetaPickup(BaseObject* creator); //!< Constructor. Registers and initializes the object.
+            MetaPickup(Context* context); //!< Constructor. Registers and initializes the object.
             virtual ~MetaPickup(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, orxonox::XMLPort::Mode mode); //!< Method for creating a MetaPickup object through XML.

Modified: code/branches/core6/src/modules/pickup/items/ShieldPickup.cc
===================================================================
--- code/branches/core6/src/modules/pickup/items/ShieldPickup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/ShieldPickup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers the object and initializes the member variables.
     */
-    ShieldPickup::ShieldPickup(BaseObject* creator) : Pickup(creator)
+    ShieldPickup::ShieldPickup(Context* context) : Pickup(context)
     {
         RegisterObject(ShieldPickup);
 

Modified: code/branches/core6/src/modules/pickup/items/ShieldPickup.h
===================================================================
--- code/branches/core6/src/modules/pickup/items/ShieldPickup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/ShieldPickup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -75,7 +75,7 @@
     {
         public:
 
-            ShieldPickup(BaseObject* creator); //!< Constructor.
+            ShieldPickup(Context* context); //!< Constructor.
             virtual ~ShieldPickup(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, orxonox::XMLPort::Mode mode); //!< Method for creating a HealthPickup object through XML.

Modified: code/branches/core6/src/modules/pickup/items/ShrinkPickup.cc
===================================================================
--- code/branches/core6/src/modules/pickup/items/ShrinkPickup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/ShrinkPickup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
     @brief
         Constructor: Initializes the Pickup.
     */
-    ShrinkPickup::ShrinkPickup(BaseObject* creator) : Pickup(creator)
+    ShrinkPickup::ShrinkPickup(Context* context) : Pickup(context)
     {
         RegisterObject(ShrinkPickup);
 

Modified: code/branches/core6/src/modules/pickup/items/ShrinkPickup.h
===================================================================
--- code/branches/core6/src/modules/pickup/items/ShrinkPickup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/ShrinkPickup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -71,7 +71,7 @@
     class _PickupExport ShrinkPickup : public Pickup, public Tickable
     {
         public:
-            ShrinkPickup(BaseObject* creator); // Constructor.
+            ShrinkPickup(Context* context); // Constructor.
             virtual ~ShrinkPickup(); // Destructor.
 
             virtual void XMLPort(Element& xmlelement, orxonox::XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/pickup/items/SpeedPickup.cc
===================================================================
--- code/branches/core6/src/modules/pickup/items/SpeedPickup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/SpeedPickup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers the object and initializes the member variables.
     */
-    SpeedPickup::SpeedPickup(BaseObject* creator) : Pickup(creator)
+    SpeedPickup::SpeedPickup(Context* context) : Pickup(context)
     {
         RegisterObject(SpeedPickup);
 

Modified: code/branches/core6/src/modules/pickup/items/SpeedPickup.h
===================================================================
--- code/branches/core6/src/modules/pickup/items/SpeedPickup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pickup/items/SpeedPickup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -74,7 +74,7 @@
     {
         public:
 
-            SpeedPickup(BaseObject* creator); //!< Constructor.
+            SpeedPickup(Context* context); //!< Constructor.
             virtual ~SpeedPickup(); //!< Destructor.
 
             virtual void XMLPort(Element& xmlelement, orxonox::XMLPort::Mode mode); //!< Method for creating a HealthPickup object through XML.

Modified: code/branches/core6/src/modules/pong/Pong.cc
===================================================================
--- code/branches/core6/src/modules/pong/Pong.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/Pong.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -58,7 +58,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    Pong::Pong(BaseObject* creator) : Deathmatch(creator)
+    Pong::Pong(Context* context) : Deathmatch(context)
     {
         RegisterObject(Pong);
 
@@ -128,7 +128,7 @@
         {
             if (this->ball_ == NULL) // If there is no ball, create a new ball.
             {
-                this->ball_ = new PongBall(this->center_);
+                this->ball_ = new PongBall(this->center_->getContext());
                 // Apply the template for the ball specified by the centerpoint.
                 this->ball_->addTemplate(this->center_->getBalltemplate());
             }
@@ -146,7 +146,7 @@
             {
                 if (this->bat_[i] == NULL)
                 {
-                    this->bat_[i] = new PongBat(this->center_);
+                    this->bat_[i] = new PongBat(this->center_->getContext());
                     this->bat_[i]->addTemplate(this->center_->getBattemplate());
                 }
             }

Modified: code/branches/core6/src/modules/pong/Pong.h
===================================================================
--- code/branches/core6/src/modules/pong/Pong.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/Pong.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -64,7 +64,7 @@
     class _PongExport Pong : public Deathmatch
     {
         public:
-            Pong(BaseObject* creator); //!< Constructor. Registers and initializes the object.
+            Pong(Context* context); //!< Constructor. Registers and initializes the object.
             virtual ~Pong(); //!< Destructor. Cleans up, if initialized.
 
             virtual void start(); //!< Starts the Pong minigame.

Modified: code/branches/core6/src/modules/pong/PongAI.cc
===================================================================
--- code/branches/core6/src/modules/pong/PongAI.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongAI.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    PongAI::PongAI(BaseObject* creator) : Controller(creator)
+    PongAI::PongAI(Context* context) : Controller(context)
     {
         RegisterObject(PongAI);
 

Modified: code/branches/core6/src/modules/pong/PongAI.h
===================================================================
--- code/branches/core6/src/modules/pong/PongAI.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongAI.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -60,7 +60,7 @@
     class _PongExport PongAI : public Controller, public Tickable
     {
         public:
-            PongAI(BaseObject* creator); //!< Constructor. Registers and initializes the object.
+            PongAI(Context* context); //!< Constructor. Registers and initializes the object.
             virtual ~PongAI();
 
             void setConfigValues();

Modified: code/branches/core6/src/modules/pong/PongBall.cc
===================================================================
--- code/branches/core6/src/modules/pong/PongBall.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongBall.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,8 +50,8 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    PongBall::PongBall(BaseObject* creator)
-        : MovableEntity(creator)
+    PongBall::PongBall(Context* context)
+        : MovableEntity(context)
     {
         RegisterObject(PongBall);
 

Modified: code/branches/core6/src/modules/pong/PongBall.h
===================================================================
--- code/branches/core6/src/modules/pong/PongBall.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongBall.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -58,7 +58,7 @@
     class _PongExport PongBall : public MovableEntity
     {
         public:
-            PongBall(BaseObject* creator);
+            PongBall(Context* context);
             virtual ~PongBall();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/modules/pong/PongBat.cc
===================================================================
--- code/branches/core6/src/modules/pong/PongBat.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongBat.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    PongBat::PongBat(BaseObject* creator) : ControllableEntity(creator)
+    PongBat::PongBat(Context* context) : ControllableEntity(context)
     {
         RegisterObject(PongBat);
 

Modified: code/branches/core6/src/modules/pong/PongBat.h
===================================================================
--- code/branches/core6/src/modules/pong/PongBat.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongBat.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     class _PongExport PongBat : public ControllableEntity
     {
         public:
-            PongBat(BaseObject* creator); //!< Constructor. Registers and initializes the object.
+            PongBat(Context* context); //!< Constructor. Registers and initializes the object.
             virtual ~PongBat() {}
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/modules/pong/PongBot.cc
===================================================================
--- code/branches/core6/src/modules/pong/PongBot.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongBot.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
     @brief
         Constructor. Registers the object and creates a PongAI controller.
     */
-    PongBot::PongBot(BaseObject* creator) : Bot(creator)
+    PongBot::PongBot(Context* context) : Bot(context)
     {
         RegisterObject(PongBot);
 

Modified: code/branches/core6/src/modules/pong/PongBot.h
===================================================================
--- code/branches/core6/src/modules/pong/PongBot.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongBot.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -55,7 +55,7 @@
     class _PongExport PongBot : public Bot
     {
         public:
-            PongBot(BaseObject* creator);
+            PongBot(Context* context);
             virtual ~PongBot() {}
     };
 }

Modified: code/branches/core6/src/modules/pong/PongCenterpoint.cc
===================================================================
--- code/branches/core6/src/modules/pong/PongCenterpoint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongCenterpoint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
     @brief
         Constructor. Registers and initializes the object and checks whether the gametype is actually Pong.
     */
-    PongCenterpoint::PongCenterpoint(BaseObject* creator) : StaticEntity(creator)
+    PongCenterpoint::PongCenterpoint(Context* context) : StaticEntity(context)
     {
         RegisterObject(PongCenterpoint);
 

Modified: code/branches/core6/src/modules/pong/PongCenterpoint.h
===================================================================
--- code/branches/core6/src/modules/pong/PongCenterpoint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongCenterpoint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -120,7 +120,7 @@
     class _PongExport PongCenterpoint : public StaticEntity
     {
         public:
-            PongCenterpoint(BaseObject* creator); //!< Constructor. Registers and initializes the object and checks whether the gametype is actually Pong.
+            PongCenterpoint(Context* context); //!< Constructor. Registers and initializes the object and checks whether the gametype is actually Pong.
             virtual ~PongCenterpoint() {}
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method to create a PongCenterpoint through XML.

Modified: code/branches/core6/src/modules/pong/PongScore.cc
===================================================================
--- code/branches/core6/src/modules/pong/PongScore.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongScore.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -49,7 +49,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    PongScore::PongScore(BaseObject* creator) : OverlayText(creator)
+    PongScore::PongScore(Context* context) : OverlayText(context)
     {
         RegisterObject(PongScore);
 

Modified: code/branches/core6/src/modules/pong/PongScore.h
===================================================================
--- code/branches/core6/src/modules/pong/PongScore.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/pong/PongScore.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     class _PongExport PongScore : public OverlayText, public Tickable
     {
         public:
-            PongScore(BaseObject* creator);
+            PongScore(Context* context);
             virtual ~PongScore();
 
             virtual void tick(float dt); //!< Creates and sets the caption to be displayed by the PongScore.

Modified: code/branches/core6/src/modules/portals/PortalEndPoint.cc
===================================================================
--- code/branches/core6/src/modules/portals/PortalEndPoint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/portals/PortalEndPoint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,11 +47,11 @@
 
     std::map<unsigned int, PortalEndPoint *> PortalEndPoint::idMap_s;
 
-    PortalEndPoint::PortalEndPoint(BaseObject* creator) : StaticEntity(creator), RadarViewable(creator, static_cast<WorldEntity*>(this)), id_(0), trigger_(NULL), reenterDelay_(0)
+    PortalEndPoint::PortalEndPoint(Context* context) : StaticEntity(context), RadarViewable(this, static_cast<WorldEntity*>(this)), id_(0), trigger_(NULL), reenterDelay_(0)
     {
         RegisterObject(PortalEndPoint);
 
-        this->trigger_ = new DistanceMultiTrigger(this);
+        this->trigger_ = new DistanceMultiTrigger(this->getContext());
         this->trigger_->setName("portal");
         this->attach(this->trigger_);
 
@@ -60,7 +60,7 @@
         this->setRadarVisibility(true);
         if( GameMode::isMaster() )
         {
-            this->portalSound_ = new WorldSound(this);
+            this->portalSound_ = new WorldSound(this->getContext());
             this->portalSound_->setLooping(false);
             this->attach(this->portalSound_);
             this->portalSound_->setSource("sounds/Weapon_HsW01.ogg"); //TODO: change sound file

Modified: code/branches/core6/src/modules/portals/PortalEndPoint.h
===================================================================
--- code/branches/core6/src/modules/portals/PortalEndPoint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/portals/PortalEndPoint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -59,7 +59,7 @@
     class _PortalsExport PortalEndPoint : public StaticEntity, public RadarViewable
     {
         public:
-            PortalEndPoint(BaseObject* creator);
+            PortalEndPoint(Context* context);
             virtual ~PortalEndPoint();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/portals/PortalLink.cc
===================================================================
--- code/branches/core6/src/modules/portals/PortalLink.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/portals/PortalLink.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 
     std::map<PortalEndPoint *, PortalEndPoint *> PortalLink::links_s;
 
-    PortalLink::PortalLink(BaseObject* creator) : BaseObject(creator), fromID_(0), toID_(0), from_(0), to_(0)
+    PortalLink::PortalLink(Context* context) : BaseObject(context), fromID_(0), toID_(0), from_(0), to_(0)
     {
         RegisterObject(PortalLink);
     }

Modified: code/branches/core6/src/modules/portals/PortalLink.h
===================================================================
--- code/branches/core6/src/modules/portals/PortalLink.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/portals/PortalLink.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -53,7 +53,7 @@
     class _PortalsExport PortalLink : public BaseObject
     {
         public:
-            PortalLink(BaseObject* creator);
+            PortalLink(Context* context);
             virtual ~PortalLink();
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
 

Modified: code/branches/core6/src/modules/questsystem/GlobalQuest.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/GlobalQuest.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/GlobalQuest.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
     @brief
         Constructor. Registers the object.
     */
-    GlobalQuest::GlobalQuest(BaseObject* creator) : Quest(creator)
+    GlobalQuest::GlobalQuest(Context* context) : Quest(context)
     {
         RegisterObject(GlobalQuest);
     }

Modified: code/branches/core6/src/modules/questsystem/GlobalQuest.h
===================================================================
--- code/branches/core6/src/modules/questsystem/GlobalQuest.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/GlobalQuest.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -89,7 +89,7 @@
     class _QuestsystemExport GlobalQuest : public Quest
     {
         public:
-            GlobalQuest(BaseObject* creator);
+            GlobalQuest(Context* context);
             virtual ~GlobalQuest();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a GlobalQuest object through XML.

Modified: code/branches/core6/src/modules/questsystem/LocalQuest.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/LocalQuest.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/LocalQuest.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    LocalQuest::LocalQuest(BaseObject* creator) : Quest(creator)
+    LocalQuest::LocalQuest(Context* context) : Quest(context)
     {
         RegisterObject(LocalQuest);
     }

Modified: code/branches/core6/src/modules/questsystem/LocalQuest.h
===================================================================
--- code/branches/core6/src/modules/questsystem/LocalQuest.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/LocalQuest.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -83,7 +83,7 @@
     class _QuestsystemExport LocalQuest : public Quest
     {
         public:
-            LocalQuest(BaseObject* creator);
+            LocalQuest(Context* context);
             virtual ~LocalQuest();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a LocalQuest object through XML.

Modified: code/branches/core6/src/modules/questsystem/Quest.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/Quest.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/Quest.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
     @brief
         Constructor. Registers and initializes object.
     */
-    Quest::Quest(BaseObject* creator) : QuestItem(creator)
+    Quest::Quest(Context* context) : QuestItem(context)
     {
         RegisterObject(Quest);
 

Modified: code/branches/core6/src/modules/questsystem/Quest.h
===================================================================
--- code/branches/core6/src/modules/questsystem/Quest.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/Quest.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -81,7 +81,7 @@
         : public QuestItem
     { // tolua_export
         public:
-            Quest(BaseObject* creator);
+            Quest(Context* context);
             virtual ~Quest();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a Quest object through XML.

Modified: code/branches/core6/src/modules/questsystem/QuestDescription.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestDescription.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestDescription.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    QuestDescription::QuestDescription(BaseObject* creator) : BaseObject(creator)
+    QuestDescription::QuestDescription(Context* context) : BaseObject(context)
     {
         RegisterObject(QuestDescription);
     }

Modified: code/branches/core6/src/modules/questsystem/QuestDescription.h
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestDescription.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestDescription.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -63,7 +63,7 @@
     {
 // tolua_end
         public:
-            QuestDescription(BaseObject* creator);
+            QuestDescription(Context* context);
             virtual ~QuestDescription();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a QuestDescription object through XML.

Modified: code/branches/core6/src/modules/questsystem/QuestEffect.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestEffect.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestEffect.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
         Constructor. Creates a new QuestEffect.
         Is not meant to be invoked directly, since this is only an interface.
     */
-    QuestEffect::QuestEffect(BaseObject* creator) : BaseObject(creator)
+    QuestEffect::QuestEffect(Context* context) : BaseObject(context)
     {
         RegisterObject(QuestEffect);
     }

Modified: code/branches/core6/src/modules/questsystem/QuestEffect.h
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestEffect.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestEffect.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     class _QuestsystemExport QuestEffect : public BaseObject
     {
         public:
-            QuestEffect(BaseObject* creator);
+            QuestEffect(Context* context);
             virtual ~QuestEffect();
 
             virtual bool invoke(PlayerInfo* player) = 0; //!< Invokes the QuestEffect.

Modified: code/branches/core6/src/modules/questsystem/QuestEffectBeacon.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestEffectBeacon.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestEffectBeacon.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     @brief
         Constructor. Registers the object and initializes defaults.
     */
-    QuestEffectBeacon::QuestEffectBeacon(BaseObject* creator) : StaticEntity(creator)
+    QuestEffectBeacon::QuestEffectBeacon(Context* context) : StaticEntity(context)
     {
         RegisterObject(QuestEffectBeacon);
 

Modified: code/branches/core6/src/modules/questsystem/QuestEffectBeacon.h
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestEffectBeacon.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestEffectBeacon.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -92,7 +92,7 @@
     class _QuestsystemExport QuestEffectBeacon : public StaticEntity
     {
         public:
-            QuestEffectBeacon(BaseObject* creator);
+            QuestEffectBeacon(Context* context);
             virtual ~QuestEffectBeacon();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a QuestEffectBeacon object through XML.

Modified: code/branches/core6/src/modules/questsystem/QuestHint.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestHint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestHint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
     @brief
         Constructor. Registers the object.
     */
-    QuestHint::QuestHint(BaseObject* creator) : QuestItem(creator)
+    QuestHint::QuestHint(Context* context) : QuestItem(context)
     {
         RegisterObject(QuestHint);
     }

Modified: code/branches/core6/src/modules/questsystem/QuestHint.h
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestHint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestHint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -81,7 +81,7 @@
     { // tolua_export
 
         public:
-            QuestHint(BaseObject* creator);
+            QuestHint(Context* context);
             virtual ~QuestHint();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a QuestHint object through XML.

Modified: code/branches/core6/src/modules/questsystem/QuestItem.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestItem.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestItem.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    QuestItem::QuestItem(BaseObject* creator) : BaseObject(creator)
+    QuestItem::QuestItem(Context* context) : BaseObject(context)
     {
         this->registered_ = false;
 

Modified: code/branches/core6/src/modules/questsystem/QuestItem.h
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestItem.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestItem.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -59,7 +59,7 @@
     {
 
         public:
-            QuestItem(BaseObject* creator);
+            QuestItem(Context* context);
             virtual ~QuestItem();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a QuestItem object through XML.

Modified: code/branches/core6/src/modules/questsystem/QuestListener.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestListener.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestListener.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -53,7 +53,7 @@
     @brief
         Constructor. Registers the object and initializes variables.
     */
-    QuestListener::QuestListener(BaseObject* creator) : BaseObject(creator)
+    QuestListener::QuestListener(Context* context) : BaseObject(context)
     {
         RegisterObject(QuestListener);
 

Modified: code/branches/core6/src/modules/questsystem/QuestListener.h
===================================================================
--- code/branches/core6/src/modules/questsystem/QuestListener.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/QuestListener.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -86,7 +86,7 @@
     {
 
         public:
-            QuestListener(BaseObject* creator);
+            QuestListener(Context* context);
             virtual ~QuestListener();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a QuestListener object through XML.

Modified: code/branches/core6/src/modules/questsystem/effects/AddQuest.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/AddQuest.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/AddQuest.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
     @brief
         Constructor. Registers the object.
     */
-    AddQuest::AddQuest(BaseObject* creator) : ChangeQuestStatus(creator)
+    AddQuest::AddQuest(Context* context) : ChangeQuestStatus(context)
     {
         RegisterObject(AddQuest);
     }

Modified: code/branches/core6/src/modules/questsystem/effects/AddQuest.h
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/AddQuest.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/AddQuest.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -58,7 +58,7 @@
     class _QuestsystemExport AddQuest : public ChangeQuestStatus
     {
         public:
-        AddQuest(BaseObject* creator);
+        AddQuest(Context* context);
         virtual ~AddQuest();
 
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a AddQuest object through XML.

Modified: code/branches/core6/src/modules/questsystem/effects/AddQuestHint.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/AddQuestHint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/AddQuestHint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -49,7 +49,7 @@
     @brief
         Constructor. Registers the object.
     */
-    AddQuestHint::AddQuestHint(BaseObject* creator) : QuestEffect(creator)
+    AddQuestHint::AddQuestHint(Context* context) : QuestEffect(context)
     {
         RegisterObject(AddQuestHint);
     }

Modified: code/branches/core6/src/modules/questsystem/effects/AddQuestHint.h
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/AddQuestHint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/AddQuestHint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -60,7 +60,7 @@
     class _QuestsystemExport AddQuestHint : public QuestEffect
     {
         public:
-            AddQuestHint(BaseObject* creator);
+            AddQuestHint(Context* context);
             virtual ~AddQuestHint();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a AddQuestHint object through XML.

Modified: code/branches/core6/src/modules/questsystem/effects/AddReward.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/AddReward.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/AddReward.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
     @brief
         Constructor. Registers the object.
     */
-    AddReward::AddReward(BaseObject* creator) : QuestEffect(creator)
+    AddReward::AddReward(Context* context) : QuestEffect(context)
     {
         RegisterObject(AddReward);
     }

Modified: code/branches/core6/src/modules/questsystem/effects/AddReward.h
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/AddReward.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/AddReward.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -64,7 +64,7 @@
     class _QuestsystemExport AddReward : public QuestEffect
     {
         public:
-            AddReward(BaseObject* creator);
+            AddReward(Context* context);
             virtual ~AddReward();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a AddReward object through XML.

Modified: code/branches/core6/src/modules/questsystem/effects/ChangeQuestStatus.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/ChangeQuestStatus.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/ChangeQuestStatus.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
     @brief
         Constructor. Registers the object.
     */
-    ChangeQuestStatus::ChangeQuestStatus(BaseObject* creator) : QuestEffect(creator)
+    ChangeQuestStatus::ChangeQuestStatus(Context* context) : QuestEffect(context)
     {
         RegisterObject(ChangeQuestStatus);
     }

Modified: code/branches/core6/src/modules/questsystem/effects/ChangeQuestStatus.h
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/ChangeQuestStatus.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/ChangeQuestStatus.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -55,7 +55,7 @@
     class _QuestsystemExport ChangeQuestStatus : public QuestEffect
     {
         public:
-            ChangeQuestStatus(BaseObject* creator);
+            ChangeQuestStatus(Context* context);
             virtual ~ChangeQuestStatus();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a ChangeQuestStatus object through XML.

Modified: code/branches/core6/src/modules/questsystem/effects/CompleteQuest.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/CompleteQuest.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/CompleteQuest.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers the object.
     */
-    CompleteQuest::CompleteQuest(BaseObject* creator) : ChangeQuestStatus(creator)
+    CompleteQuest::CompleteQuest(Context* context) : ChangeQuestStatus(context)
     {
         RegisterObject(CompleteQuest);
     }

Modified: code/branches/core6/src/modules/questsystem/effects/CompleteQuest.h
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/CompleteQuest.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/CompleteQuest.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -58,7 +58,7 @@
     class _QuestsystemExport CompleteQuest : public ChangeQuestStatus
     {
         public:
-            CompleteQuest(BaseObject* creator);
+            CompleteQuest(Context* context);
             virtual ~CompleteQuest();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a CompleteQuest object through XML.

Modified: code/branches/core6/src/modules/questsystem/effects/FailQuest.cc
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/FailQuest.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/FailQuest.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers the object.
     */
-    FailQuest::FailQuest(BaseObject* creator) : ChangeQuestStatus(creator)
+    FailQuest::FailQuest(Context* context) : ChangeQuestStatus(context)
     {
         RegisterObject(FailQuest);
     }

Modified: code/branches/core6/src/modules/questsystem/effects/FailQuest.h
===================================================================
--- code/branches/core6/src/modules/questsystem/effects/FailQuest.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/questsystem/effects/FailQuest.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -58,7 +58,7 @@
     class _QuestsystemExport FailQuest : public ChangeQuestStatus
     {
         public:
-            FailQuest(BaseObject* creator);
+            FailQuest(Context* context);
             virtual ~FailQuest();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a FailQuest object through XML.

Modified: code/branches/core6/src/modules/tetris/Tetris.cc
===================================================================
--- code/branches/core6/src/modules/tetris/Tetris.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/Tetris.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -60,7 +60,7 @@
         Constructor. Registers and initializes the object.
     @ingroup Tetris
     */
-    Tetris::Tetris(BaseObject* creator) : Deathmatch(creator)
+    Tetris::Tetris(Context* context) : Deathmatch(context)
     {
         RegisterObject(Tetris);
 
@@ -378,7 +378,7 @@
     void Tetris::createBrick(void)             //TODO: random rotation offset between 0 and 3 (times 90°)
     {
         // create new futureBrick_
-        this->futureBrick_ = new TetrisBrick(this->center_);
+        this->futureBrick_ = new TetrisBrick(this->center_->getContext());
 
 
         // Apply the stone template to the stone.

Modified: code/branches/core6/src/modules/tetris/Tetris.h
===================================================================
--- code/branches/core6/src/modules/tetris/Tetris.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/Tetris.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     class _TetrisExport Tetris : public Deathmatch
     {
         public:
-            Tetris(BaseObject* creator); //!< Constructor. Registers and initializes the object.
+            Tetris(Context* context); //!< Constructor. Registers and initializes the object.
             virtual ~Tetris(); //!< Destructor. Cleans up, if initialized.
 
             virtual void start(void); //!< Starts the Tetris minigame.

Modified: code/branches/core6/src/modules/tetris/TetrisBrick.cc
===================================================================
--- code/branches/core6/src/modules/tetris/TetrisBrick.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/TetrisBrick.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
         Constructor. Registers and initializes the object.
     @ingroup Tetris
     */
-    TetrisBrick::TetrisBrick(BaseObject* creator): ControllableEntity(creator)
+    TetrisBrick::TetrisBrick(Context* context): ControllableEntity(context)
     {
         RegisterObject(TetrisBrick);
         this->shapeIndex_ = static_cast<unsigned int>(rnd(7.0f)); //<! random number between 0 and 7
@@ -76,7 +76,7 @@
         for (unsigned int i = 0; i < this->stonesPerBrick_; i++)
         {
             // Create a new stone and add it to the brick.
-            TetrisStone* stone = new TetrisStone(this);
+            TetrisStone* stone = new TetrisStone(this->getContext());
             this->brickStones_.push_back(stone);
             this->attach(stone);
             this->formBrick(stone, i);

Modified: code/branches/core6/src/modules/tetris/TetrisBrick.h
===================================================================
--- code/branches/core6/src/modules/tetris/TetrisBrick.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/TetrisBrick.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -53,7 +53,7 @@
     class _TetrisExport TetrisBrick : public ControllableEntity
     {
         public:
-            TetrisBrick(BaseObject* creator); //!< Constructor. Registers and initializes the object.
+            TetrisBrick(Context* context); //!< Constructor. Registers and initializes the object.
             virtual ~TetrisBrick() {}
 
             virtual void moveFrontBack(const Vector2& value); //!< Overloaded the function to steer the bat up and down.

Modified: code/branches/core6/src/modules/tetris/TetrisCenterpoint.cc
===================================================================
--- code/branches/core6/src/modules/tetris/TetrisCenterpoint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/TetrisCenterpoint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers and initializes the object and checks whether the gametype is actually Tetris.
     */
-    TetrisCenterpoint::TetrisCenterpoint(BaseObject* creator) : StaticEntity(creator)
+    TetrisCenterpoint::TetrisCenterpoint(Context* context) : StaticEntity(context)
     {
         RegisterObject(TetrisCenterpoint);
 

Modified: code/branches/core6/src/modules/tetris/TetrisCenterpoint.h
===================================================================
--- code/branches/core6/src/modules/tetris/TetrisCenterpoint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/TetrisCenterpoint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -58,7 +58,7 @@
     class _TetrisExport TetrisCenterpoint : public StaticEntity
     {
         public:
-            TetrisCenterpoint(BaseObject* creator); //!< Constructor. Registers and initializes the object and checks whether the gametype is actually Tetris.
+            TetrisCenterpoint(Context* context); //!< Constructor. Registers and initializes the object and checks whether the gametype is actually Tetris.
             virtual ~TetrisCenterpoint() {}
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method to create a TetrisCenterpoint through XML.

Modified: code/branches/core6/src/modules/tetris/TetrisScore.cc
===================================================================
--- code/branches/core6/src/modules/tetris/TetrisScore.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/TetrisScore.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
         Constructor. Registers and initializes the object.
     @ingroup Tetris
     */
-    TetrisScore::TetrisScore(BaseObject* creator) : OverlayText(creator)
+    TetrisScore::TetrisScore(Context* context) : OverlayText(context)
     {
         RegisterObject(TetrisScore);
 

Modified: code/branches/core6/src/modules/tetris/TetrisScore.h
===================================================================
--- code/branches/core6/src/modules/tetris/TetrisScore.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/TetrisScore.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     class _TetrisExport TetrisScore : public OverlayText, public Tickable
     {
         public:
-            TetrisScore(BaseObject* creator);
+            TetrisScore(Context* context);
             virtual ~TetrisScore();
 
             virtual void tick(float dt); //!< Creates and sets the caption to be displayed by the TetrisScore.

Modified: code/branches/core6/src/modules/tetris/TetrisStone.cc
===================================================================
--- code/branches/core6/src/modules/tetris/TetrisStone.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/TetrisStone.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    TetrisStone::TetrisStone(BaseObject* creator) : MovableEntity(creator)
+    TetrisStone::TetrisStone(Context* context) : MovableEntity(context)
     {
         RegisterObject(TetrisStone);
 

Modified: code/branches/core6/src/modules/tetris/TetrisStone.h
===================================================================
--- code/branches/core6/src/modules/tetris/TetrisStone.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/tetris/TetrisStone.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -53,7 +53,7 @@
     class _TetrisExport TetrisStone : public MovableEntity
     {
         public:
-            TetrisStone(BaseObject* creator); //!< Constructor. Registers and initializes the object.
+            TetrisStone(Context* context); //!< Constructor. Registers and initializes the object.
             virtual ~TetrisStone() {}
 
             virtual void moveFrontBack(const Vector2& value); //!< Overloaded the function to steer the bat up and down.

Modified: code/branches/core6/src/modules/towerdefense/Tower.cc
===================================================================
--- code/branches/core6/src/modules/towerdefense/Tower.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/Tower.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -21,7 +21,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    Tower::Tower(BaseObject* creator) : Pawn(creator)
+    Tower::Tower(Context* context) : Pawn(context)
     {
         RegisterObject(Tower);
 

Modified: code/branches/core6/src/modules/towerdefense/Tower.h
===================================================================
--- code/branches/core6/src/modules/towerdefense/Tower.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/Tower.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -26,7 +26,7 @@
     class _TowerDefenseExport Tower : public Pawn
     {
     public:
-        Tower(BaseObject* creator);
+        Tower(Context* context);
         virtual ~Tower() {};
 
         // Maybe later override these to move towers with cursor keys

Modified: code/branches/core6/src/modules/towerdefense/TowerDefense.cc
===================================================================
--- code/branches/core6/src/modules/towerdefense/TowerDefense.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/TowerDefense.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -95,7 +95,7 @@
 {
     CreateUnloadableFactory(TowerDefense);
 
-    TowerDefense::TowerDefense(BaseObject* creator) : Deathmatch(creator)
+    TowerDefense::TowerDefense(Context* context) : Deathmatch(context)
     {
         RegisterObject(TowerDefense);
 
@@ -189,7 +189,7 @@
         this->stats_->buyTower(towerCost);
 
         // Create tower
-        Tower* newTower = new Tower(this->center_);
+        Tower* newTower = new Tower(this->center_->getContext());
         newTower->addTemplate(this->center_->getTowerTemplate());
 
         newTower->setPosition(static_cast<float>((x-8) * tileScale), static_cast<float>((y-8) * tileScale), 75);

Modified: code/branches/core6/src/modules/towerdefense/TowerDefense.h
===================================================================
--- code/branches/core6/src/modules/towerdefense/TowerDefense.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/TowerDefense.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     class _TowerDefenseExport TowerDefense : public Deathmatch
     {
     public:
-        TowerDefense(BaseObject* creator);
+        TowerDefense(Context* context);
         virtual ~TowerDefense();
 
         virtual void start(); //<! The function is called when the gametype starts

Modified: code/branches/core6/src/modules/towerdefense/TowerDefenseCenterpoint.cc
===================================================================
--- code/branches/core6/src/modules/towerdefense/TowerDefenseCenterpoint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/TowerDefenseCenterpoint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
     @brief
         Constructor. Registers and initializes the object and checks whether the gametype is actually TowerDefense.
     */
-    TowerDefenseCenterpoint::TowerDefenseCenterpoint(BaseObject* creator) : MobileEntity(creator)
+    TowerDefenseCenterpoint::TowerDefenseCenterpoint(Context* context) : MobileEntity(context)
     {
         RegisterObject(TowerDefenseCenterpoint);
 

Modified: code/branches/core6/src/modules/towerdefense/TowerDefenseCenterpoint.h
===================================================================
--- code/branches/core6/src/modules/towerdefense/TowerDefenseCenterpoint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/TowerDefenseCenterpoint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
     class _TowerDefenseExport TowerDefenseCenterpoint : public MobileEntity
     {
         public:
-            TowerDefenseCenterpoint(BaseObject* creator);
+            TowerDefenseCenterpoint(Context* context);
             virtual ~TowerDefenseCenterpoint() {}
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/towerdefense/TowerDefenseController.cc
===================================================================
--- code/branches/core6/src/modules/towerdefense/TowerDefenseController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/TowerDefenseController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateFactory(TowerDefenseController);
 
-    TowerDefenseController::TowerDefenseController(BaseObject* creator) : WaypointController(creator)
+    TowerDefenseController::TowerDefenseController(Context* context) : WaypointController(context)
     {
         RegisterObject(TowerDefenseController);
 

Modified: code/branches/core6/src/modules/towerdefense/TowerDefenseController.h
===================================================================
--- code/branches/core6/src/modules/towerdefense/TowerDefenseController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/TowerDefenseController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _TowerDefenseExport TowerDefenseController : public WaypointController
     {
         public:
-            TowerDefenseController(BaseObject* creator);
+            TowerDefenseController(Context* context);
             virtual ~TowerDefenseController() {}
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/modules/towerdefense/TowerDefenseHUDController.cc
===================================================================
--- code/branches/core6/src/modules/towerdefense/TowerDefenseHUDController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/TowerDefenseHUDController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateFactory(TowerDefenseHUDController);
 
-    TowerDefenseHUDController::TowerDefenseHUDController(BaseObject* creator) : OverlayText(creator)
+    TowerDefenseHUDController::TowerDefenseHUDController(Context* context) : OverlayText(context)
     {
         RegisterObject(TowerDefenseHUDController);
     }

Modified: code/branches/core6/src/modules/towerdefense/TowerDefenseHUDController.h
===================================================================
--- code/branches/core6/src/modules/towerdefense/TowerDefenseHUDController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/towerdefense/TowerDefenseHUDController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
     class _TowerDefenseExport TowerDefenseHUDController : public OverlayText, public Tickable
     {
     public:
-        TowerDefenseHUDController(BaseObject* creator);
+        TowerDefenseHUDController(Context* context);
         virtual ~TowerDefenseHUDController();
 
         virtual void tick(float dt);

Modified: code/branches/core6/src/modules/weapons/MuzzleFlash.cc
===================================================================
--- code/branches/core6/src/modules/weapons/MuzzleFlash.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/MuzzleFlash.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
 {
     CreateFactory(MuzzleFlash);
 
-    MuzzleFlash::MuzzleFlash(BaseObject* creator) : Billboard(creator)
+    MuzzleFlash::MuzzleFlash(Context* context) : Billboard(context)
     {
         RegisterObject(MuzzleFlash);
         this->setScale(0.1f);

Modified: code/branches/core6/src/modules/weapons/MuzzleFlash.h
===================================================================
--- code/branches/core6/src/modules/weapons/MuzzleFlash.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/MuzzleFlash.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     class _WeaponsExport MuzzleFlash : public Billboard
     {
         public:
-            MuzzleFlash(BaseObject* creator);
+            MuzzleFlash(Context* context);
             virtual ~MuzzleFlash() {}
 
         private:

Modified: code/branches/core6/src/modules/weapons/RocketController.cc
===================================================================
--- code/branches/core6/src/modules/weapons/RocketController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/RocketController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,13 +44,13 @@
     @brief
         Constructor.
     */
-    RocketController::RocketController(BaseObject* creator) : Controller(creator)
+    RocketController::RocketController(Context* context) : Controller(context)
     {
         RegisterObject(RocketController);
 //        orxout() << "RocketController constructed" << endl;
 
         // Create a rocket for the controller.
-        this->rocket_ = new SimpleRocket(this);
+        this->rocket_ = new SimpleRocket(this->getContext());
         this->rocket_->setController(this);
         this->setControllableEntity(orxonox_cast<ControllableEntity*>(this->rocket_));
     }

Modified: code/branches/core6/src/modules/weapons/RocketController.h
===================================================================
--- code/branches/core6/src/modules/weapons/RocketController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/RocketController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
     class _WeaponsExport RocketController : public Controller, public Tickable
     {
         public:
-            RocketController(BaseObject* creator);
+            RocketController(Context* context);
             virtual ~RocketController();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/modules/weapons/munitions/FusionMunition.cc
===================================================================
--- code/branches/core6/src/modules/weapons/munitions/FusionMunition.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/munitions/FusionMunition.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(FusionMunition);
 
-    FusionMunition::FusionMunition(BaseObject* creator) : Munition(creator)
+    FusionMunition::FusionMunition(Context* context) : Munition(context)
     {
         RegisterObject(FusionMunition);
 

Modified: code/branches/core6/src/modules/weapons/munitions/FusionMunition.h
===================================================================
--- code/branches/core6/src/modules/weapons/munitions/FusionMunition.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/munitions/FusionMunition.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     class _WeaponsExport FusionMunition : public Munition
     {
         public:
-            FusionMunition(BaseObject* creator);
+            FusionMunition(Context* context);
             virtual ~FusionMunition() {}
     };
 }

Modified: code/branches/core6/src/modules/weapons/munitions/LaserMunition.cc
===================================================================
--- code/branches/core6/src/modules/weapons/munitions/LaserMunition.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/munitions/LaserMunition.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(LaserMunition);
 
-    LaserMunition::LaserMunition(BaseObject* creator) : ReplenishingMunition(creator)
+    LaserMunition::LaserMunition(Context* context) : ReplenishingMunition(context)
     {
         RegisterObject(LaserMunition);
 

Modified: code/branches/core6/src/modules/weapons/munitions/LaserMunition.h
===================================================================
--- code/branches/core6/src/modules/weapons/munitions/LaserMunition.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/munitions/LaserMunition.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     class _WeaponsExport LaserMunition : public ReplenishingMunition
     {
         public:
-            LaserMunition(BaseObject* creator);
+            LaserMunition(Context* context);
             virtual ~LaserMunition() {}
     };
 }

Modified: code/branches/core6/src/modules/weapons/munitions/ReplenishingMunition.cc
===================================================================
--- code/branches/core6/src/modules/weapons/munitions/ReplenishingMunition.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/munitions/ReplenishingMunition.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
 {
     CreateFactory(ReplenishingMunition);
 
-    ReplenishingMunition::ReplenishingMunition(BaseObject* creator) : Munition(creator)
+    ReplenishingMunition::ReplenishingMunition(Context* context) : Munition(context)
     {
         RegisterObject(ReplenishingMunition);
 

Modified: code/branches/core6/src/modules/weapons/munitions/ReplenishingMunition.h
===================================================================
--- code/branches/core6/src/modules/weapons/munitions/ReplenishingMunition.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/munitions/ReplenishingMunition.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
     class _WeaponsExport ReplenishingMunition : public Munition
     {
         public:
-            ReplenishingMunition(BaseObject* creator);
+            ReplenishingMunition(Context* context);
             virtual ~ReplenishingMunition() {}
 
         protected:

Modified: code/branches/core6/src/modules/weapons/munitions/RocketMunition.cc
===================================================================
--- code/branches/core6/src/modules/weapons/munitions/RocketMunition.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/munitions/RocketMunition.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(RocketMunition);
 
-    RocketMunition::RocketMunition(BaseObject* creator) : Munition(creator)
+    RocketMunition::RocketMunition(Context* context) : Munition(context)
     {
         RegisterObject(RocketMunition);
 

Modified: code/branches/core6/src/modules/weapons/munitions/RocketMunition.h
===================================================================
--- code/branches/core6/src/modules/weapons/munitions/RocketMunition.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/munitions/RocketMunition.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     class _WeaponsExport RocketMunition : public Munition
     {
         public:
-            RocketMunition(BaseObject* creator);
+            RocketMunition(Context* context);
             virtual ~RocketMunition() {}
     };
 }

Modified: code/branches/core6/src/modules/weapons/projectiles/BasicProjectile.cc
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/BasicProjectile.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/BasicProjectile.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -105,7 +105,7 @@
                 if (!victim || (victim && !victim->hasShield() && victim->getHealth() > 0.0f && (this->getDamage() > 0.0f || this->getHealthDamage() > 0.0f)))
                 {
                     {
-                        ParticleSpawner* effect = new ParticleSpawner(this->getShooter()->getCreator());
+                        ParticleSpawner* effect = new ParticleSpawner(this->getShooter()->getContext());
                         effect->setPosition(entity->getPosition());
                         effect->setOrientation(entity->getOrientation());
                         effect->setDestroyAfterLife(true);
@@ -114,7 +114,7 @@
                     }
                     // Second effect with same condition
                     {
-                        ParticleSpawner* effect = new ParticleSpawner(this->getShooter()->getCreator());
+                        ParticleSpawner* effect = new ParticleSpawner(this->getShooter()->getContext());
                         effect->setPosition(entity->getPosition());
                         effect->setOrientation(entity->getOrientation());
                         effect->setDestroyAfterLife(true);
@@ -126,7 +126,7 @@
                 // victim->isAlive() is not false until the next tick, so getHealth() > 0 is used instead
                 if (victim && victim->hasShield() && (this->getDamage() > 0.0f || this->getShieldDamage() > 0.0f) && victim->getHealth() > 0.0f)
                 {
-                    ParticleSpawner* effect = new ParticleSpawner(this->getShooter()->getCreator());
+                    ParticleSpawner* effect = new ParticleSpawner(this->getShooter()->getContext());
                     effect->setDestroyAfterLife(true);
                     effect->setSource("Orxonox/Shield");
                     effect->setLifetime(0.5f);

Modified: code/branches/core6/src/modules/weapons/projectiles/BillboardProjectile.cc
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/BillboardProjectile.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/BillboardProjectile.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
 {
     CreateFactory(BillboardProjectile);
 
-    BillboardProjectile::BillboardProjectile(BaseObject* creator) : Projectile(creator)
+    BillboardProjectile::BillboardProjectile(Context* context) : Projectile(context)
     {
         RegisterObject(BillboardProjectile);
 

Modified: code/branches/core6/src/modules/weapons/projectiles/BillboardProjectile.h
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/BillboardProjectile.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/BillboardProjectile.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     class _WeaponsExport BillboardProjectile : public Projectile
     {
         public:
-            BillboardProjectile(BaseObject* creator);
+            BillboardProjectile(Context* context);
             virtual ~BillboardProjectile();
 
             virtual void setColour(const ColourValue& colour);

Modified: code/branches/core6/src/modules/weapons/projectiles/LightningGunProjectile.cc
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/LightningGunProjectile.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/LightningGunProjectile.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
 {
     CreateFactory(LightningGunProjectile);
 
-    LightningGunProjectile::LightningGunProjectile(BaseObject* creator) : BillboardProjectile(creator)
+    LightningGunProjectile::LightningGunProjectile(Context* context) : BillboardProjectile(context)
     {
         RegisterObject(LightningGunProjectile);
 

Modified: code/branches/core6/src/modules/weapons/projectiles/LightningGunProjectile.h
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/LightningGunProjectile.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/LightningGunProjectile.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     class _WeaponsExport LightningGunProjectile : public BillboardProjectile
     {
         public:
-            LightningGunProjectile(BaseObject* creator);
+            LightningGunProjectile(Context* context);
             virtual ~LightningGunProjectile() {}
 
             virtual void setMaterial(const std::string& material);

Modified: code/branches/core6/src/modules/weapons/projectiles/ParticleProjectile.cc
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/ParticleProjectile.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/ParticleProjectile.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
 {
     CreateFactory(ParticleProjectile);
 
-    ParticleProjectile::ParticleProjectile(BaseObject* creator) : BillboardProjectile(creator)
+    ParticleProjectile::ParticleProjectile(Context* context) : BillboardProjectile(context)
     {
         RegisterObject(ParticleProjectile);
 

Modified: code/branches/core6/src/modules/weapons/projectiles/ParticleProjectile.h
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/ParticleProjectile.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/ParticleProjectile.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     class _WeaponsExport ParticleProjectile : public BillboardProjectile
     {
         public:
-            ParticleProjectile(BaseObject* creator);
+            ParticleProjectile(Context* context);
             virtual ~ParticleProjectile();
             virtual void changedVisibility();
 

Modified: code/branches/core6/src/modules/weapons/projectiles/Projectile.cc
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/Projectile.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/Projectile.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
 {
     CreateFactory(Projectile);
 
-    Projectile::Projectile(BaseObject* creator) : MovableEntity(creator), BasicProjectile()
+    Projectile::Projectile(Context* context) : MovableEntity(context), BasicProjectile()
     {
         RegisterObject(Projectile);
 
@@ -59,7 +59,7 @@
             this->setCollisionResponse(false);
             this->setCollisionType(Kinematic);
 
-            SphereCollisionShape* shape = new SphereCollisionShape(this);
+            SphereCollisionShape* shape = new SphereCollisionShape(this->getContext());
             shape->setRadius(20.0f);
             this->attachCollisionShape(shape);
 

Modified: code/branches/core6/src/modules/weapons/projectiles/Projectile.h
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/Projectile.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/Projectile.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -57,7 +57,7 @@
     class _WeaponsExport Projectile : public MovableEntity, public BasicProjectile
     {
         public:
-            Projectile(BaseObject* creator);
+            Projectile(Context* context);
             virtual ~Projectile();
 
             void setConfigValues();

Modified: code/branches/core6/src/modules/weapons/projectiles/Rocket.cc
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/Rocket.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/Rocket.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,10 +56,10 @@
     @brief
         Constructor. Registers the object and initializes some default values.
     */
-    Rocket::Rocket(BaseObject* creator)
-        : ControllableEntity(creator)
+    Rocket::Rocket(Context* context)
+        : ControllableEntity(context)
         , BasicProjectile()
-        , RadarViewable(creator, static_cast<WorldEntity*>(this))
+        , RadarViewable(this, static_cast<WorldEntity*>(this))
     {
         RegisterObject(Rocket);// Register the Rocket class to the core
 
@@ -72,13 +72,13 @@
             this->setVelocity(0,0,-100);
 
             // Create rocket model
-            Model* model = new Model(this);
+            Model* model = new Model(this->getContext());
             model->setMeshSource("rocket.mesh");
             model->scale(0.7f);
             this->attach(model);
 
             // Add effects.
-            ParticleEmitter* fire = new ParticleEmitter(this);
+            ParticleEmitter* fire = new ParticleEmitter(this->getContext());
             this->attach(fire);
             fire->setOrientation(this->getOrientation());
             fire->setSource("Orxonox/rocketfire");
@@ -88,7 +88,7 @@
             this->setCollisionType(Kinematic);
 
             // Add collision shape
-            ConeCollisionShape* collisionShape = new ConeCollisionShape(this);
+            ConeCollisionShape* collisionShape = new ConeCollisionShape(this->getContext());
             collisionShape->setRadius(3);
             collisionShape->setHeight(500);
             this->attachCollisionShape(collisionShape);
@@ -96,13 +96,13 @@
             this->destroyTimer_.setTimer(this->lifetime_, false, createExecutor(createFunctor(&BasicProjectile::destroyObject, this)));
 
             // Add sound
-            this->defSndWpnEngine_ = new WorldSound(this);
+            this->defSndWpnEngine_ = new WorldSound(this->getContext());
             this->defSndWpnEngine_->setLooping(true);
             this->defSndWpnEngine_->setSource("sounds/Rocket_engine.ogg");
             this->defSndWpnEngine_->setVolume(1.0f);
             this->attach(defSndWpnEngine_);
 
-            this->defSndWpnLaunch_ = new WorldSound(this);
+            this->defSndWpnLaunch_ = new WorldSound(this->getContext());
             this->defSndWpnLaunch_->setLooping(false);
             this->defSndWpnLaunch_->setSource("sounds/Rocket_launch.ogg");
             this->defSndWpnLaunch_->setVolume(1.0f);
@@ -115,7 +115,7 @@
         }
 
         // Add camera
-        CameraPosition* camPosition = new CameraPosition(this);
+        CameraPosition* camPosition = new CameraPosition(this->getContext());
         camPosition->setPosition(0,4,15);
         camPosition->setAllowMouseLook(true);
         this->addCameraPosition(camPosition);
@@ -225,13 +225,13 @@
         ParticleSpawner *effect1, *effect2;
         if(this->getShooter())
         {
-            effect1 = new ParticleSpawner(this->getShooter()->getCreator());
-            effect2 = new ParticleSpawner(this->getShooter()->getCreator());
+            effect1 = new ParticleSpawner(this->getShooter()->getContext());
+            effect2 = new ParticleSpawner(this->getShooter()->getContext());
         }
         else
         {
-            effect1 = new ParticleSpawner(static_cast<BaseObject*>(this->getScene().get()));
-            effect2 = new ParticleSpawner(static_cast<BaseObject*>(this->getScene().get()));
+            effect1 = new ParticleSpawner(this->getContext());
+            effect2 = new ParticleSpawner(this->getContext());
         }
 
         effect1->setPosition(this->getPosition());

Modified: code/branches/core6/src/modules/weapons/projectiles/Rocket.h
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/Rocket.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/Rocket.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -58,7 +58,7 @@
     class _WeaponsExport Rocket : public ControllableEntity, public BasicProjectile, public RadarViewable
     {
         public:
-            Rocket(BaseObject* creator);
+            Rocket(Context* context);
             virtual ~Rocket();
 
             virtual void tick(float dt); //!< Defines which actions the Rocket has to take in each tick.

Modified: code/branches/core6/src/modules/weapons/projectiles/SimpleRocket.cc
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/SimpleRocket.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/SimpleRocket.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -55,10 +55,10 @@
 
     const float SimpleRocket::FUEL_PERCENTAGE = 0.8f;
 
-    SimpleRocket::SimpleRocket(BaseObject* creator)
-        : ControllableEntity(creator)
+    SimpleRocket::SimpleRocket(Context* context)
+        : ControllableEntity(context)
         , BasicProjectile()
-        , RadarViewable(creator, static_cast<WorldEntity*>(this))
+        , RadarViewable(this, static_cast<WorldEntity*>(this))
     {
         RegisterObject(SimpleRocket);// Register the SimpleRocket class to the core
 
@@ -73,13 +73,13 @@
             this->fuel_ = true;
 
             // Create rocket model.
-            Model* model = new Model(this);
+            Model* model = new Model(this->getContext());
             model->setMeshSource("rocket.mesh");
             model->scale(0.7f);
             this->attach(model);
 
             // Add effects.
-            this->fire_ = new ParticleEmitter(this);
+            this->fire_ = new ParticleEmitter(this->getContext());
             this->attach(this->fire_);
 
             this->fire_->setOrientation(this->getOrientation());
@@ -90,7 +90,7 @@
 
             // Add collision shape.
             // TODO: fix the orientation and size of this collision shape to match the rocket
-            ConeCollisionShape* collisionShape = new ConeCollisionShape(this);
+            ConeCollisionShape* collisionShape = new ConeCollisionShape(this->getContext());
             collisionShape->setOrientation(this->getOrientation());
             collisionShape->setRadius(1.5f);
             collisionShape->setHeight(5);

Modified: code/branches/core6/src/modules/weapons/projectiles/SimpleRocket.h
===================================================================
--- code/branches/core6/src/modules/weapons/projectiles/SimpleRocket.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/projectiles/SimpleRocket.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -59,7 +59,7 @@
     class _WeaponsExport SimpleRocket : public ControllableEntity, public BasicProjectile, public RadarViewable
     {
         public:
-            SimpleRocket(BaseObject* creator);
+            SimpleRocket(Context* context);
             virtual ~SimpleRocket();
             virtual void tick(float dt);
 

Modified: code/branches/core6/src/modules/weapons/weaponmodes/EnergyDrink.cc
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/EnergyDrink.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/EnergyDrink.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
 {
     CreateFactory(EnergyDrink);
 
-    EnergyDrink::EnergyDrink(BaseObject* creator) : WeaponMode(creator)
+    EnergyDrink::EnergyDrink(Context* context) : WeaponMode(context)
     {
         RegisterObject(EnergyDrink);
 
@@ -100,8 +100,8 @@
     void EnergyDrink::shot()
     {
         // Create the projectile
-        Projectile* projectile = new Projectile(this);
-        Model* model = new Model(projectile);
+        Projectile* projectile = new Projectile(this->getContext());
+        Model* model = new Model(projectile->getContext());
         model->setMeshSource("can.mesh");
         model->setCastShadows(false);
         projectile->attach(model);
@@ -126,7 +126,7 @@
     */
     void EnergyDrink::muzzleflash()
     {
-        MuzzleFlash *muzzleFlash = new MuzzleFlash(this);
+        MuzzleFlash *muzzleFlash = new MuzzleFlash(this->getContext());
         this->getWeapon()->attach(muzzleFlash);
         muzzleFlash->setPosition(this->getMuzzleOffset());
         muzzleFlash->setMaterial(this->material_);

Modified: code/branches/core6/src/modules/weapons/weaponmodes/EnergyDrink.h
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/EnergyDrink.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/EnergyDrink.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -53,7 +53,7 @@
     class _WeaponsExport EnergyDrink : public WeaponMode
     {
         public:
-            EnergyDrink(BaseObject* creator);
+            EnergyDrink(Context* context);
             virtual ~EnergyDrink() {}
 
             virtual void fire();

Modified: code/branches/core6/src/modules/weapons/weaponmodes/FusionFire.cc
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/FusionFire.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/FusionFire.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
 {
     CreateFactory(FusionFire);
 
-    FusionFire::FusionFire(BaseObject* creator) : WeaponMode(creator)
+    FusionFire::FusionFire(Context* context) : WeaponMode(context)
     {
         RegisterObject(FusionFire);
 
@@ -65,7 +65,7 @@
     */
     void FusionFire::fire()
     {
-        BillboardProjectile* projectile = new BillboardProjectile(this);
+        BillboardProjectile* projectile = new BillboardProjectile(this->getContext());
 
         projectile->setOrientation(this->getMuzzleOrientation());
         projectile->setPosition(this->getMuzzlePosition());

Modified: code/branches/core6/src/modules/weapons/weaponmodes/FusionFire.h
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/FusionFire.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/FusionFire.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     class _WeaponsExport FusionFire : public WeaponMode
     {
         public:
-            FusionFire(BaseObject* creator);
+            FusionFire(Context* context);
             virtual ~FusionFire() {}
 
             virtual void fire();

Modified: code/branches/core6/src/modules/weapons/weaponmodes/HsW01.cc
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/HsW01.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/HsW01.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
 {
     CreateFactory(HsW01);
 
-    HsW01::HsW01(BaseObject* creator) : WeaponMode(creator)
+    HsW01::HsW01(Context* context) : WeaponMode(context)
     {
         RegisterObject(HsW01);
 
@@ -110,8 +110,8 @@
         assert( this->getWeapon() && this->getWeapon()->getWeaponPack() && this->getWeapon()->getWeaponPack()->getWeaponSystem() && this->getWeapon()->getWeaponPack()->getWeaponSystem()->getPawn() );
 
         // Create the projectile.
-        Projectile* projectile = new Projectile(this);
-        Model* model = new Model(projectile);
+        Projectile* projectile = new Projectile(this->getContext());
+        Model* model = new Model(projectile->getContext());
         model->setMeshSource(mesh_);
         model->setCastShadows(false);
         projectile->attach(model);
@@ -137,7 +137,7 @@
     */
     void HsW01::muzzleflash()
     {
-        MuzzleFlash *muzzleFlash = new MuzzleFlash(this);
+        MuzzleFlash *muzzleFlash = new MuzzleFlash(this->getContext());
         this->getWeapon()->attach(muzzleFlash);
         muzzleFlash->setPosition(this->getMuzzleOffset());
         muzzleFlash->setMaterial(this->material_);

Modified: code/branches/core6/src/modules/weapons/weaponmodes/HsW01.h
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/HsW01.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/HsW01.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
     class _WeaponsExport HsW01 : public WeaponMode
     {
         public:
-            HsW01(BaseObject* creator);
+            HsW01(Context* context);
             virtual ~HsW01();
 
             virtual void fire();

Modified: code/branches/core6/src/modules/weapons/weaponmodes/LaserFire.cc
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/LaserFire.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/LaserFire.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
 {
     CreateFactory(LaserFire);
 
-    LaserFire::LaserFire(BaseObject* creator) : WeaponMode(creator)
+    LaserFire::LaserFire(Context* context) : WeaponMode(context)
     {
         RegisterObject(LaserFire);
 
@@ -63,7 +63,7 @@
     */
     void LaserFire::fire()
     {
-        ParticleProjectile* projectile = new ParticleProjectile(this);
+        ParticleProjectile* projectile = new ParticleProjectile(this->getContext());
 
         projectile->setOrientation(this->getMuzzleOrientation());
         projectile->setPosition(this->getMuzzlePosition());

Modified: code/branches/core6/src/modules/weapons/weaponmodes/LaserFire.h
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/LaserFire.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/LaserFire.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     class _WeaponsExport LaserFire : public WeaponMode
     {
         public:
-            LaserFire(BaseObject* creator);
+            LaserFire(Context* context);
             virtual ~LaserFire() {}
 
             virtual void fire();

Modified: code/branches/core6/src/modules/weapons/weaponmodes/LightningGun.cc
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/LightningGun.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/LightningGun.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
 {
     CreateFactory(LightningGun);
 
-    LightningGun::LightningGun(BaseObject* creator) : WeaponMode(creator)
+    LightningGun::LightningGun(Context* context) : WeaponMode(context)
     {
         RegisterObject(LightningGun);
 
@@ -67,7 +67,7 @@
     */
     void LightningGun::fire()
     {
-        LightningGunProjectile* projectile = new LightningGunProjectile(this);
+        LightningGunProjectile* projectile = new LightningGunProjectile(this->getContext());
         projectile->setMaterial("Flares/LightningBall_");
 
         this->computeMuzzleParameters(this->getWeapon()->getWeaponPack()->getWeaponSystem()->getPawn()->getAimPosition());

Modified: code/branches/core6/src/modules/weapons/weaponmodes/LightningGun.h
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/LightningGun.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/LightningGun.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     class _WeaponsExport LightningGun : public WeaponMode
     {
         public:
-            LightningGun(BaseObject* creator);
+            LightningGun(Context* context);
             virtual ~LightningGun();
 
             virtual void fire();

Modified: code/branches/core6/src/modules/weapons/weaponmodes/RocketFire.cc
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/RocketFire.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/RocketFire.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
 {
     CreateFactory(RocketFire);
 
-    RocketFire::RocketFire(BaseObject* creator) : WeaponMode(creator)
+    RocketFire::RocketFire(Context* context) : WeaponMode(context)
     {
         RegisterObject(RocketFire);
 
@@ -70,7 +70,7 @@
     */
     void RocketFire::fire()
     {
-        Rocket* rocket = new Rocket(this);
+        Rocket* rocket = new Rocket(this->getContext());
 
         this->computeMuzzleParameters(this->getWeapon()->getWeaponPack()->getWeaponSystem()->getPawn()->getAimPosition());
         rocket->setOrientation(this->getMuzzleOrientation());

Modified: code/branches/core6/src/modules/weapons/weaponmodes/RocketFire.h
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/RocketFire.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/RocketFire.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,7 +50,7 @@
     class _WeaponsExport RocketFire : public WeaponMode
     {
         public:
-            RocketFire(BaseObject* creator);
+            RocketFire(Context* context);
             virtual ~RocketFire();
 
             virtual void fire();

Modified: code/branches/core6/src/modules/weapons/weaponmodes/SimpleRocketFire.cc
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/SimpleRocketFire.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/SimpleRocketFire.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
 
     CreateFactory(SimpleRocketFire);
 
-    SimpleRocketFire::SimpleRocketFire(BaseObject* creator) : WeaponMode(creator)
+    SimpleRocketFire::SimpleRocketFire(Context* context) : WeaponMode(context)
     {
         RegisterObject(SimpleRocketFire);
 
@@ -75,7 +75,7 @@
     */
     void SimpleRocketFire::fire()
     {
-        RocketController* controller = new RocketController(this);
+        RocketController* controller = new RocketController(this->getContext());
         SimpleRocket* rocket = controller->getRocket();
         this->computeMuzzleParameters(this->getWeapon()->getWeaponPack()->getWeaponSystem()->getPawn()->getAimPosition());
         rocket->setOrientation(this->getWeapon()->getWeaponPack()->getWeaponSystem()->getPawn()->getWorldOrientation());

Modified: code/branches/core6/src/modules/weapons/weaponmodes/SimpleRocketFire.h
===================================================================
--- code/branches/core6/src/modules/weapons/weaponmodes/SimpleRocketFire.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/modules/weapons/weaponmodes/SimpleRocketFire.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -49,7 +49,7 @@
     class _WeaponsExport SimpleRocketFire : public WeaponMode
     {
         public:
-            SimpleRocketFire(BaseObject* creator);
+            SimpleRocketFire(Context* context);
             virtual ~SimpleRocketFire();
             void deactivateFire();
             virtual void fire();

Modified: code/branches/core6/src/orxonox/Level.cc
===================================================================
--- code/branches/core6/src/orxonox/Level.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/Level.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
 {
     CreateFactory(Level);
 
-    Level::Level(BaseObject* creator) : BaseObject(creator), Synchronisable(creator)
+    Level::Level(Context* context) : BaseObject(context), Synchronisable(context), Context(context)
     {
         RegisterObject(Level);
 

Modified: code/branches/core6/src/orxonox/Level.h
===================================================================
--- code/branches/core6/src/orxonox/Level.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/Level.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,10 +40,10 @@
 
 namespace orxonox
 {
-    class _OrxonoxExport Level : public BaseObject, public Synchronisable
+    class _OrxonoxExport Level : public BaseObject, public Synchronisable, public Context
     {
         public:
-            Level(BaseObject* creator);
+            Level(Context* context);
             virtual ~Level();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/LevelInfo.cc
===================================================================
--- code/branches/core6/src/orxonox/LevelInfo.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/LevelInfo.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -249,7 +249,7 @@
     @param creator
         The creator of this object.
     */
-    LevelInfo::LevelInfo(BaseObject* creator) : BaseObject(creator)
+    LevelInfo::LevelInfo(Context* context) : BaseObject(context)
     {
         RegisterObject(LevelInfo);
 

Modified: code/branches/core6/src/orxonox/LevelInfo.h
===================================================================
--- code/branches/core6/src/orxonox/LevelInfo.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/LevelInfo.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -203,7 +203,7 @@
     class _OrxonoxExport LevelInfo : public BaseObject, public LevelInfoItem
     {
         public:
-            LevelInfo(BaseObject* creator);
+            LevelInfo(Context* context);
             virtual ~LevelInfo();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Creates a LevelInfo object through XML.

Modified: code/branches/core6/src/orxonox/Scene.cc
===================================================================
--- code/branches/core6/src/orxonox/Scene.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/Scene.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
 {
     CreateFactory(Scene);
 
-    Scene::Scene(BaseObject* creator) : BaseObject(creator), Synchronisable(creator)
+    Scene::Scene(Context* context) : BaseObject(context), Synchronisable(context), Context(context)
     {
         RegisterObject(Scene);
 

Modified: code/branches/core6/src/orxonox/Scene.h
===================================================================
--- code/branches/core6/src/orxonox/Scene.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/Scene.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,10 +44,10 @@
 
 namespace orxonox
 {
-    class _OrxonoxExport Scene : public BaseObject, public Synchronisable, public Tickable
+    class _OrxonoxExport Scene : public BaseObject, public Synchronisable, public Tickable, public Context
     {
         public:
-            Scene(BaseObject* creator);
+            Scene(Context* context);
             virtual ~Scene();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/Test.cc
===================================================================
--- code/branches/core6/src/orxonox/Test.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/Test.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -55,7 +55,7 @@
 
     Test* Test::instance_ = 0;
 
-    Test::Test(BaseObject* creator) : BaseObject(creator), Synchronisable(creator)
+    Test::Test(Context* context) : BaseObject(context), Synchronisable(context)
     {
         assert(instance_==0);
         instance_=this;

Modified: code/branches/core6/src/orxonox/Test.h
===================================================================
--- code/branches/core6/src/orxonox/Test.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/Test.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
   class _OrxonoxExport Test: public BaseObject, public Synchronisable, public Tickable
   {
     public:
-      Test(BaseObject* creator);
+      Test(Context* context);
       virtual ~Test();
 
       void setConfigValues();

Modified: code/branches/core6/src/orxonox/chat/ChatHistory.cc
===================================================================
--- code/branches/core6/src/orxonox/chat/ChatHistory.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/chat/ChatHistory.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,6 @@
 
   /* constructor */
 #ifndef CHATTEST
-  //ChatHistory::ChatHistory( BaseObject* creator ) : BaseObject(creator)
   ChatHistory::ChatHistory()
 #else
   ChatHistory::ChatHistory()

Modified: code/branches/core6/src/orxonox/collisionshapes/CollisionShape.cc
===================================================================
--- code/branches/core6/src/orxonox/collisionshapes/CollisionShape.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/collisionshapes/CollisionShape.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,9 +48,9 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    CollisionShape::CollisionShape(BaseObject* creator)
-        : BaseObject(creator)
-        , Synchronisable(creator)
+    CollisionShape::CollisionShape(Context* context)
+        : BaseObject(context)
+        , Synchronisable(context)
     {
         RegisterObject(CollisionShape);
 

Modified: code/branches/core6/src/orxonox/collisionshapes/CollisionShape.h
===================================================================
--- code/branches/core6/src/orxonox/collisionshapes/CollisionShape.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/collisionshapes/CollisionShape.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -57,7 +57,7 @@
     class _OrxonoxExport CollisionShape : public BaseObject, public Synchronisable
     {
         public:
-            CollisionShape(BaseObject* creator);
+            CollisionShape(Context* context);
             virtual ~CollisionShape();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/collisionshapes/CompoundCollisionShape.cc
===================================================================
--- code/branches/core6/src/orxonox/collisionshapes/CompoundCollisionShape.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/collisionshapes/CompoundCollisionShape.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    CompoundCollisionShape::CompoundCollisionShape(BaseObject* creator) : CollisionShape(creator)
+    CompoundCollisionShape::CompoundCollisionShape(Context* context) : CollisionShape(context)
     {
         RegisterObject(CompoundCollisionShape);
 

Modified: code/branches/core6/src/orxonox/collisionshapes/CompoundCollisionShape.h
===================================================================
--- code/branches/core6/src/orxonox/collisionshapes/CompoundCollisionShape.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/collisionshapes/CompoundCollisionShape.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -57,7 +57,7 @@
     class _OrxonoxExport CompoundCollisionShape : public CollisionShape
     {
         public:
-            CompoundCollisionShape(BaseObject* creator);
+            CompoundCollisionShape(Context* context);
             virtual ~CompoundCollisionShape();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/collisionshapes/WorldEntityCollisionShape.cc
===================================================================
--- code/branches/core6/src/orxonox/collisionshapes/WorldEntityCollisionShape.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/collisionshapes/WorldEntityCollisionShape.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 
 namespace orxonox
 {
-    WorldEntityCollisionShape::WorldEntityCollisionShape(BaseObject* creator) : CompoundCollisionShape(creator)
+    WorldEntityCollisionShape::WorldEntityCollisionShape(Context* context) : CompoundCollisionShape(context)
     {
         RegisterObject(WorldEntityCollisionShape);
 

Modified: code/branches/core6/src/orxonox/collisionshapes/WorldEntityCollisionShape.h
===================================================================
--- code/branches/core6/src/orxonox/collisionshapes/WorldEntityCollisionShape.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/collisionshapes/WorldEntityCollisionShape.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
     class _OrxonoxExport WorldEntityCollisionShape : public CompoundCollisionShape
     {
         public:
-            WorldEntityCollisionShape(BaseObject* creator);
+            WorldEntityCollisionShape(Context* context);
             virtual ~WorldEntityCollisionShape();
 
             inline void setWorldEntityOwner(WorldEntity* worldEntityOwner)

Modified: code/branches/core6/src/orxonox/controllers/AIController.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/AIController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/AIController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
 
     CreateFactory(AIController);
 
-    AIController::AIController(BaseObject* creator) : ArtificialController(creator)
+    AIController::AIController(Context* context) : ArtificialController(context)
     {
         RegisterObject(AIController);
 

Modified: code/branches/core6/src/orxonox/controllers/AIController.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/AIController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/AIController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport AIController : public ArtificialController, public Tickable
     {
         public:
-            AIController(BaseObject* creator);
+            AIController(Context* context);
             virtual ~AIController();
 
             virtual void tick(float dt); //<! Carrying out the targets set in action().

Modified: code/branches/core6/src/orxonox/controllers/ArtificialController.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/ArtificialController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/ArtificialController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
 {
     SetConsoleCommand("ArtificialController", "setbotlevel",      &ArtificialController::setAllBotLevel);
 
-    ArtificialController::ArtificialController(BaseObject* creator) : FormationController(creator)
+    ArtificialController::ArtificialController(Context* context) : FormationController(context)
     {
         RegisterObject(ArtificialController);
 

Modified: code/branches/core6/src/orxonox/controllers/ArtificialController.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/ArtificialController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/ArtificialController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
     class _OrxonoxExport ArtificialController : public FormationController
     {
         public:
-            ArtificialController(BaseObject* creator);
+            ArtificialController(Context* context);
             virtual ~ArtificialController();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/controllers/Controller.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/Controller.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/Controller.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -34,7 +34,7 @@
 {
     CreateUnloadableFactory(Controller);
 
-    Controller::Controller(BaseObject* creator) : BaseObject(creator)
+    Controller::Controller(Context* context) : BaseObject(context)
     {
         RegisterObject(Controller);
 

Modified: code/branches/core6/src/orxonox/controllers/Controller.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/Controller.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/Controller.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
         friend class ControllableEntity;
 
         public:
-            Controller(BaseObject* creator);
+            Controller(Context* context);
             virtual ~Controller();
 
             inline void setPlayer(PlayerInfo* player)

Modified: code/branches/core6/src/orxonox/controllers/DroneController.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/DroneController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/DroneController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
 
     const float DroneController::ACTION_INTERVAL = 1.0f;
 
-    DroneController::DroneController(BaseObject* creator) : ArtificialController(creator)
+    DroneController::DroneController(Context* context) : ArtificialController(context)
     {
         RegisterObject(DroneController);
 

Modified: code/branches/core6/src/orxonox/controllers/DroneController.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/DroneController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/DroneController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -49,7 +49,7 @@
     class _OrxonoxExport DroneController : public ArtificialController, public Tickable
     {
         public:
-            DroneController(BaseObject* creator);
+            DroneController(Context* context);
             virtual ~DroneController();
 
             virtual void tick(float dt); //!< The controlling happens here. This method defines what the controller has to do each tick.

Modified: code/branches/core6/src/orxonox/controllers/FormationController.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/FormationController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/FormationController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -68,7 +68,7 @@
     static const float SPEED_FREE = 0.8f;
     static const float ROTATEFACTOR_FREE = 0.8f;
 
-    FormationController::FormationController(BaseObject* creator) : Controller(creator)
+    FormationController::FormationController(Context* context) : Controller(context)
     {
         RegisterObject(FormationController);
 

Modified: code/branches/core6/src/orxonox/controllers/FormationController.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/FormationController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/FormationController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
   {
 
       public:
-      FormationController(BaseObject* creator);
+      FormationController(Context* context);
 
       virtual ~FormationController();
 

Modified: code/branches/core6/src/orxonox/controllers/HumanController.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/HumanController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/HumanController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -70,7 +70,7 @@
     HumanController* HumanController::localController_s = 0;
     /*static*/ const float HumanController::BOOSTING_TIME = 0.1f;
 
-    HumanController::HumanController(BaseObject* creator) : FormationController(creator)
+    HumanController::HumanController(Context* context) : FormationController(context)
     {
         RegisterObject(HumanController);
 

Modified: code/branches/core6/src/orxonox/controllers/HumanController.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/HumanController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/HumanController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -43,7 +43,7 @@
         : public FormationController, public Tickable
     { // tolua_export
         public:
-            HumanController(BaseObject* creator);
+            HumanController(Context* context);
             virtual ~HumanController();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/orxonox/controllers/NewHumanController.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/NewHumanController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/NewHumanController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -59,8 +59,8 @@
 
     NewHumanController* NewHumanController::localController_s = 0;
 
-    NewHumanController::NewHumanController(BaseObject* creator)
-        : HumanController(creator)
+    NewHumanController::NewHumanController(Context* context)
+        : HumanController(context)
         , crossHairOverlay_(NULL)
         , centerOverlay_(NULL)
         , damageOverlayTop_(NULL)
@@ -97,13 +97,13 @@
 
         if (GameMode::showsGraphics())
         {
-            crossHairOverlay_ = new OrxonoxOverlay(this);
+            crossHairOverlay_ = new OrxonoxOverlay(this->getContext());
             crossHairOverlay_->setBackgroundMaterial("Orxonox/Crosshair3");
             crossHairOverlay_->setSize(Vector2(overlaySize_, overlaySize_));
             crossHairOverlay_->hide();
             //crossHairOverlay_->setAspectCorrection(true); not working
 
-            centerOverlay_ = new OrxonoxOverlay(this);
+            centerOverlay_ = new OrxonoxOverlay(this->getContext());
             centerOverlay_->setBackgroundMaterial("Orxonox/CenterOverlay");
             centerOverlay_->setSize(Vector2(overlaySize_ * 2.5f, overlaySize_ * 2.5f));
             centerOverlay_->setPosition(Vector2(0.5f - overlaySize_*2.5f/2.0f, 0.5f - overlaySize_*2.5f/2.0f));
@@ -111,25 +111,25 @@
 
             if (showDamageOverlay_)
             {
-                damageOverlayTop_ = new OrxonoxOverlay(this);
+                damageOverlayTop_ = new OrxonoxOverlay(this->getContext());
                 damageOverlayTop_->setBackgroundMaterial("Orxonox/DamageOverlayTop");
                 damageOverlayTop_->setSize(Vector2(overlaySize_ * 2.5f, overlaySize_ * 2.5f));
                 damageOverlayTop_->setPosition(Vector2(0.5f - overlaySize_*2.5f/2.0f, 0.5f - overlaySize_*2.5f/2.0f));
                 damageOverlayTop_->hide();
 
-                damageOverlayRight_ = new OrxonoxOverlay(this);
+                damageOverlayRight_ = new OrxonoxOverlay(this->getContext());
                 damageOverlayRight_->setBackgroundMaterial("Orxonox/DamageOverlayRight");
                 damageOverlayRight_->setSize(Vector2(overlaySize_ * 2.5f, overlaySize_ * 2.5f));
                 damageOverlayRight_->setPosition(Vector2(0.5f - overlaySize_*2.5f/2.0f, 0.5f - overlaySize_*2.5f/2.0f));
                 damageOverlayRight_->hide();
 
-                damageOverlayBottom_ = new OrxonoxOverlay(this);
+                damageOverlayBottom_ = new OrxonoxOverlay(this->getContext());
                 damageOverlayBottom_->setBackgroundMaterial("Orxonox/DamageOverlayBottom");
                 damageOverlayBottom_->setSize(Vector2(overlaySize_ * 2.5f, overlaySize_ * 2.5f));
                 damageOverlayBottom_->setPosition(Vector2(0.5f - overlaySize_*2.5f/2.0f, 0.5f - overlaySize_*2.5f/2.0f));
                 damageOverlayBottom_->hide();
 
-                damageOverlayLeft_ = new OrxonoxOverlay(this);
+                damageOverlayLeft_ = new OrxonoxOverlay(this->getContext());
                 damageOverlayLeft_->setBackgroundMaterial("Orxonox/DamageOverlayLeft");
                 damageOverlayLeft_->setSize(Vector2(overlaySize_ * 2.5f, overlaySize_ * 2.5f));
                 damageOverlayLeft_->setPosition(Vector2(0.5f - overlaySize_*2.5f/2.0f, 0.5f - overlaySize_*2.5f/2.0f));
@@ -138,28 +138,28 @@
 
             if (showArrows_)
             {
-                arrowsOverlay1_ = new OrxonoxOverlay(this);
+                arrowsOverlay1_ = new OrxonoxOverlay(this->getContext());
                 arrowsOverlay1_->setBackgroundMaterial("Orxonox/DirectionArrows1");
                 arrowsOverlay1_->setSize(Vector2(0.02727f, 0.36f * arrowsSize_));
                 arrowsOverlay1_->setPickPoint(Vector2(0.5f, 0.5f));
                 arrowsOverlay1_->setPosition(Vector2(0.5f, 0.5f));
                 arrowsOverlay1_->hide();
 
-                arrowsOverlay2_ = new OrxonoxOverlay(this);
+                arrowsOverlay2_ = new OrxonoxOverlay(this->getContext());
                 arrowsOverlay2_->setBackgroundMaterial("Orxonox/DirectionArrows2");
                 arrowsOverlay2_->setSize(Vector2(0.02727f, 0.59f * arrowsSize_));
                 arrowsOverlay2_->setPickPoint(Vector2(0.5f, 0.5f));
                 arrowsOverlay2_->setPosition(Vector2(0.5f, 0.5f));
                 arrowsOverlay2_->hide();
 
-                arrowsOverlay3_ = new OrxonoxOverlay(this);
+                arrowsOverlay3_ = new OrxonoxOverlay(this->getContext());
                 arrowsOverlay3_->setBackgroundMaterial("Orxonox/DirectionArrows3");
                 arrowsOverlay3_->setSize(Vector2(0.02727f, 0.77f * arrowsSize_));
                 arrowsOverlay3_->setPickPoint(Vector2(0.5f, 0.5f));
                 arrowsOverlay3_->setPosition(Vector2(0.5f, 0.5f));
                 arrowsOverlay3_->hide();
 
-                arrowsOverlay4_ = new OrxonoxOverlay(this);
+                arrowsOverlay4_ = new OrxonoxOverlay(this->getContext());
                 arrowsOverlay4_->setBackgroundMaterial("Orxonox/DirectionArrows4");
                 arrowsOverlay4_->setSize(Vector2(0.02727f, arrowsSize_));
                 arrowsOverlay4_->setPickPoint(Vector2(0.5f, 0.5f));

Modified: code/branches/core6/src/orxonox/controllers/NewHumanController.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/NewHumanController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/NewHumanController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
     class _OrxonoxExport NewHumanController : public HumanController
     {
         public:
-            NewHumanController(BaseObject* creator);
+            NewHumanController(Context* context);
             virtual ~NewHumanController();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/orxonox/controllers/ScriptController.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/ScriptController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/ScriptController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -33,7 +33,7 @@
 {
     CreateFactory(ScriptController);
 
-    ScriptController::ScriptController(BaseObject* creator) : ArtificialController(creator)
+    ScriptController::ScriptController(Context* context) : ArtificialController(context)
     {
         RegisterObject(ScriptController);
     }

Modified: code/branches/core6/src/orxonox/controllers/ScriptController.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/ScriptController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/ScriptController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
     class _OrxonoxExport ScriptController : public ArtificialController
     {
         public:
-            ScriptController(BaseObject* creator);
+            ScriptController(Context* context);
             virtual ~ScriptController() { }
 
         private:

Modified: code/branches/core6/src/orxonox/controllers/WaypointController.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/WaypointController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/WaypointController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(WaypointController);
 
-    WaypointController::WaypointController(BaseObject* creator) : ArtificialController(creator)
+    WaypointController::WaypointController(Context* context) : ArtificialController(context)
     {
         RegisterObject(WaypointController);
         this->setAccuracy(100);

Modified: code/branches/core6/src/orxonox/controllers/WaypointController.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/WaypointController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/WaypointController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport WaypointController : public ArtificialController, public Tickable
     {
         public:
-            WaypointController(BaseObject* creator);
+            WaypointController(Context* context);
             virtual ~WaypointController();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/orxonox/controllers/WaypointPatrolController.cc
===================================================================
--- code/branches/core6/src/orxonox/controllers/WaypointPatrolController.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/WaypointPatrolController.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateFactory(WaypointPatrolController);
 
-    WaypointPatrolController::WaypointPatrolController(BaseObject* creator) : WaypointController(creator)
+    WaypointPatrolController::WaypointPatrolController(Context* context) : WaypointController(context)
     {
         RegisterObject(WaypointPatrolController);
 

Modified: code/branches/core6/src/orxonox/controllers/WaypointPatrolController.h
===================================================================
--- code/branches/core6/src/orxonox/controllers/WaypointPatrolController.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/controllers/WaypointPatrolController.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport WaypointPatrolController : public WaypointController
     {
         public:
-            WaypointPatrolController(BaseObject* creator);
+            WaypointPatrolController(Context* context);
             virtual ~WaypointPatrolController() {}
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/gametypes/Asteroids.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Asteroids.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Asteroids.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateUnloadableFactory(Asteroids);
 
-    Asteroids::Asteroids(BaseObject* creator) : Gametype(creator)
+    Asteroids::Asteroids(Context* context) : Gametype(context)
     {
         RegisterObject(Asteroids);
         this->firstCheckpointReached_ = false;

Modified: code/branches/core6/src/orxonox/gametypes/Asteroids.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Asteroids.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Asteroids.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
     class _OrxonoxExport Asteroids : public Gametype
     {
         public:
-            Asteroids(BaseObject* creator);
+            Asteroids(Context* context);
             virtual ~Asteroids() {}
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/orxonox/gametypes/Deathmatch.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Deathmatch.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Deathmatch.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateUnloadableFactory(Deathmatch);
 
-    Deathmatch::Deathmatch(BaseObject* creator) : Gametype(creator)
+    Deathmatch::Deathmatch(Context* context) : Gametype(context)
     {
         RegisterObject(Deathmatch);
     }

Modified: code/branches/core6/src/orxonox/gametypes/Deathmatch.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Deathmatch.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Deathmatch.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
     class _OrxonoxExport Deathmatch : public Gametype
     {
         public:
-            Deathmatch(BaseObject* creator);
+            Deathmatch(Context* context);
             virtual ~Deathmatch() {}
 
             virtual void start();

Modified: code/branches/core6/src/orxonox/gametypes/Dynamicmatch.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Dynamicmatch.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Dynamicmatch.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -63,7 +63,7 @@
 {
     CreateUnloadableFactory(Dynamicmatch);
 
-    Dynamicmatch::Dynamicmatch(BaseObject* creator) : Gametype(creator)
+    Dynamicmatch::Dynamicmatch(Context* context) : Gametype(context)
     {
         RegisterObject(Dynamicmatch);
         this->gameTime_ = 180;

Modified: code/branches/core6/src/orxonox/gametypes/Dynamicmatch.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Dynamicmatch.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Dynamicmatch.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -43,7 +43,7 @@
     class _OrxonoxExport Dynamicmatch : public Gametype
     {
         public:
-            Dynamicmatch(BaseObject* creator);
+            Dynamicmatch(Context* context);
             virtual ~Dynamicmatch() {}
 
             bool notEnoughPigs;

Modified: code/branches/core6/src/orxonox/gametypes/Gametype.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Gametype.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Gametype.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,11 +48,11 @@
 {
     CreateUnloadableFactory(Gametype);
 
-    Gametype::Gametype(BaseObject* creator) : BaseObject(creator)
+    Gametype::Gametype(Context* context) : BaseObject(context)
     {
         RegisterObject(Gametype);
 
-        this->gtinfo_ = new GametypeInfo(creator);
+        this->gtinfo_ = new GametypeInfo(context);
 
         this->setGametype(SmartPtr<Gametype>(this, false));
 
@@ -73,7 +73,7 @@
         // load the corresponding score board
         if (GameMode::showsGraphics() && !this->scoreboardTemplate_.empty())
         {
-            this->scoreboard_ = new OverlayGroup(this);
+            this->scoreboard_ = new OverlayGroup(context);
             this->scoreboard_->addTemplate(this->scoreboardTemplate_);
             this->scoreboard_->setGametype(this);
         }
@@ -159,7 +159,7 @@
             {
                 ControllableEntity* oldentity = it->first->getControllableEntity();
 
-                ControllableEntity* entity = this->defaultControllableEntity_.fabricate(oldentity);
+                ControllableEntity* entity = this->defaultControllableEntity_.fabricate(oldentity->getContext());
                 if (oldentity->getCamera())
                 {
                     entity->setPosition(oldentity->getCamera()->getWorldPosition());
@@ -282,7 +282,7 @@
                 if(victim->getPlayer()->isHumanPlayer())
                     this->gtinfo_->pawnKilled(victim->getPlayer());
 
-                ControllableEntity* entity = this->defaultControllableEntity_.fabricate(victim->getCreator());
+                ControllableEntity* entity = this->defaultControllableEntity_.fabricate(victim->getContext());
                 if (victim->getCamera())
                 {
                     entity->setPosition(victim->getCamera()->getWorldPosition());
@@ -457,7 +457,7 @@
         if (spawn)
         {
             // force spawn at spawnpoint with default pawn
-            ControllableEntity* entity = this->defaultControllableEntity_.fabricate(spawn);
+            ControllableEntity* entity = this->defaultControllableEntity_.fabricate(spawn->getContext());
             spawn->spawn(entity);
             player->startControl(entity);
         }
@@ -471,7 +471,7 @@
     void Gametype::addBots(unsigned int amount)
     {
         for (unsigned int i = 0; i < amount; ++i)
-            this->botclass_.fabricate(this);
+            this->botclass_.fabricate(this->getContext());
     }
 
     void Gametype::killBots(unsigned int amount)

Modified: code/branches/core6/src/orxonox/gametypes/Gametype.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Gametype.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Gametype.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -66,7 +66,7 @@
         friend class PlayerInfo;
 
         public:
-            Gametype(BaseObject* creator);
+            Gametype(Context* context);
             virtual ~Gametype();
 
             void setConfigValues();

Modified: code/branches/core6/src/orxonox/gametypes/LastManStanding.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/LastManStanding.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/LastManStanding.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateUnloadableFactory(LastManStanding);
 
-    LastManStanding::LastManStanding(BaseObject* creator) : Deathmatch(creator)
+    LastManStanding::LastManStanding(Context* context) : Deathmatch(context)
     {
         RegisterObject(LastManStanding);
         this->bForceSpawn_=true;

Modified: code/branches/core6/src/orxonox/gametypes/LastManStanding.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/LastManStanding.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/LastManStanding.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -64,7 +64,7 @@
             virtual int getMinLives(); //!< Returns minimum of each player's lives; players with 0 lives are skipped; 
 
         public:
-            LastManStanding(BaseObject* creator); //!< Default Constructor.
+            LastManStanding(Context* context); //!< Default Constructor.
             virtual ~LastManStanding() {} //!< Default Destructor.
             void setConfigValues(); //!< Makes values configurable.
 

Modified: code/branches/core6/src/orxonox/gametypes/LastTeamStanding.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/LastTeamStanding.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/LastTeamStanding.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateUnloadableFactory(LastTeamStanding);
 
-    LastTeamStanding::LastTeamStanding(BaseObject* creator) : TeamDeathmatch(creator)
+    LastTeamStanding::LastTeamStanding(Context* context) : TeamDeathmatch(context)
     {
         RegisterObject(LastTeamStanding);
         this->bForceSpawn_ = true;

Modified: code/branches/core6/src/orxonox/gametypes/LastTeamStanding.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/LastTeamStanding.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/LastTeamStanding.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -70,7 +70,7 @@
             virtual int getMinLives(); //!< Returns minimum of each player's lives; players with 0 lives are skipped;
 
         public:
-            LastTeamStanding(BaseObject* creator); //!< Default Constructor.
+            LastTeamStanding(Context* context); //!< Default Constructor.
             virtual ~LastTeamStanding(); //!< Default Destructor.
 
             virtual void playerEntered(PlayerInfo* player); //!< Initializes values.

Modified: code/branches/core6/src/orxonox/gametypes/Mission.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Mission.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Mission.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateUnloadableFactory(Mission);
 
-    Mission::Mission(BaseObject* creator) : TeamGametype(creator)
+    Mission::Mission(Context* context) : TeamGametype(context)
     {
         RegisterObject(Mission);
         this->missionAccomplished_ = false;

Modified: code/branches/core6/src/orxonox/gametypes/Mission.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/Mission.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/Mission.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
     class _OrxonoxExport Mission : public TeamGametype
     {
         public:
-            Mission(BaseObject* creator);
+            Mission(Context* context);
             virtual ~Mission() {}
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/orxonox/gametypes/TeamBaseMatch.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/TeamBaseMatch.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/TeamBaseMatch.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateUnloadableFactory(TeamBaseMatch);
 
-    TeamBaseMatch::TeamBaseMatch(BaseObject* creator) : TeamDeathmatch(creator)
+    TeamBaseMatch::TeamBaseMatch(Context* context) : TeamDeathmatch(context)
     {
         RegisterObject(TeamBaseMatch);
 

Modified: code/branches/core6/src/orxonox/gametypes/TeamBaseMatch.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/TeamBaseMatch.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/TeamBaseMatch.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport TeamBaseMatch : public TeamDeathmatch
     {
         public:
-            TeamBaseMatch(BaseObject* creator);
+            TeamBaseMatch(Context* context);
             virtual ~TeamBaseMatch() {}
 
             virtual bool allowPawnDeath(Pawn* victim, Pawn* originator = 0);

Modified: code/branches/core6/src/orxonox/gametypes/TeamDeathmatch.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/TeamDeathmatch.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/TeamDeathmatch.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateUnloadableFactory(TeamDeathmatch);
 
-    TeamDeathmatch::TeamDeathmatch(BaseObject* creator) : TeamGametype(creator)
+    TeamDeathmatch::TeamDeathmatch(Context* context) : TeamGametype(context)
     {
         RegisterObject(TeamDeathmatch);
     }

Modified: code/branches/core6/src/orxonox/gametypes/TeamDeathmatch.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/TeamDeathmatch.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/TeamDeathmatch.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
     class _OrxonoxExport TeamDeathmatch : public TeamGametype
     {
         public:
-            TeamDeathmatch(BaseObject* creator);
+            TeamDeathmatch(Context* context);
             virtual ~TeamDeathmatch() {}
 
             virtual void start();

Modified: code/branches/core6/src/orxonox/gametypes/TeamGametype.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/TeamGametype.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/TeamGametype.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
 {
     CreateUnloadableFactory(TeamGametype);
 
-    TeamGametype::TeamGametype(BaseObject* creator) : Gametype(creator)
+    TeamGametype::TeamGametype(Context* context) : Gametype(context)
     {
         RegisterObject(TeamGametype);
 

Modified: code/branches/core6/src/orxonox/gametypes/TeamGametype.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/TeamGametype.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/TeamGametype.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport TeamGametype : public Gametype
     {
         public:
-            TeamGametype(BaseObject* creator);
+            TeamGametype(Context* context);
             virtual ~TeamGametype() {}
 
             void setConfigValues();

Modified: code/branches/core6/src/orxonox/gametypes/UnderAttack.cc
===================================================================
--- code/branches/core6/src/orxonox/gametypes/UnderAttack.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/UnderAttack.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateUnloadableFactory(UnderAttack);
 
-    UnderAttack::UnderAttack(BaseObject* creator) : TeamDeathmatch(creator)
+    UnderAttack::UnderAttack(Context* context) : TeamDeathmatch(context)
     {
         RegisterObject(UnderAttack);
         this->gameTime_ = 180;

Modified: code/branches/core6/src/orxonox/gametypes/UnderAttack.h
===================================================================
--- code/branches/core6/src/orxonox/gametypes/UnderAttack.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/gametypes/UnderAttack.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
     class _OrxonoxExport UnderAttack : public TeamDeathmatch
     {
         public:
-            UnderAttack(BaseObject* creator);
+            UnderAttack(Context* context);
             virtual ~UnderAttack() {}
 
             void setConfigValues();

Modified: code/branches/core6/src/orxonox/graphics/AnimatedModel.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/AnimatedModel.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/AnimatedModel.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
 {
     CreateFactory(AnimatedModel);
 
-    AnimatedModel::AnimatedModel(BaseObject* creator) : Model(creator)
+    AnimatedModel::AnimatedModel(Context* context) : Model(context)
     {
         RegisterObject(AnimatedModel);
     }

Modified: code/branches/core6/src/orxonox/graphics/AnimatedModel.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/AnimatedModel.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/AnimatedModel.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport AnimatedModel : public Model, public Tickable
     {
         public:
-            AnimatedModel(BaseObject* creator);
+            AnimatedModel(Context* context);
             virtual ~AnimatedModel();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/graphics/Backlight.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/Backlight.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Backlight.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
 {
     CreateFactory(Backlight);
 
-    Backlight::Backlight(BaseObject* creator) : FadingBillboard(creator)
+    Backlight::Backlight(Context* context) : FadingBillboard(context)
     {
         RegisterObject(Backlight);
 

Modified: code/branches/core6/src/orxonox/graphics/Backlight.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/Backlight.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Backlight.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport Backlight : public FadingBillboard, public TimeFactorListener
     {
         public:
-            Backlight(BaseObject* creator);
+            Backlight(Context* context);
             virtual ~Backlight();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/graphics/Billboard.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/Billboard.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Billboard.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateFactory(Billboard);
 
-    Billboard::Billboard(BaseObject* creator) : StaticEntity(creator)
+    Billboard::Billboard(Context* context) : StaticEntity(context)
     {
         RegisterObject(Billboard);
 

Modified: code/branches/core6/src/orxonox/graphics/Billboard.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/Billboard.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Billboard.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -43,7 +43,7 @@
     class _OrxonoxExport Billboard : public StaticEntity, public TeamColourable
     {
         public:
-            Billboard(BaseObject* creator);
+            Billboard(Context* context);
             virtual ~Billboard();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/graphics/BlinkingBillboard.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/BlinkingBillboard.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/BlinkingBillboard.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateFactory(BlinkingBillboard);
 
-    BlinkingBillboard::BlinkingBillboard(BaseObject* creator) : Billboard(creator)
+    BlinkingBillboard::BlinkingBillboard(Context* context) : Billboard(context)
     {
         RegisterObject(BlinkingBillboard);
 

Modified: code/branches/core6/src/orxonox/graphics/BlinkingBillboard.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/BlinkingBillboard.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/BlinkingBillboard.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport BlinkingBillboard : public Billboard, public Tickable
     {
         public:
-            BlinkingBillboard(BaseObject* creator);
+            BlinkingBillboard(Context* context);
             virtual ~BlinkingBillboard();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/graphics/Camera.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/Camera.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Camera.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
 {
     CreateFactory(Camera);
 
-    Camera::Camera(BaseObject* creator) : StaticEntity(creator)
+    Camera::Camera(Context* context) : StaticEntity(context)
     {
         RegisterObject(Camera);
 

Modified: code/branches/core6/src/orxonox/graphics/Camera.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/Camera.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Camera.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
         friend class CameraManager;
 
         public:
-            Camera(BaseObject* creator);
+            Camera(Context* context);
             virtual ~Camera();
 
             void setConfigValues();

Modified: code/branches/core6/src/orxonox/graphics/FadingBillboard.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/FadingBillboard.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/FadingBillboard.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(FadingBillboard);
 
-    FadingBillboard::FadingBillboard(BaseObject* creator) : Billboard(creator)
+    FadingBillboard::FadingBillboard(Context* context) : Billboard(context)
     {
         RegisterObject(FadingBillboard);
 

Modified: code/branches/core6/src/orxonox/graphics/FadingBillboard.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/FadingBillboard.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/FadingBillboard.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
     class _OrxonoxExport FadingBillboard : public Billboard, public Tickable
     {
         public:
-            FadingBillboard(BaseObject* creator);
+            FadingBillboard(Context* context);
             virtual ~FadingBillboard();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/graphics/GlobalShader.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/GlobalShader.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/GlobalShader.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateFactory(GlobalShader);
 
-    GlobalShader::GlobalShader(BaseObject* creator) : BaseObject(creator), Synchronisable(creator)
+    GlobalShader::GlobalShader(Context* context) : BaseObject(context), Synchronisable(context)
     {
         RegisterObject(GlobalShader);
 

Modified: code/branches/core6/src/orxonox/graphics/GlobalShader.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/GlobalShader.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/GlobalShader.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport GlobalShader : public BaseObject, public Synchronisable
     {
         public:
-            GlobalShader(BaseObject* creator);
+            GlobalShader(Context* context);
             virtual ~GlobalShader();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/graphics/Light.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/Light.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Light.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
     BOOST_STATIC_ASSERT((int)Ogre::Light::LT_DIRECTIONAL == (int)Light::Directional);
     BOOST_STATIC_ASSERT((int)Ogre::Light::LT_SPOTLIGHT   == (int)Light::Spotlight);
 
-    Light::Light(BaseObject* creator) : StaticEntity(creator)
+    Light::Light(Context* context) : StaticEntity(context)
     {
         RegisterObject(Light);
 

Modified: code/branches/core6/src/orxonox/graphics/Light.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/Light.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Light.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -52,7 +52,7 @@
             };
 
         public:
-            Light(BaseObject* creator);
+            Light(Context* context);
             virtual ~Light();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/graphics/MeshLodInformation.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/MeshLodInformation.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/MeshLodInformation.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,8 +39,8 @@
 {
     CreateFactory(MeshLodInformation);
 
-    MeshLodInformation::MeshLodInformation(BaseObject* creator)
-    : BaseObject(creator), lodLevel_(5), bEnabled_(true), numLevels_(10), reductionRate_(0.15f)
+    MeshLodInformation::MeshLodInformation(Context* context)
+    : BaseObject(context), lodLevel_(5), bEnabled_(true), numLevels_(10), reductionRate_(0.15f)
     {
         RegisterObject(MeshLodInformation);
     }

Modified: code/branches/core6/src/orxonox/graphics/MeshLodInformation.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/MeshLodInformation.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/MeshLodInformation.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport MeshLodInformation : public BaseObject
     {
         public:
-            MeshLodInformation(BaseObject* creator);
+            MeshLodInformation(Context* context);
             virtual ~MeshLodInformation();
 
             float getLodLevel();

Modified: code/branches/core6/src/orxonox/graphics/Model.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/Model.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Model.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,8 +42,8 @@
 {
     CreateFactory(Model);
 
-    Model::Model(BaseObject* creator) :
-        StaticEntity(creator), bCastShadows_(true), lodLevel_(5), bLodEnabled_(true), numLodLevels_(10), lodReductionRate_(.15f)
+    Model::Model(Context* context) :
+        StaticEntity(context), bCastShadows_(true), lodLevel_(5), bLodEnabled_(true), numLodLevels_(10), lodReductionRate_(.15f)
     {
         RegisterObject(Model);
 

Modified: code/branches/core6/src/orxonox/graphics/Model.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/Model.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/Model.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport Model : public StaticEntity
     {
         public:
-            Model(BaseObject* creator);
+            Model(Context* context);
             virtual ~Model();
 
             void setConfigValues();

Modified: code/branches/core6/src/orxonox/graphics/ParticleEmitter.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/ParticleEmitter.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/ParticleEmitter.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
 {
     CreateFactory(ParticleEmitter);
 
-    ParticleEmitter::ParticleEmitter(BaseObject* creator) : StaticEntity(creator)
+    ParticleEmitter::ParticleEmitter(Context* context) : StaticEntity(context)
     {
         RegisterObject(ParticleEmitter);
 

Modified: code/branches/core6/src/orxonox/graphics/ParticleEmitter.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/ParticleEmitter.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/ParticleEmitter.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport ParticleEmitter : public StaticEntity
     {
         public:
-            ParticleEmitter(BaseObject* creator);
+            ParticleEmitter(Context* context);
             virtual ~ParticleEmitter();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/graphics/ParticleSpawner.cc
===================================================================
--- code/branches/core6/src/orxonox/graphics/ParticleSpawner.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/ParticleSpawner.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(ParticleSpawner);
 
-    ParticleSpawner::ParticleSpawner(BaseObject* creator) : ParticleEmitter(creator)
+    ParticleSpawner::ParticleSpawner(Context* context) : ParticleEmitter(context)
     {
         RegisterObject(ParticleSpawner);
 

Modified: code/branches/core6/src/orxonox/graphics/ParticleSpawner.h
===================================================================
--- code/branches/core6/src/orxonox/graphics/ParticleSpawner.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/graphics/ParticleSpawner.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport ParticleSpawner : public ParticleEmitter
     {
         public:
-            ParticleSpawner(BaseObject* creator);
+            ParticleSpawner(Context* context);
             virtual ~ParticleSpawner();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/infos/Bot.cc
===================================================================
--- code/branches/core6/src/orxonox/infos/Bot.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/Bot.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateFactory(Bot);
 
-    Bot::Bot(BaseObject* creator) : PlayerInfo(creator)
+    Bot::Bot(Context* context) : PlayerInfo(context)
     {
         RegisterObject(Bot);
 

Modified: code/branches/core6/src/orxonox/infos/Bot.h
===================================================================
--- code/branches/core6/src/orxonox/infos/Bot.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/Bot.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport Bot : public PlayerInfo
     {
         public:
-            Bot(BaseObject* creator);
+            Bot(Context* context);
             virtual ~Bot();
 
             void setConfigValues();

Modified: code/branches/core6/src/orxonox/infos/GametypeInfo.cc
===================================================================
--- code/branches/core6/src/orxonox/infos/GametypeInfo.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/GametypeInfo.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -64,7 +64,7 @@
     @brief
         Registers and initializes the object.
     */
-    GametypeInfo::GametypeInfo(BaseObject* creator) : Info(creator)
+    GametypeInfo::GametypeInfo(Context* context) : Info(context)
     {
         RegisterObject(GametypeInfo);
 

Modified: code/branches/core6/src/orxonox/infos/GametypeInfo.h
===================================================================
--- code/branches/core6/src/orxonox/infos/GametypeInfo.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/GametypeInfo.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -57,7 +57,7 @@
         friend class Gametype;
 
         public:
-            GametypeInfo(BaseObject* creator);
+            GametypeInfo(Context* context);
             virtual ~GametypeInfo();
 
             /**

Modified: code/branches/core6/src/orxonox/infos/HumanPlayer.cc
===================================================================
--- code/branches/core6/src/orxonox/infos/HumanPlayer.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/HumanPlayer.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
 {
     CreateUnloadableFactory(HumanPlayer);
 
-    HumanPlayer::HumanPlayer(BaseObject* creator) : PlayerInfo(creator)
+    HumanPlayer::HumanPlayer(Context* context) : PlayerInfo(context)
     {
         RegisterObject(HumanPlayer);
 
@@ -182,7 +182,7 @@
 
         if (this->isLocalPlayer() && !this->humanHudTemplate_.empty() && GameMode::showsGraphics())
         {
-            this->humanHud_ = new OverlayGroup(this);
+            this->humanHud_ = new OverlayGroup(this->getContext());
             this->humanHud_->addTemplate(this->humanHudTemplate_);
             this->humanHud_->setOwner(this);
         }
@@ -198,7 +198,7 @@
 
         if (this->isLocalPlayer() && !this->gametypeHudTemplate_.empty())
         {
-            this->gametypeHud_ = new OverlayGroup(this);
+            this->gametypeHud_ = new OverlayGroup(this->getContext());
             this->gametypeHud_->addTemplate(this->gametypeHudTemplate_);
             this->gametypeHud_->setOwner(this);
         }

Modified: code/branches/core6/src/orxonox/infos/HumanPlayer.h
===================================================================
--- code/branches/core6/src/orxonox/infos/HumanPlayer.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/HumanPlayer.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport HumanPlayer : public PlayerInfo
     {
         public:
-            HumanPlayer(BaseObject* creator);
+            HumanPlayer(Context* context);
             virtual ~HumanPlayer();
 
             void setConfigValues();

Modified: code/branches/core6/src/orxonox/infos/Info.cc
===================================================================
--- code/branches/core6/src/orxonox/infos/Info.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/Info.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -31,7 +31,7 @@
 
 namespace orxonox
 {
-    Info::Info(BaseObject* creator) : BaseObject(creator), Synchronisable(creator)
+    Info::Info(Context* context) : BaseObject(context), Synchronisable(context)
     {
         RegisterObject(Info);
     }

Modified: code/branches/core6/src/orxonox/infos/Info.h
===================================================================
--- code/branches/core6/src/orxonox/infos/Info.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/Info.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport Info : public BaseObject, public Synchronisable
     {
         public:
-            Info(BaseObject* creator);
+            Info(Context* context);
             virtual ~Info() {}
     };
 }

Modified: code/branches/core6/src/orxonox/infos/PlayerInfo.cc
===================================================================
--- code/branches/core6/src/orxonox/infos/PlayerInfo.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/PlayerInfo.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 
 namespace orxonox
 {
-    PlayerInfo::PlayerInfo(BaseObject* creator) : Info(creator)
+    PlayerInfo::PlayerInfo(Context* context) : Info(context)
     {
         RegisterObject(PlayerInfo);
 
@@ -135,7 +135,7 @@
             this->controller_->destroy();
             this->controller_ = 0;
         }
-        this->controller_ = this->defaultController_.fabricate(this);
+        this->controller_ = this->defaultController_.fabricate(this->getContext());
         assert(this->controller_);
         this->controller_->setPlayer(this);
         if (this->controllableEntity_)

Modified: code/branches/core6/src/orxonox/infos/PlayerInfo.h
===================================================================
--- code/branches/core6/src/orxonox/infos/PlayerInfo.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/infos/PlayerInfo.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
         : public Info
     { // tolua_export
         public:
-            PlayerInfo(BaseObject* creator);
+            PlayerInfo(Context* context);
             virtual ~PlayerInfo();
 
             virtual void changedName();

Modified: code/branches/core6/src/orxonox/items/Engine.cc
===================================================================
--- code/branches/core6/src/orxonox/items/Engine.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/items/Engine.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -45,7 +45,7 @@
     @brief
         Constructor. Registers and initializes the object.
     */
-    Engine::Engine(BaseObject* creator) : Item(creator)
+    Engine::Engine(Context* context) : Item(context)
     {
         RegisterObject(Engine);
 

Modified: code/branches/core6/src/orxonox/items/Engine.h
===================================================================
--- code/branches/core6/src/orxonox/items/Engine.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/items/Engine.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -55,7 +55,7 @@
     class _OrxonoxExport Engine : public Item
     {
         public:
-            Engine(BaseObject* creator);
+            Engine(Context* context);
             virtual ~Engine();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/items/Item.cc
===================================================================
--- code/branches/core6/src/orxonox/items/Item.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/items/Item.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -31,7 +31,7 @@
 
 namespace orxonox
 {
-    Item::Item(BaseObject* creator) : BaseObject(creator), Synchronisable(creator)
+    Item::Item(Context* context) : BaseObject(context), Synchronisable(context)
     {
         RegisterObject(Item);
     }

Modified: code/branches/core6/src/orxonox/items/Item.h
===================================================================
--- code/branches/core6/src/orxonox/items/Item.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/items/Item.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport Item : public BaseObject, public Synchronisable
     {
         public:
-            Item(BaseObject* creator);
+            Item(Context* context);
             virtual ~Item() {}
     };
 }

Modified: code/branches/core6/src/orxonox/items/MultiStateEngine.cc
===================================================================
--- code/branches/core6/src/orxonox/items/MultiStateEngine.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/items/MultiStateEngine.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,14 +50,14 @@
 
     CreateFactory(MultiStateEngine);
 
-    MultiStateEngine::MultiStateEngine(BaseObject* creator) : Engine(creator)
+    MultiStateEngine::MultiStateEngine(Context* context) : Engine(context)
     {
         RegisterObject(MultiStateEngine);
 
         if (GameMode::isMaster())
         {
-            this->defEngineSndNormal_ = new WorldSound(this);
-            this->defEngineSndBoost_  = new WorldSound(this);
+            this->defEngineSndNormal_ = new WorldSound(this->getContext());
+            this->defEngineSndBoost_  = new WorldSound(this->getContext());
             this->defEngineSndNormal_->setLooping(true);
             this->defEngineSndBoost_->setLooping(true);
             this->lua_ = new LuaState();

Modified: code/branches/core6/src/orxonox/items/MultiStateEngine.h
===================================================================
--- code/branches/core6/src/orxonox/items/MultiStateEngine.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/items/MultiStateEngine.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -48,7 +48,7 @@
                 Boost   = 8
             };
 
-            MultiStateEngine(BaseObject* creator);
+            MultiStateEngine(Context* context);
             virtual ~MultiStateEngine();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/overlays/GUISheet.cc
===================================================================
--- code/branches/core6/src/orxonox/overlays/GUISheet.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/overlays/GUISheet.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,8 +37,8 @@
 {
     CreateFactory(GUISheet);
 
-    GUISheet::GUISheet(BaseObject* creator)
-        : BaseObject(creator)
+    GUISheet::GUISheet(Context* context)
+        : BaseObject(context)
         , bShowOnLoad_(false)
         , bHidePrevious_(false)
         , bHidePreviousSet_(false)

Modified: code/branches/core6/src/orxonox/overlays/GUISheet.h
===================================================================
--- code/branches/core6/src/orxonox/overlays/GUISheet.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/overlays/GUISheet.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport GUISheet : public BaseObject
     {
     public:
-        GUISheet(BaseObject* creator);
+        GUISheet(Context* context);
         ~GUISheet();
 
         void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/overlays/OrxonoxOverlay.cc
===================================================================
--- code/branches/core6/src/orxonox/overlays/OrxonoxOverlay.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/overlays/OrxonoxOverlay.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -62,8 +62,8 @@
     SetConsoleCommand("OrxonoxOverlay", "show",     &OrxonoxOverlay::showOverlay);
     SetConsoleCommand("OrxonoxOverlay", "rotateOverlay",    &OrxonoxOverlay::rotateOverlay);
 
-    OrxonoxOverlay::OrxonoxOverlay(BaseObject* creator)
-        : BaseObject(creator)
+    OrxonoxOverlay::OrxonoxOverlay(Context* context)
+        : BaseObject(context)
     {
         RegisterObject(OrxonoxOverlay);
 

Modified: code/branches/core6/src/orxonox/overlays/OrxonoxOverlay.h
===================================================================
--- code/branches/core6/src/orxonox/overlays/OrxonoxOverlay.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/overlays/OrxonoxOverlay.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -86,7 +86,7 @@
         };
 
     public:
-        OrxonoxOverlay(BaseObject* creator);
+        OrxonoxOverlay(Context* context);
         virtual ~OrxonoxOverlay();
 
         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/overlays/OverlayGroup.cc
===================================================================
--- code/branches/core6/src/orxonox/overlays/OverlayGroup.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/overlays/OverlayGroup.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,8 +47,8 @@
     SetConsoleCommand("OverlayGroup", "scaleGroup",       &OverlayGroup::scaleGroup);
     SetConsoleCommand("OverlayGroup", "scrollGroup",      &OverlayGroup::scrollGroup);
 
-    OverlayGroup::OverlayGroup(BaseObject* creator)
-        : BaseObject(creator)
+    OverlayGroup::OverlayGroup(Context* context)
+        : BaseObject(context)
     {
         RegisterObject(OverlayGroup);
 

Modified: code/branches/core6/src/orxonox/overlays/OverlayGroup.h
===================================================================
--- code/branches/core6/src/orxonox/overlays/OverlayGroup.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/overlays/OverlayGroup.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -53,7 +53,7 @@
     class _OrxonoxExport OverlayGroup : public BaseObject
     {
     public:
-        OverlayGroup(BaseObject* creator);
+        OverlayGroup(Context* context);
         //! Empty destructor.
         ~OverlayGroup();
 

Modified: code/branches/core6/src/orxonox/sound/WorldAmbientSound.cc
===================================================================
--- code/branches/core6/src/orxonox/sound/WorldAmbientSound.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/sound/WorldAmbientSound.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
 {
     CreateFactory(WorldAmbientSound);
 
-    WorldAmbientSound::WorldAmbientSound(BaseObject* creator) : BaseObject(creator), Synchronisable(creator)
+    WorldAmbientSound::WorldAmbientSound(Context* context) : BaseObject(context), Synchronisable(context)
     {
         RegisterObject(WorldAmbientSound);
 

Modified: code/branches/core6/src/orxonox/sound/WorldAmbientSound.h
===================================================================
--- code/branches/core6/src/orxonox/sound/WorldAmbientSound.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/sound/WorldAmbientSound.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -43,7 +43,7 @@
     class _OrxonoxExport WorldAmbientSound : public BaseObject, public Synchronisable
     {
         public:
-            WorldAmbientSound(BaseObject* creator);
+            WorldAmbientSound(Context* context);
             virtual ~WorldAmbientSound();
 
             void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/sound/WorldSound.cc
===================================================================
--- code/branches/core6/src/orxonox/sound/WorldSound.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/sound/WorldSound.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,8 +42,8 @@
 {
     CreateFactory(WorldSound);
 
-    WorldSound::WorldSound(BaseObject* creator)
-        : StaticEntity(creator)
+    WorldSound::WorldSound(Context* context)
+        : StaticEntity(context)
     {
         RegisterObject(WorldSound);
         // WorldSound buffers should be pooled when they're not used anymore

Modified: code/branches/core6/src/orxonox/sound/WorldSound.h
===================================================================
--- code/branches/core6/src/orxonox/sound/WorldSound.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/sound/WorldSound.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
     class _OrxonoxExport WorldSound : public StaticEntity, public BaseSound, public Tickable
     {
     public:
-        WorldSound(BaseObject* creator);
+        WorldSound(Context* context);
 
         void XMLPort(Element& xmlelement, XMLPort::Mode mode);
         void XMLEventPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/weaponsystem/DefaultWeaponmodeLink.cc
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/DefaultWeaponmodeLink.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/DefaultWeaponmodeLink.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateFactory(DefaultWeaponmodeLink);
 
-    DefaultWeaponmodeLink::DefaultWeaponmodeLink(BaseObject* creator) : BaseObject(creator)
+    DefaultWeaponmodeLink::DefaultWeaponmodeLink(Context* context) : BaseObject(context)
     {
         RegisterObject(DefaultWeaponmodeLink);
 

Modified: code/branches/core6/src/orxonox/weaponsystem/DefaultWeaponmodeLink.h
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/DefaultWeaponmodeLink.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/DefaultWeaponmodeLink.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
     class _OrxonoxExport DefaultWeaponmodeLink : public BaseObject
     {
         public:
-            DefaultWeaponmodeLink(BaseObject* creator);
+            DefaultWeaponmodeLink(Context* context);
             virtual ~DefaultWeaponmodeLink();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/weaponsystem/Munition.cc
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/Munition.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/Munition.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateFactory(Munition);
 
-    Munition::Munition(BaseObject* creator) : BaseObject(creator)
+    Munition::Munition(Context* context) : BaseObject(context)
     {
         RegisterObject(Munition);
 

Modified: code/branches/core6/src/orxonox/weaponsystem/Munition.h
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/Munition.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/Munition.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -55,7 +55,7 @@
         };
 
         public:
-            Munition(BaseObject* creator);
+            Munition(Context* context);
             virtual ~Munition();
 
             unsigned int getNumMunition(WeaponMode* user) const;

Modified: code/branches/core6/src/orxonox/weaponsystem/Weapon.cc
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/Weapon.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/Weapon.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
 {
     CreateFactory(Weapon);
 
-    Weapon::Weapon(BaseObject* creator) : StaticEntity(creator)
+    Weapon::Weapon(Context* context) : StaticEntity(context)
     {
         RegisterObject(Weapon);
 

Modified: code/branches/core6/src/orxonox/weaponsystem/Weapon.h
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/Weapon.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/Weapon.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,7 +41,7 @@
     class _OrxonoxExport Weapon : public StaticEntity
     {
         public:
-            Weapon(BaseObject* creator);
+            Weapon(Context* context);
             virtual ~Weapon();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponMode.cc
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponMode.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponMode.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
 
 namespace orxonox
 {
-    WeaponMode::WeaponMode(BaseObject* creator) : BaseObject(creator)
+    WeaponMode::WeaponMode(Context* context) : BaseObject(context)
     {
         RegisterObject(WeaponMode);
 
@@ -74,7 +74,7 @@
 
         if( GameMode::isMaster() )
         {
-            this->defSndWpnFire_ = new WorldSound(this);
+            this->defSndWpnFire_ = new WorldSound(this->getContext());
             this->defSndWpnFire_->setLooping(false);
             this->bSoundAttached_ = false;
         }

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponMode.h
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponMode.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponMode.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -43,7 +43,7 @@
     class _OrxonoxExport WeaponMode : public BaseObject
     {
         public:
-            WeaponMode(BaseObject* creator);
+            WeaponMode(Context* context);
             virtual ~WeaponMode();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponPack.cc
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponPack.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponPack.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateFactory(WeaponPack);
 
-    WeaponPack::WeaponPack(BaseObject* creator) : BaseObject(creator)
+    WeaponPack::WeaponPack(Context* context) : BaseObject(context)
     {
         RegisterObject(WeaponPack);
 

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponPack.h
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponPack.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponPack.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport WeaponPack : public BaseObject
     {
         public:
-            WeaponPack(BaseObject* creator);
+            WeaponPack(Context* context);
             virtual ~WeaponPack();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponSet.cc
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponSet.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponSet.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(WeaponSet);
 
-    WeaponSet::WeaponSet(BaseObject* creator) : BaseObject(creator)
+    WeaponSet::WeaponSet(Context* context) : BaseObject(context)
     {
         RegisterObject(WeaponSet);
 

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponSet.h
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponSet.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponSet.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport WeaponSet : public BaseObject
     {
         public:
-            WeaponSet(BaseObject* creator);
+            WeaponSet(Context* context);
             virtual ~WeaponSet();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponSlot.cc
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponSlot.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponSlot.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(WeaponSlot);
 
-    WeaponSlot::WeaponSlot(BaseObject* creator) : StaticEntity(creator)
+    WeaponSlot::WeaponSlot(Context* context) : StaticEntity(context)
     {
         RegisterObject(WeaponSlot);
 

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponSlot.h
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponSlot.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponSlot.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -56,7 +56,7 @@
     class _OrxonoxExport WeaponSlot : public StaticEntity
     {
         public:
-            WeaponSlot(BaseObject* creator);
+            WeaponSlot(Context* context);
             virtual ~WeaponSlot();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponSystem.cc
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponSystem.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponSystem.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
 {
     CreateFactory(WeaponSystem);
 
-    WeaponSystem::WeaponSystem(BaseObject* creator) : BaseObject(creator)
+    WeaponSystem::WeaponSystem(Context* context) : BaseObject(context)
     {
         RegisterObject(WeaponSystem);
 
@@ -307,7 +307,7 @@
         }
         else if (identifier->getIdentifier()->isA(Class(Munition)))
         {
-            Munition* munition = identifier->fabricate(this);
+            Munition* munition = identifier->fabricate(this->getContext());
             this->munitions_[identifier->getIdentifier()] = munition;
             return munition;
         }

Modified: code/branches/core6/src/orxonox/weaponsystem/WeaponSystem.h
===================================================================
--- code/branches/core6/src/orxonox/weaponsystem/WeaponSystem.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/weaponsystem/WeaponSystem.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
     class _OrxonoxExport WeaponSystem : public BaseObject
     {
         public:
-            WeaponSystem(BaseObject* creator);
+            WeaponSystem(Context* context);
             virtual ~WeaponSystem();
 
             // adding and removing WeaponSlots

Modified: code/branches/core6/src/orxonox/worldentities/BigExplosion.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/BigExplosion.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/BigExplosion.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
 {
     CreateFactory(BigExplosion);
 
-    BigExplosion::BigExplosion(BaseObject* creator) : StaticEntity(creator)
+    BigExplosion::BigExplosion(Context* context) : StaticEntity(context)
     {
         RegisterObject(BigExplosion);
 
@@ -79,27 +79,27 @@
 
     void BigExplosion::init()
     {
-        this->debrisEntity1_ = new MovableEntity(this);
-        this->debrisEntity2_ = new MovableEntity(this);
-        this->debrisEntity3_ = new MovableEntity(this);
-        this->debrisEntity4_ = new MovableEntity(this);
+        this->debrisEntity1_ = new MovableEntity(this->getContext());
+        this->debrisEntity2_ = new MovableEntity(this->getContext());
+        this->debrisEntity3_ = new MovableEntity(this->getContext());
+        this->debrisEntity4_ = new MovableEntity(this->getContext());
 
         this->debrisEntity1_->setSyncMode(0);
         this->debrisEntity2_->setSyncMode(0);
         this->debrisEntity3_->setSyncMode(0);
         this->debrisEntity4_->setSyncMode(0);
 
-        this->debris1_ = new Model(this);
-        this->debris2_ = new Model(this);
-        this->debris3_ = new Model(this);
-        this->debris4_ = new Model(this);
+        this->debris1_ = new Model(this->getContext());
+        this->debris2_ = new Model(this->getContext());
+        this->debris3_ = new Model(this->getContext());
+        this->debris4_ = new Model(this->getContext());
 
         this->debris1_->setSyncMode(0);
         this->debris2_->setSyncMode(0);
         this->debris3_->setSyncMode(0);
         this->debris4_->setSyncMode(0);
 
-        this->explosion_ = new StaticEntity(this);
+        this->explosion_ = new StaticEntity(this->getContext());
         this->explosion_->setSyncMode(0);
 
         this->debrisSmoke1_ = new ParticleInterface(this->getScene()->getSceneManager(), "Orxonox/smoke7", this->LOD_);
@@ -147,13 +147,13 @@
         this->debrisEntity3_->attach(debris3_);
         this->debrisEntity4_->attach(debris4_);
 
-        ParticleSpawner* effect = new ParticleSpawner(this->getCreator());
+        ParticleSpawner* effect = new ParticleSpawner(this->getContext());
         effect->setDestroyAfterLife(true);
         effect->setSource("Orxonox/explosion2b");
         effect->setLifetime(4.0f);
         effect->setSyncMode(0);
 
-        ParticleSpawner* effect2 = new ParticleSpawner(this->getCreator());
+        ParticleSpawner* effect2 = new ParticleSpawner(this->getContext());
         effect2->setDestroyAfterLife(true);
         effect2->setSource("Orxonox/smoke6");
         effect2->setLifetime(4.0f);
@@ -171,11 +171,11 @@
 
         for(int i=0;i<10;i++)
         {
-            Model* part1 = new Model(this);
-            Model* part2 = new Model(this);
+            Model* part1 = new Model(this->getContext());
+            Model* part2 = new Model(this->getContext());
 
-            MovableEntity* partEntity1 = new MovableEntity(this);
-            MovableEntity* partEntity2 = new MovableEntity(this);
+            MovableEntity* partEntity1 = new MovableEntity(this->getContext());
+            MovableEntity* partEntity2 = new MovableEntity(this->getContext());
 
             part1->setSyncMode(0);
             part2->setSyncMode(0);

Modified: code/branches/core6/src/orxonox/worldentities/BigExplosion.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/BigExplosion.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/BigExplosion.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport BigExplosion : public StaticEntity
     {
         public:
-            BigExplosion(BaseObject* creator);
+            BigExplosion(Context* context);
             virtual ~BigExplosion();
 
             inline void setLOD(LODParticle::Value level)

Modified: code/branches/core6/src/orxonox/worldentities/CameraPosition.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/CameraPosition.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/CameraPosition.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -36,7 +36,7 @@
 {
     CreateFactory(CameraPosition);
 
-    CameraPosition::CameraPosition(BaseObject* creator) : StaticEntity(creator)
+    CameraPosition::CameraPosition(Context* context) : StaticEntity(context)
     {
         RegisterObject(CameraPosition);
 

Modified: code/branches/core6/src/orxonox/worldentities/CameraPosition.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/CameraPosition.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/CameraPosition.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -37,7 +37,7 @@
     class _OrxonoxExport CameraPosition : public StaticEntity
     {
         public:
-            CameraPosition(BaseObject* creator);
+            CameraPosition(Context* context);
             virtual ~CameraPosition();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/ControllableEntity.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/ControllableEntity.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/ControllableEntity.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -51,7 +51,7 @@
     registerMemberNetworkFunction( ControllableEntity, fire );
     registerMemberNetworkFunction( ControllableEntity, setTargetInternal );
 
-    ControllableEntity::ControllableEntity(BaseObject* creator) : MobileEntity(creator)
+    ControllableEntity::ControllableEntity(Context* context) : MobileEntity(context)
     {
         RegisterObject(ControllableEntity);
 
@@ -396,7 +396,7 @@
     {
         if (!this->camera_ && GameMode::showsGraphics())
         {
-            this->camera_ = new Camera(this);
+            this->camera_ = new Camera(this->getContext());
             this->camera_->requestFocus();
             if (!this->cameraPositionTemplate_.empty())
                 this->addTemplate(this->cameraPositionTemplate_);
@@ -422,7 +422,7 @@
         {
             if (!this->hudtemplate_.empty())
             {
-                this->hud_ = new OverlayGroup(this);
+                this->hud_ = new OverlayGroup(this->getContext());
                 this->hud_->addTemplate(this->hudtemplate_);
                 this->hud_->setOwner(this);
             }

Modified: code/branches/core6/src/orxonox/worldentities/ControllableEntity.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/ControllableEntity.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/ControllableEntity.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -43,7 +43,7 @@
         friend class PlayerInfo; // PlayerInfo uses setPlayer and removePlayer
 
         public:
-            ControllableEntity(BaseObject* creator);
+            ControllableEntity(Context* context);
             virtual ~ControllableEntity();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/Drone.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/Drone.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/Drone.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
     @brief
         Constructor. Registers the object and initializes some default values.
     */
-    Drone::Drone(BaseObject* creator) : Pawn(creator)
+    Drone::Drone(Context* context) : Pawn(context)
     {
         RegisterObject(Drone);
 
@@ -49,7 +49,7 @@
         this->setRadarVisibility(false);
         this->setCollisionType(WorldEntity::Dynamic);
 
-        myController_ = new DroneController(static_cast<BaseObject*>(this)); //!< Creates a new controller and passes our this pointer to it as creator.
+        myController_ = new DroneController(this->getContext()); //!< Creates a new controller and passes our this pointer to it as creator.
         myController_->setDrone(this);
 
         this->setController(myController_);

Modified: code/branches/core6/src/orxonox/worldentities/Drone.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/Drone.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/Drone.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
     class _OrxonoxExport Drone : public Pawn
     {
         public:
-            Drone(BaseObject* creator);
+            Drone(Context* context);
             virtual ~Drone();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a Drone through XML.

Modified: code/branches/core6/src/orxonox/worldentities/EffectContainer.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/EffectContainer.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/EffectContainer.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -41,8 +41,8 @@
 {
     CreateFactory(EffectContainer);
 
-    EffectContainer::EffectContainer(BaseObject* creator)
-        : BaseObject(creator)
+    EffectContainer::EffectContainer(Context* context)
+        : BaseObject(context)
         , lua_(NULL)
     {
         RegisterObject(EffectContainer);

Modified: code/branches/core6/src/orxonox/worldentities/EffectContainer.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/EffectContainer.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/EffectContainer.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport EffectContainer : public BaseObject
     {
         public:
-            EffectContainer(BaseObject* creator);
+            EffectContainer(Context* context);
             virtual ~EffectContainer();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/ExplosionChunk.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/ExplosionChunk.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/ExplosionChunk.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
 {
     CreateFactory(ExplosionChunk);
 
-    ExplosionChunk::ExplosionChunk(BaseObject* creator) : MovableEntity(creator)
+    ExplosionChunk::ExplosionChunk(Context* context) : MovableEntity(context)
     {
         RegisterObject(ExplosionChunk);
 

Modified: code/branches/core6/src/orxonox/worldentities/ExplosionChunk.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/ExplosionChunk.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/ExplosionChunk.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport ExplosionChunk : public MovableEntity
     {
         public:
-            ExplosionChunk(BaseObject* creator);
+            ExplosionChunk(Context* context);
             virtual ~ExplosionChunk();
 
             virtual void tick(float dt);

Modified: code/branches/core6/src/orxonox/worldentities/MobileEntity.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/MobileEntity.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/MobileEntity.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 
 namespace orxonox
 {
-    MobileEntity::MobileEntity(BaseObject* creator) : WorldEntity(creator)
+    MobileEntity::MobileEntity(Context* context) : WorldEntity(context)
     {
         RegisterObject(MobileEntity);
 

Modified: code/branches/core6/src/orxonox/worldentities/MobileEntity.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/MobileEntity.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/MobileEntity.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport MobileEntity : public WorldEntity, public Tickable
     {
         public:
-            MobileEntity(BaseObject* creator);
+            MobileEntity(Context* context);
             virtual ~MobileEntity();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/MovableEntity.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/MovableEntity.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/MovableEntity.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
 
     CreateFactory(MovableEntity);
 
-    MovableEntity::MovableEntity(BaseObject* creator) : MobileEntity(creator)
+    MovableEntity::MovableEntity(Context* context) : MobileEntity(context)
     {
         RegisterObject(MovableEntity);
 

Modified: code/branches/core6/src/orxonox/worldentities/MovableEntity.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/MovableEntity.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/MovableEntity.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
     class _OrxonoxExport MovableEntity : public MobileEntity, public ClientConnectionListener
     {
         public:
-            MovableEntity(BaseObject* creator);
+            MovableEntity(Context* context);
             virtual ~MovableEntity();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/SpawnPoint.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/SpawnPoint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/SpawnPoint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(SpawnPoint);
 
-    SpawnPoint::SpawnPoint(BaseObject* creator) : StaticEntity(creator)
+    SpawnPoint::SpawnPoint(Context* context) : StaticEntity(context)
     {
         RegisterObject(SpawnPoint);
 
@@ -80,7 +80,7 @@
 
     Pawn* SpawnPoint::spawn()
     {
-        Pawn* entity = this->spawnclass_.fabricate(this);
+        Pawn* entity = this->spawnclass_.fabricate(this->getContext());
         if (entity)
         {
             this->getGametype()->pawnPreSpawn(entity);

Modified: code/branches/core6/src/orxonox/worldentities/SpawnPoint.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/SpawnPoint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/SpawnPoint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -40,7 +40,7 @@
     class _OrxonoxExport SpawnPoint : public StaticEntity
     {
         public:
-            SpawnPoint(BaseObject* creator);
+            SpawnPoint(Context* context);
             virtual ~SpawnPoint() {}
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/StaticEntity.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/StaticEntity.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/StaticEntity.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(StaticEntity);
 
-    StaticEntity::StaticEntity(BaseObject* creator) : WorldEntity(creator)
+    StaticEntity::StaticEntity(Context* context) : WorldEntity(context)
     {
         RegisterObject(StaticEntity);
 

Modified: code/branches/core6/src/orxonox/worldentities/StaticEntity.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/StaticEntity.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/StaticEntity.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
     class _OrxonoxExport StaticEntity : public WorldEntity
     {
         public:
-            StaticEntity(BaseObject* creator);
+            StaticEntity(Context* context);
             virtual ~StaticEntity();
 
             using WorldEntity::setPosition;

Modified: code/branches/core6/src/orxonox/worldentities/TeamSpawnPoint.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/TeamSpawnPoint.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/TeamSpawnPoint.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(TeamSpawnPoint);
 
-    TeamSpawnPoint::TeamSpawnPoint(BaseObject* creator) : SpawnPoint(creator)
+    TeamSpawnPoint::TeamSpawnPoint(Context* context) : SpawnPoint(context)
     {
         RegisterObject(TeamSpawnPoint);
 

Modified: code/branches/core6/src/orxonox/worldentities/TeamSpawnPoint.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/TeamSpawnPoint.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/TeamSpawnPoint.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport TeamSpawnPoint : public SpawnPoint
     {
         public:
-            TeamSpawnPoint(BaseObject* creator);
+            TeamSpawnPoint(Context* context);
             virtual ~TeamSpawnPoint() {}
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/WorldEntity.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/WorldEntity.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/WorldEntity.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -65,7 +65,7 @@
         Creates a new WorldEntity that may immediately be used.
         All the default values are being set here.
     */
-    WorldEntity::WorldEntity(BaseObject* creator) : BaseObject(creator), Synchronisable(creator)
+    WorldEntity::WorldEntity(Context* context) : BaseObject(context), Synchronisable(context)
     {
         RegisterObject(WorldEntity);
 
@@ -91,7 +91,7 @@
         this->bPhysicsActive_ = false;
         this->bPhysicsActiveSynchronised_    = false;
         this->bPhysicsActiveBeforeAttaching_ = false;
-        this->collisionShape_ = new WorldEntityCollisionShape(this);
+        this->collisionShape_ = new WorldEntityCollisionShape(this->getContext());
         this->collisionShape_->setWorldEntityOwner(this);
         this->collisionType_             = None;
         this->collisionTypeSynchronised_ = None;

Modified: code/branches/core6/src/orxonox/worldentities/WorldEntity.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/WorldEntity.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/WorldEntity.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -89,7 +89,7 @@
             };
 
         public:
-            WorldEntity(BaseObject* creator);
+            WorldEntity(Context* context);
             virtual ~WorldEntity();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/pawns/Destroyer.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/Destroyer.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/Destroyer.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -35,7 +35,7 @@
 {
     CreateFactory(Destroyer);
 
-    Destroyer::Destroyer(BaseObject* creator) : SpaceShip(creator)
+    Destroyer::Destroyer(Context* context) : SpaceShip(context)
     {
         RegisterObject(Destroyer);
 

Modified: code/branches/core6/src/orxonox/worldentities/pawns/Destroyer.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/Destroyer.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/Destroyer.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
     class _OrxonoxExport Destroyer : public SpaceShip
     {
         public:
-            Destroyer(BaseObject* creator);
+            Destroyer(Context* context);
             virtual ~Destroyer() {};
 
     };

Modified: code/branches/core6/src/orxonox/worldentities/pawns/FpsPlayer.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/FpsPlayer.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/FpsPlayer.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -54,7 +54,7 @@
     const float jumpValue_ = 300;
     CreateFactory(FpsPlayer);
 
-    FpsPlayer::FpsPlayer(BaseObject* creator) : Pawn(creator)
+    FpsPlayer::FpsPlayer(Context* context) : Pawn(context)
     {
         RegisterObject(FpsPlayer);
         this->speed_ = 200;

Modified: code/branches/core6/src/orxonox/worldentities/pawns/FpsPlayer.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/FpsPlayer.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/FpsPlayer.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -42,7 +42,7 @@
     class _OrxonoxExport FpsPlayer : public Pawn
     {
         public:
-            FpsPlayer(BaseObject* creator);
+            FpsPlayer(Context* context);
             virtual ~FpsPlayer();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/pawns/Pawn.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/Pawn.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/Pawn.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -50,9 +50,9 @@
 {
     CreateFactory(Pawn);
 
-    Pawn::Pawn(BaseObject* creator)
-        : ControllableEntity(creator)
-        , RadarViewable(creator, static_cast<WorldEntity*>(this))
+    Pawn::Pawn(Context* context)
+        : ControllableEntity(context)
+        , RadarViewable(this, static_cast<WorldEntity*>(this))
     {
         RegisterObject(Pawn);
 
@@ -83,7 +83,7 @@
 
         if (GameMode::isMaster())
         {
-            this->weaponSystem_ = new WeaponSystem(this);
+            this->weaponSystem_ = new WeaponSystem(this->getContext());
             this->weaponSystem_->setPawn(this);
         }
         else
@@ -296,7 +296,7 @@
         // play spawn effect
         if (!this->spawnparticlesource_.empty())
         {
-            ParticleSpawner* effect = new ParticleSpawner(this->getCreator());
+            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
             effect->setPosition(this->getPosition());
             effect->setOrientation(this->getOrientation());
             effect->setDestroyAfterLife(true);
@@ -333,7 +333,7 @@
         this->bAlive_ = false;
         this->setDestroyWhenPlayerLeft(false);
 
-        BigExplosion* chunk = new BigExplosion(this->getCreator());
+        BigExplosion* chunk = new BigExplosion(this->getContext());
         chunk->setPosition(this->getPosition());
 
     }
@@ -341,7 +341,7 @@
     {
         // play death effect
         {
-            ParticleSpawner* effect = new ParticleSpawner(this->getCreator());
+            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
             effect->setPosition(this->getPosition());
             effect->setOrientation(this->getOrientation());
             effect->setDestroyAfterLife(true);
@@ -349,7 +349,7 @@
             effect->setLifetime(4.0f);
         }
         {
-            ParticleSpawner* effect = new ParticleSpawner(this->getCreator());
+            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
             effect->setPosition(this->getPosition());
             effect->setOrientation(this->getOrientation());
             effect->setDestroyAfterLife(true);
@@ -357,7 +357,7 @@
             effect->setLifetime(4.0f);
         }
         {
-            ParticleSpawner* effect = new ParticleSpawner(this->getCreator());
+            ParticleSpawner* effect = new ParticleSpawner(this->getContext());
             effect->setPosition(this->getPosition());
             effect->setOrientation(this->getOrientation());
             effect->setDestroyAfterLife(true);
@@ -366,7 +366,7 @@
         }
         for (unsigned int i = 0; i < this->numexplosionchunks_; ++i)
         {
-            ExplosionChunk* chunk = new ExplosionChunk(this->getCreator());
+            ExplosionChunk* chunk = new ExplosionChunk(this->getContext());
             chunk->setPosition(this->getPosition());
         }
     }

Modified: code/branches/core6/src/orxonox/worldentities/pawns/Pawn.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/Pawn.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/Pawn.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -44,7 +44,7 @@
         friend class WeaponSystem;
 
         public:
-            Pawn(BaseObject* creator);
+            Pawn(Context* context);
             virtual ~Pawn();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/pawns/SpaceShip.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/SpaceShip.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/SpaceShip.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -47,7 +47,7 @@
 {
     CreateFactory(SpaceShip);
 
-    SpaceShip::SpaceShip(BaseObject* creator) : Pawn(creator), boostBlur_(NULL)
+    SpaceShip::SpaceShip(Context* context) : Pawn(context), boostBlur_(NULL)
     {
         RegisterObject(SpaceShip);
 

Modified: code/branches/core6/src/orxonox/worldentities/pawns/SpaceShip.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/SpaceShip.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/SpaceShip.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -87,7 +87,7 @@
     class _OrxonoxExport SpaceShip : public Pawn
     {
         public:
-            SpaceShip(BaseObject* creator);
+            SpaceShip(Context* context);
             virtual ~SpaceShip();
 
             virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);

Modified: code/branches/core6/src/orxonox/worldentities/pawns/Spectator.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/Spectator.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/Spectator.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -46,7 +46,7 @@
 
     CreateFactory(Spectator);
 
-    Spectator::Spectator(BaseObject* creator) : ControllableEntity(creator)
+    Spectator::Spectator(Context* context) : ControllableEntity(context)
     {
         RegisterObject(Spectator);
 

Modified: code/branches/core6/src/orxonox/worldentities/pawns/Spectator.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/Spectator.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/Spectator.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -39,7 +39,7 @@
     class _OrxonoxExport Spectator : public ControllableEntity
     {
         public:
-            Spectator(BaseObject* creator);
+            Spectator(Context* context);
             virtual ~Spectator();
 
             void setConfigValues();

Modified: code/branches/core6/src/orxonox/worldentities/pawns/TeamBaseMatchBase.cc
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/TeamBaseMatchBase.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/TeamBaseMatchBase.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -38,7 +38,7 @@
 {
     CreateFactory(TeamBaseMatchBase);
 
-    TeamBaseMatchBase::TeamBaseMatchBase(BaseObject* creator) : Pawn(creator)
+    TeamBaseMatchBase::TeamBaseMatchBase(Context* context) : Pawn(context)
     {
         RegisterObject(TeamBaseMatchBase);
 

Modified: code/branches/core6/src/orxonox/worldentities/pawns/TeamBaseMatchBase.h
===================================================================
--- code/branches/core6/src/orxonox/worldentities/pawns/TeamBaseMatchBase.h	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/src/orxonox/worldentities/pawns/TeamBaseMatchBase.h	2013-08-09 19:26:46 UTC (rev 9629)
@@ -49,7 +49,7 @@
     class _OrxonoxExport TeamBaseMatchBase : public Pawn
     {
         public:
-            TeamBaseMatchBase(BaseObject* creator);
+            TeamBaseMatchBase(Context* context);
 
             // if class closes, close everything
             virtual ~TeamBaseMatchBase() {}

Modified: code/branches/core6/test/core/class/SubclassIdentifierTest.cc
===================================================================
--- code/branches/core6/test/core/class/SubclassIdentifierTest.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/test/core/class/SubclassIdentifierTest.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -11,13 +11,13 @@
         class TestClass : public OrxonoxClass
         {
             public:
-                TestClass(BaseObject* creator = NULL) { RegisterRootObject(TestClass); }
+                TestClass(Context* context = NULL) { RegisterRootObject(TestClass); }
         };
 
         class TestSubclass : public TestClass
         {
             public:
-                TestSubclass(BaseObject* creator = NULL) { RegisterObject(TestSubclass); }
+                TestSubclass(Context* context = NULL) { RegisterObject(TestSubclass); }
         };
 
         CreateFactory(TestClass);

Modified: code/branches/core6/test/core/class/SuperTest.cc
===================================================================
--- code/branches/core6/test/core/class/SuperTest.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/test/core/class/SuperTest.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -12,7 +12,7 @@
         class TestClass : public BaseObject
         {
             public:
-                TestClass(BaseObject* creator = NULL) : BaseObject(NULL), changedNameBase_(false), xmlPortBase_(false), modeBase_(XMLPort::NOP)
+                TestClass(Context* context = NULL) : BaseObject(context), changedNameBase_(false), xmlPortBase_(false), modeBase_(XMLPort::NOP)
                 {
                     RegisterRootObject(TestClass);
                 }
@@ -36,7 +36,7 @@
         class TestSubclass : public TestClass
         {
             public:
-                TestSubclass(BaseObject* creator = NULL) : changedNameSubclass_(false), xmlPortSubclass_(false), modeSubclass_(XMLPort::NOP)
+                TestSubclass(Context* context = NULL) : TestClass(context), changedNameSubclass_(false), xmlPortSubclass_(false), modeSubclass_(XMLPort::NOP)
                 {
                     RegisterObject(TestSubclass);
                 }

Modified: code/branches/core6/test/core/object/ContextTest.cc
===================================================================
--- code/branches/core6/test/core/object/ContextTest.cc	2013-08-09 09:28:52 UTC (rev 9628)
+++ code/branches/core6/test/core/object/ContextTest.cc	2013-08-09 19:26:46 UTC (rev 9629)
@@ -1,45 +1,45 @@
-#include <gtest/gtest.h>
-#include "core/object/Context.h"
-#include "core/class/OrxonoxClass.h"
-#include "core/CoreIncludes.h"
-
-namespace orxonox
-{
-    namespace
-    {
-        class SubclassContext : public OrxonoxClass, public Context
-        {
-            public:
-                SubclassContext() { RegisterRootObject(SubclassContext); }
-        };
-    }
-
-    TEST(ContextTest, CanCreateContext)
-    {
-        Context context;
-    }
-
-    TEST(ContextTest, CanCreateSubclassContext)
-    {
-        SubclassContext context;
-    }
-
-    TEST(ContextTest, ContextIsItsOwnContext)
-    {
-        Context context;
-        EXPECT_EQ(&context, context.getContext());
-    }
-
-    TEST(ContextTest, SubclassContextIsItsOwnContext)
-    {
-        SubclassContext context;
-        EXPECT_EQ(&context, context.getContext());
-    }
-
-    TEST(ContextTest, SubclassAddsToItsOwnObjectList)
-    {
-        SubclassContext context;
-        EXPECT_EQ(&context, context.getContext());
-        EXPECT_EQ(1u, context.getObjectList<SubclassContext>()->size());
-    }
-}
+#include <gtest/gtest.h>
+#include "core/object/Context.h"
+#include "core/class/OrxonoxClass.h"
+#include "core/CoreIncludes.h"
+
+namespace orxonox
+{
+    namespace
+    {
+        class SubclassContext : public OrxonoxClass, public Context
+        {
+            public:
+                SubclassContext() : Context(NULL) { RegisterRootObject(SubclassContext); }
+        };
+    }
+
+    TEST(ContextTest, CanCreateContext)
+    {
+        Context context(NULL);
+    }
+
+    TEST(ContextTest, CanCreateSubclassContext)
+    {
+        SubclassContext context;
+    }
+
+    TEST(ContextTest, ContextIsItsOwnContext)
+    {
+        Context context(NULL);
+        EXPECT_EQ(&context, context.getContext());
+    }
+
+    TEST(ContextTest, SubclassContextIsItsOwnContext)
+    {
+        SubclassContext context;
+        EXPECT_EQ(&context, context.getContext());
+    }
+
+    TEST(ContextTest, SubclassAddsToItsOwnObjectList)
+    {
+        SubclassContext context;
+        EXPECT_EQ(&context, context.getContext());
+        EXPECT_EQ(1u, context.getObjectList<SubclassContext>()->size());
+    }
+}


Property changes on: code/branches/core6/test/core/object/ContextTest.cc
___________________________________________________________________
Added: svn:eol-style
   + native




More information about the Orxonox-commit mailing list