equal
deleted
inserted
replaced
32 {$IFDEF USE_VIDEO_RECORDING}, uVideoRec {$ENDIF} |
32 {$IFDEF USE_VIDEO_RECORDING}, uVideoRec {$ENDIF} |
33 {$IFDEF USE_TOUCH_INTERFACE}, uTouch {$ENDIF} |
33 {$IFDEF USE_TOUCH_INTERFACE}, uTouch {$ENDIF} |
34 {$IFDEF ANDROID}, GLUnit{$ENDIF} |
34 {$IFDEF ANDROID}, GLUnit{$ENDIF} |
35 ; |
35 ; |
36 |
36 |
37 procedure RunEngine(argc: LongInt; argv: PPChar); cdecl; export; |
37 function RunEngine(argc: LongInt; argv: PPChar): Longint; cdecl; export; |
38 procedure preInitEverything(); |
38 procedure preInitEverything(); |
39 procedure initEverything(complete:boolean); |
39 procedure initEverything(complete:boolean); |
40 procedure freeEverything(complete:boolean); |
40 procedure freeEverything(complete:boolean); |
41 |
41 |
42 implementation |
42 implementation |
534 SendIPCRaw(@MaxHedgehogs, sizeof(byte)); |
534 SendIPCRaw(@MaxHedgehogs, sizeof(byte)); |
535 WriteLnToConsole('Preview sent, disconnect'); |
535 WriteLnToConsole('Preview sent, disconnect'); |
536 freeEverything(false); |
536 freeEverything(false); |
537 end; |
537 end; |
538 |
538 |
539 procedure RunEngine(argc: LongInt; argv: PPChar); cdecl; export; |
539 function EngineThread(p: pointer): Longint; cdecl; export; |
|
540 begin |
|
541 if GameType = gmtLandPreview then |
|
542 GenLandPreview() |
|
543 else Game(); |
|
544 |
|
545 EngineThread:= 0 |
|
546 end; |
|
547 |
|
548 |
|
549 function RunEngine(argc: LongInt; argv: PPChar): Longint; cdecl; export; |
540 begin |
550 begin |
541 operatingsystem_parameter_argc:= argc; |
551 operatingsystem_parameter_argc:= argc; |
542 operatingsystem_parameter_argv:= argv; |
552 operatingsystem_parameter_argv:= argv; |
543 |
553 |
544 {$IFDEF PAS2C} |
554 {$IFDEF PAS2C} |
547 {$ENDIF} |
557 {$ENDIF} |
548 preInitEverything(); |
558 preInitEverything(); |
549 |
559 |
550 GetParams(); |
560 GetParams(); |
551 |
561 |
552 if GameType = gmtLandPreview then |
562 if GameType = gmtSyntax then |
553 GenLandPreview() |
563 RunEngine:= HaltUsageError |
554 else if GameType <> gmtSyntax then |
564 else |
555 Game(); |
565 begin |
556 |
566 SDL_CreateThread(@EngineThread{$IFDEF SDL2}, 'engine'{$ENDIF}, nil); |
557 // return 1 when engine is not called correctly |
567 RunEngine:= 0 |
558 //if GameType = gmtSyntax then |
568 end |
559 // exit(HaltUsageError); |
|
560 end; |
569 end; |
561 |
570 |
562 end. |
571 end. |