Main.cpp 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #include <Bildschirm.h>
  2. #include <RenderThread.h>
  3. #include <KSGScript.h>
  4. #include <MausEreignis.h>
  5. #include <TastaturEreignis.h>
  6. #include <Schrift.h>
  7. #include <DateiSystem.h>
  8. #include <time.h>
  9. #include <Textfeld.h>
  10. #include <Datei.h>
  11. #include <M2Datei.h>
  12. #include <Model2D.h>
  13. #include <Bild.h>
  14. #include <Textur2D.h>
  15. #include <MiniGameV.h>
  16. #include "Minigames.h"
  17. #include <DateiSystem.h>
  18. #include "DLLDateien.h"
  19. #include <Network.h>
  20. #include <Globals.h>
  21. #include <iostream>
  22. #include <string>
  23. #include <XML.h>
  24. struct HINSTANCE__;
  25. using namespace Framework;
  26. void FClose( void *p, void *zF )
  27. {
  28. StopNachrichtenSchleife( ( (WFenster*)zF )->getFensterHandle() );
  29. }
  30. void doStuff()
  31. {
  32. Network::Start( 1 );
  33. WFenster *f = new WFenster();
  34. WNDCLASS fc = F_Normal( 0 );
  35. fc.lpszClassName = "Test";
  36. f->erstellen( WS_OVERLAPPEDWINDOW, fc );
  37. f->setSize( 800, 500 );
  38. f->setPosition( Punkt( 100, 100 ) );
  39. f->setVSchließAktion( FClose );
  40. f->setMausAktion( _ret1ME );
  41. f->setTastaturAktion( _ret1TE );
  42. f->setAnzeigeModus( 1 );
  43. Bildschirm *b = new Bildschirm3D( f->getThis() );
  44. b->setBackBufferSize( 800, 500 );
  45. f->setBildschirm( b->getThis() );
  46. b->setTestRend( 0 );
  47. LTDSDatei sd;
  48. sd.setPfad( new Text( "normal.ltds" ) );
  49. sd.leseDaten();
  50. Schrift *schrift = sd.ladeSchrift();
  51. DLLDateien dlls;
  52. API *api = new API( f );
  53. MiniGames *mGames = new MiniGames( schrift, dlls.getThis(), b, api );
  54. b->addMember( mGames->getThis() );
  55. b->update();
  56. RenderTh *r = new RenderTh();
  57. r->setBildschirm( b->getThis() );
  58. r->setMaxFps( 60 );
  59. r->setTickFunktion( []( void*p, void*o, double t )
  60. {
  61. if( getTastenStand( T_F1 ) )
  62. std::cout << t << "\n";
  63. } );
  64. r->beginn();
  65. StartNachrichtenSchleife();
  66. r->beenden();
  67. r->release();
  68. mGames->release();
  69. f->setBildschirm( 0 );
  70. b->release();
  71. f->release();
  72. schrift->release();
  73. delete api;
  74. Network::Exit();
  75. }
  76. int main()
  77. {
  78. #ifdef _DEBUG
  79. _CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );
  80. #endif
  81. initFramework();
  82. doStuff();
  83. releaseFramework();
  84. return 0;
  85. }