[BACK] Return to client.cpp CVS log [TXT][DIR] Up to Nevrax / code / client

Diff for /code/client/Attic/client.cpp between version 1.10 and 1.11

version 1.10, 2000/12/04 10:47:15 version 1.11, 2000/12/04 17:58:09
Line 56 
Line 56 
 #endif #endif
  
  
 CEventListenerAsync asyncListener; 
 CMoveListener moveListener; CMoveListener moveListener;
  
  
Line 105 
Line 104 
  */  */
 void zoneMainProc(CScene * scene) void zoneMainProc(CScene * scene)
 { {
         /* 
         static CVector cameraRot(CVector::Null); 
         static CVector cameraPos(0,-20,0); 
         static uint32 framesCount; 
  
         // time mgt. 
         static float t0= (sint64)CTime::getLocalTime()*0.001f; 
         static float t1; 
         t1= (sint64)CTime::getLocalTime()*0.001f; 
         float        dt= t1-t0; 
         dt= 0.02f; 
  
          
         // Speed 
         const uint8 nspeed = 5; 
         static float speedBuf[nspeed]= { 1.66f, // 6km/h 
                                                                             3.33f, // 12km/h 
                                                                          8.33f, // 30km/h 
                                                                          40.0f, // 144km/h 
                                                                          200.0f // 700km/h 
                                                                         }; 
         static uint8 idSpeed = 2; 
         float speed = speedBuf[idSpeed]; 
         if(asyncListener.isKeyPush(KeyS))//getPressKeyState(KeyS)) 
         { 
                 idSpeed++; 
                 idSpeed %= nspeed; 
                 speed = speedBuf[idSpeed]; 
         } 
          
         // Rotation 
         float rotSpeed = 80*(float)Pi/180; 
         if(asyncListener.isKeyPush(KeyLEFT))        cameraRot.z += rotSpeed*dt; 
         if(asyncListener.isKeyPush(KeyRIGHT))        cameraRot.z -= rotSpeed*dt; 
         if(asyncListener.isKeyPush(KeyHOME))        cameraRot.x += rotSpeed*dt; 
         if(asyncListener.isKeyPush(KeyEND))                cameraRot.x -= rotSpeed*dt; 
  
         // Move 
         CVector        dir(0,speed*dt,0); 
         CMatrix        mat; 
         mat.identity(); 
         mat.rotateZ(cameraRot.z); 
         mat.rotateX(cameraRot.x); 
         dir= mat.mulVector(dir); 
         if(asyncListener.isKeyPush(KeyUP))                cameraPos += dir; 
         if(asyncListener.isKeyPush(KeyDOWN))        cameraPos -= dir; 
         if(asyncListener.isKeyPush(KeyA))                cameraPos.z += speed*dt; 
         if(asyncListener.isKeyPush(KeyQ))                cameraPos.z -= speed*dt; 
         if(asyncListener.isKeyPush(KeyR))                 
         { 
                 cameraPos.set(0,0,0); 
                 cameraRot.set(0,0,0); 
         } 
  
         // Straff 
         float straff = 0; 
         if(asyncListener.isKeyPush(KeyW))        straff = -speed*dt; 
         if(asyncListener.isKeyPush(KeyX))        straff = speed*dt; 
         if(straff) 
         { 
                 CMatrix        m; 
                 m.identity(); 
                 m.rotateZ(cameraRot.z); 
                 m.rotateX(cameraRot.x); 
                 cameraPos += m*CVector(straff,0,0); 
         } 
          
  
         // Camera 
         CMatrix cam; 
         cam.identity(); 
         cam.setRot(cameraRot, CMatrix::ZXY); 
         cam.setPos(cameraPos); 
         CSceneUt::Camera->setMatrix(cam); 
         */ 
  
          
         //scene->getDriver()->setupViewMatrix(moveListener.getViewMatrix()); 
         CSceneUt::Camera->setMatrix(moveListener.getViewMatrix()); 
          
          
          
          
         // Render.         // Render.
         scene->clearBuffers(CRGBA(255,251,240));         scene->clearBuffers(CRGBA(255,251,240));
         scene->render();         scene->render();
         scene->swapBuffers();         scene->swapBuffers();
  
         //t0 = t1; 
  
         //framesCount++; 
 } }
  
  
