Main.cpp 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #include <main.h>
  2. #include <Network.h>
  3. #include <HttpRequest.h>
  4. #include <JSON.h>
  5. #include <Fenster.h>
  6. #include <Bildschirm.h>
  7. #include <GraphicsApi.h>
  8. #include <RenderThread.h>
  9. #include <Datei.h>
  10. #include <Schrift.h>
  11. #include <DateiSystem.h>
  12. #include "Globals.h"
  13. int KSGStart Framework::Start( Framework::Startparam p )
  14. {
  15. Network::Start( 20 );
  16. initVariables();
  17. setDebugDX( 0 );
  18. Datei d;
  19. d.setDatei( "data/schriften" );
  20. auto list = d.getDateiListe();
  21. for( Text* fontFile : *list )
  22. {
  23. LTDSDatei dat;
  24. dat.setPfad( new Text( Text( "data/schriften/" ).operator+( fontFile->getText() ) ) );
  25. dat.leseDaten();
  26. Text* name = fontFile->getTeilText( 0, fontFile->getLength() - 5 );
  27. fontRegister->put( *name, RCPointer<Schrift>::of( dat.ladeSchrift() ) );
  28. name->release();
  29. }
  30. list->release();
  31. WFenster window;
  32. ::window = &window;
  33. WNDCLASS wc = Framework::F_Normal( p.hinst );
  34. wc.lpszClassName = "Factory Craft";
  35. window.erstellen( WS_POPUPWINDOW, wc );
  36. Monitor m = Framework::getMonitor( 0 );
  37. window.setBounds( Punkt( m.x, m.y ), Punkt( m.breite, m.height ) );
  38. window.setAnzeigeModus( SW_SHOWNORMAL );
  39. window.setVSchließAktion( [&window]( void* p, void* f ) {
  40. StopNachrichtenSchleife( window.getFensterHandle() );
  41. } );
  42. window.setMausAktion( _ret1ME );
  43. window.setTastaturAktion( _ret1TE );
  44. Bildschirm3D screen( dynamic_cast<WFenster*>(window.getThis()), GraphicApiType::DIRECTX11 );
  45. window.setBildschirm( dynamic_cast<Bildschirm*>(screen.getThis()) );
  46. screen.setFillFarbe( 0 );
  47. uiFactory = Framework::defaultUI( fontRegister->get( "normal" ), &screen );
  48. initMenus();
  49. RenderTh rTh;
  50. rTh.setMaxFps( 120 );
  51. rTh.setBildschirm( dynamic_cast<Bildschirm*>(screen.getThis()) );
  52. rTh.beginn();
  53. StartNachrichtenSchleife();
  54. rTh.beenden();
  55. releaseVariables();
  56. Network::Exit();
  57. return 0;
  58. }