Index: trunk/src/story_entities/campaign.cc
===================================================================
--- trunk/src/story_entities/campaign.cc	(revision 6498)
+++ trunk/src/story_entities/campaign.cc	(revision 6512)
@@ -61,5 +61,5 @@
 void Campaign::loadParams(const TiXmlElement* root)
 {
-  static_cast<StoryEntity*>(this)->loadParams(root);
+  StoryEntity::loadParams(root);
 
   PRINTF(4)("Loaded Campaign specific stuff\n");
Index: trunk/src/story_entities/campaign.h
===================================================================
--- trunk/src/story_entities/campaign.h	(revision 6498)
+++ trunk/src/story_entities/campaign.h	(revision 6512)
@@ -23,5 +23,5 @@
     virtual ~Campaign ();
 
-    void loadParams(const TiXmlElement* root);
+    virtual void loadParams(const TiXmlElement* root);
 
     virtual bool start();
Index: trunk/src/story_entities/campaign_data.h
===================================================================
--- trunk/src/story_entities/campaign_data.h	(revision 6498)
+++ trunk/src/story_entities/campaign_data.h	(revision 6512)
@@ -21,5 +21,5 @@
     virtual ~CampaignData();
 
-    void loadParams(const TiXmlElement* root);
+    virtual void loadParams(const TiXmlElement* root);
 
     void loadData(const TiXmlElement* root);
Index: trunk/src/story_entities/dedicated_server_world.cc
===================================================================
--- trunk/src/story_entities/dedicated_server_world.cc	(revision 6498)
+++ trunk/src/story_entities/dedicated_server_world.cc	(revision 6512)
@@ -63,5 +63,5 @@
 void DedicatedServerWorld::loadParams(const TiXmlElement* root)
 {
-  static_cast<GameWorld*>(this)->loadParams(root);
+  GameWorld::loadParams(root);
 
   PRINTF(4)("Loaded DedicatedServerWorld specific stuff\n");
Index: trunk/src/story_entities/dedicated_server_world.h
===================================================================
--- trunk/src/story_entities/dedicated_server_world.h	(revision 6498)
+++ trunk/src/story_entities/dedicated_server_world.h	(revision 6512)
@@ -25,5 +25,5 @@
     virtual ~DedicatedServerWorld ();
 
-    void loadParams(const TiXmlElement* root);
+    virtual void loadParams(const TiXmlElement* root);
 
   private:
Index: trunk/src/story_entities/game_world.cc
===================================================================
--- trunk/src/story_entities/game_world.cc	(revision 6498)
+++ trunk/src/story_entities/game_world.cc	(revision 6512)
@@ -110,5 +110,5 @@
 void GameWorld::loadParams(const TiXmlElement* root)
 {
-  static_cast<StoryEntity*>(this)->loadParams(root);
+  StoryEntity::loadParams(root);
 
   LoadParam(root, "path", this, GameWorld, setPath)
Index: trunk/src/story_entities/game_world.h
===================================================================
--- trunk/src/story_entities/game_world.h	(revision 6498)
+++ trunk/src/story_entities/game_world.h	(revision 6512)
@@ -29,5 +29,5 @@
     virtual ~GameWorld ();
 
-    void loadParams(const TiXmlElement* root);
+    virtual void loadParams(const TiXmlElement* root);
 
     /* functions from story-entity */
Index: trunk/src/story_entities/multi_player_world.cc
===================================================================
--- trunk/src/story_entities/multi_player_world.cc	(revision 6498)
+++ trunk/src/story_entities/multi_player_world.cc	(revision 6512)
@@ -68,5 +68,5 @@
 void MultiPlayerWorld::loadParams(const TiXmlElement* root)
 {
-  static_cast<GameWorld*>(this)->loadParams(root);
+  GameWorld::loadParams(root);
 
   PRINTF(4)("Creating a MultiPlayerWorld\n");
Index: trunk/src/story_entities/multi_player_world.h
===================================================================
--- trunk/src/story_entities/multi_player_world.h	(revision 6498)
+++ trunk/src/story_entities/multi_player_world.h	(revision 6512)
@@ -25,5 +25,5 @@
   virtual ~MultiPlayerWorld ();
 
-  void loadParams(const TiXmlElement* root);
+  virtual void loadParams(const TiXmlElement* root);
 
   void debug();
Index: trunk/src/story_entities/single_player_world.cc
===================================================================
--- trunk/src/story_entities/single_player_world.cc	(revision 6498)
+++ trunk/src/story_entities/single_player_world.cc	(revision 6512)
@@ -71,5 +71,5 @@
 void SinglePlayerWorld::loadParams(const TiXmlElement* root)
 {
-  static_cast<GameWorld*>(this)->loadParams(root);
+  GameWorld::loadParams(root);
 
   PRINTF(4)("Loaded SinglePlayerWorld specific stuff\n");
Index: trunk/src/story_entities/single_player_world.h
===================================================================
--- trunk/src/story_entities/single_player_world.h	(revision 6498)
+++ trunk/src/story_entities/single_player_world.h	(revision 6512)
@@ -27,5 +27,5 @@
     virtual ~SinglePlayerWorld ();
 
-    void loadParams(const TiXmlElement* root);
+    virtual void loadParams(const TiXmlElement* root);
 };
 
Index: trunk/src/story_entities/story_entity.cc
===================================================================
--- trunk/src/story_entities/story_entity.cc	(revision 6498)
+++ trunk/src/story_entities/story_entity.cc	(revision 6512)
@@ -57,5 +57,5 @@
 void StoryEntity::loadParams(const TiXmlElement* root)
 {
-  static_cast<BaseObject*>(this)->loadParams(root);
+  BaseObject::loadParams(root);
 
   LoadParam(root, "identifier", this, StoryEntity, setStoryID)
Index: trunk/src/story_entities/story_entity.h
===================================================================
--- trunk/src/story_entities/story_entity.h	(revision 6498)
+++ trunk/src/story_entities/story_entity.h	(revision 6512)
@@ -30,5 +30,5 @@
   virtual ~StoryEntity ();
 
-  void loadParams(const TiXmlElement* root);
+  virtual void loadParams(const TiXmlElement* root);
 
   /* initialisation and loading */
