Index: /branches/avi_play/src/defs/class_id.h
===================================================================
--- /branches/avi_play/src/defs/class_id.h	(revision 6506)
+++ /branches/avi_play/src/defs/class_id.h	(revision 6507)
@@ -189,8 +189,8 @@
   CL_GROUND_TURRET              =    0x00000244,
   CL_GUIDED_MISSILE             =    0x00000245,
-  CL_MOVIE_ENTITY               =    0x00000246,
 
   CL_NPC_TEST1                  =    0x00000301,
   CL_NPC_TEST2                  =    0x00000302,
+  CL_MOVIE_ENTITY               =    0x00000303,
 
 
Index: /branches/avi_play/src/world_entities/movie_entity.cc
===================================================================
--- /branches/avi_play/src/world_entities/movie_entity.cc	(revision 6506)
+++ /branches/avi_play/src/world_entities/movie_entity.cc	(revision 6507)
@@ -1,4 +1,2 @@
-
-
 /*
    orxonox - the future of 3D-vertical-scrollers
@@ -12,14 +10,21 @@
 
 ### File Specific:
-   main-programmer: hdavid, stefalie
+   main-programmer: David Hasenfratz, Stefan Lienhard
    co-programmer:
 */
 
 #include "movie_entity.h"
-#include "fast_factory.h"
+
+#include "media_container.h"
+#include "load_param.h"
+#include "factory.h"
+#include "material.h"
+
+#include "network_game_manager.h"
+#include "converter.h"
 
 using namespace std;
 
-CREATE_FAST_FACTORY_STATIC(MovieEntity, CL_MOVIE_ENTITY);
+CREATE_FACTORY(MovieEntity, CL_MOVIE_ENTITY);
 
 /**
@@ -30,7 +35,16 @@
   this->setClassID(CL_MOVIE_ENTITY, "MovieEntity");
 
+  media_container = new MediaContainer("/home/david/Desktop/Crash.mpg");
+
+  this->material = new Material;
+  this->material->setDiffuseMap("maps/radialTransparency.png");
+
+  this->toList(OM_COMMON);
+
+  this->loadParams(root);
+
   counter = 0;
   timer = 0;
-  //this->model = (Model*) ResourceManager::getInstance()->load("cube", RP_LEVEL);
+  fps = media_container->getFPS();
 }
 
@@ -40,6 +54,17 @@
 MovieEntity::~MovieEntity ()
 {
+  delete this->material;
+  delete this->media_container;
 }
 
+void MovieEntity::loadParams(const TiXmlElement* root)
+{
+  static_cast<WorldEntity*>(this)->loadParams(root);
+}
+
+void MovieEntity::loadMovie(const char* filename)
+{
+
+}
 
 /**
@@ -51,5 +76,16 @@
 void MovieEntity::tick(float time)
 {
+  timer += time;
 
+  if(counter != fps * timer)
+  {
+    counter = fps * timer;
+
+    if (counter >= media_container->getFrameCount())
+    {
+      timer = 0;
+      counter = 0;
+    }
+  }
 }
 
@@ -63,14 +99,21 @@
 {
 
-}
+  glPushMatrix();
+  glTranslatef (this->getAbsCoor ().x,
+                this->getAbsCoor ().y,
+                this->getAbsCoor ().z);
 
-void MovieEntity::loadParams(const TiXmlElement* root)
-{
+  this->material->select();
+  glBindTexture(GL_TEXTURE_2D, media_container->getFrameTexture(counter));
+
+  glBegin(GL_QUADS);
+    // Front Face
+    glTexCoord2f(1.0f, 1.0f); glVertex3f(-1.0f, -1.0f,  1.0f);  // Bottom Left Of The Texture and Quad
+    glTexCoord2f(0.0f, 1.0f); glVertex3f( 1.0f, -1.0f,  1.0f);  // Bottom Right Of The Texture and Quad
+    glTexCoord2f(0.0f, 0.0f); glVertex3f( 1.0f,  1.0f,  1.0f);  // Top Right Of The Texture and Quad
+    glTexCoord2f(1.0f, 0.0f); glVertex3f(-1.0f,  1.0f,  1.0f);  // Top Left Of The Texture and Quad
+  glEnd();
+
+  glPopMatrix();
 
 }
-
-void MovieEntity::loadMovie(const char* filename)
-{
-
-}
-
Index: /branches/avi_play/src/world_entities/movie_entity.h
===================================================================
--- /branches/avi_play/src/world_entities/movie_entity.h	(revision 6506)
+++ /branches/avi_play/src/world_entities/movie_entity.h	(revision 6507)
@@ -8,23 +8,14 @@
 
 #include "world_entity.h"
-#include "comincl.h"
-#include "resource_manager.h"
 
 
 class MediaContainer;
-class Model;
 class Material;
-class FastFactory;
 
-
-//! Basic class from which all interactive stuff in the world is derived from
 class MovieEntity : public WorldEntity
 {
   private:
-    MediaContainer*                   media_container;
-    Model*                            model;
-    Material*                         material;
-
-    static FastFactory*               fastFactory;
+    MediaContainer* media_container;
+    Material* material;
 
     int counter;
@@ -41,6 +32,4 @@
     void loadMovie(const char* filename);
 
-
-
 };
 