Line 204 
Line 116 
 /** /**
  * displayZone  * displayZone
  */  */
 void displayZone(CScene * scene, const char * zonePath) void displayZone(CScene * scene, uint w, uint h, const char * zonePath)
 { {
         // Positioning camera         // Positioning camera
         CMatrix        camera;         CMatrix        camera;
         camera.identity();         camera.identity();
         camera.setPos(CVector(0,-20,0));         camera.setPos(CVector(0,-20,0));
         CSceneUt::Camera->setMatrix(camera);         CNELU::Camera->setMatrix(camera);
  
         // Create a Landscape         // Create a Landscape
         CLandscapeModel        * land;         CLandscapeModel        * land;
Line 231 
Line 143 
         CIFile bankFile("C:/Windows/bureau/tileset/bank.bank");         CIFile bankFile("C:/Windows/bureau/tileset/bank.bank");
         land->Landscape->TileBank.serial(bankFile);         land->Landscape->TileBank.serial(bankFile);
  
          scene->getDriver()->showCursor(false);
  
         // Events management         // Events management
         CEventServer server;         CNELU::EventServer.addEmitter(scene->getDriver()->getEventEmitter());
         server.addEmitter(scene->getDriver()->getEventEmitter());         CNELU::AsyncListener.addToServer(CNELU::EventServer);
         asyncListener.addToServer(server);         moveListener.init(scene, w, h, *CNELU::Camera);
         moveListener.setWithCamera(*CSceneUt::Camera);         moveListener.addToServer(CNELU::EventServer);
         moveListener.setViewport(scene->getViewport()); 
         moveListener.addToServer(server); 
         do         do
         {         {
                 server.pump();                 CNELU::EventServer.pump();
                 zoneMainProc(scene);                 zoneMainProc(scene);
         }         }
         while(!asyncListener.isKeyPush(KeyESCAPE));         while(!CNELU::AsyncListener.isKeyPush(KeyESCAPE));
  
          CNELU::AsyncListener.removeFromServer(CNELU::EventServer);
          moveListener.removeFromServer(CNELU::EventServer);
  
          scene->getDriver()->showCursor(true);
          
  
         asyncListener.removeFromServer(server); 
         moveListener.removeFromServer(server); 
 } }
  
  
Line 270 
Line 186 
                 uint w = 800;                 uint w = 800;
                 uint h = 600;                 uint h = 600;
                 uint bpp = 32;                 uint bpp = 32;
                 bool windowed = true; //false;                 bool windowed = false;
                 NL3D::CScene scene;                 NL3D::CNELU::init(w, h, CViewport(), bpp, windowed);
                 NL3D::CSceneUt::init3d(scene, w, h, scene.getViewport(), bpp, windowed);  
  
                 // synchronize time with server                 // synchronize time with server
                 CUniTime::syncUniTimeFromService();                 CUniTime::syncUniTimeFromService();
Line 296 
Line 211 
                                 // language choice                                 // language choice
                                 case LANGUAGE:                                         case LANGUAGE:        
                                 {                                 {
                                         sint languageIndex = chooseLanguage(&scene, &fontGen, w, h);                                         sint languageIndex = chooseLanguage(&CNELU::Scene, &fontGen, w, h);
                                         if(languageIndex==-1)                                          if(languageIndex==-1)
                                                 quit = true;                                                 quit = true;
                                         else                                         else
Line 310 
Line 225 
                                 // get user's login and password                                 // get user's login and password
                                 case LOGIN:                                  case LOGIN:
                                 {                                 {
                                         if(login(&scene, &fontGen, w, h, shards))                                         if(login(&CNELU::Scene, &fontGen, w, h, shards))
                                                 clientState = SHARD;                                                 clientState = SHARD;
                                         else                                         else
                                                 clientState = LANGUAGE;                                                 clientState = LANGUAGE;
Line 320 
Line 235 
                                 // shard choice                                 // shard choice
                                 case SHARD:                                 case SHARD:
                                 {                                 {
                                         shardIndex = chooseShard(&scene, &fontGen, w, h, shards);                                         shardIndex = chooseShard(&CNELU::Scene, &fontGen, w, h, shards);
                                         if(shardIndex==-1)                                         if(shardIndex==-1)
                                                 clientState = LOGIN;                                                 clientState = LOGIN;
                                         else                                         else
Line 333 
Line 248 
                 }                 }
  
                 // display a zone                 // display a zone
                 displayZone(&scene,"pipo.zon");                 displayZone(&CNELU::Scene,w,h,"pipo.zon");
                                  
                 // release scene                 // release nelu
                 NL3D::CSceneUt::release3d(scene);                 NL3D::CNELU::release();
                                  
         }         }
         catch(Exception &e)         catch(Exception &e)


Legend:
Removed from v.1.10 
changed lines
 Added in v.1.11