updated handler and fixed state in the process
This commit is contained in:
parent
55e8c44221
commit
5a0d1af942
5 changed files with 24 additions and 18 deletions
|
|
@ -18,13 +18,13 @@
|
|||
#include "arc/input/sdl/keyboard.h"
|
||||
#endif // ARC_SDL
|
||||
|
||||
void ARC_EngineData_Create(ARC_EngineData **data){
|
||||
void ARC_EngineData_Create(ARC_EngineData **data, ARC_Handler_CleanDataFn cleanfn){
|
||||
*data = (ARC_EngineData *)malloc(sizeof(ARC_EngineData));
|
||||
(*data)->window = NULL;
|
||||
(*data)->renderer = NULL;
|
||||
(*data)->mouse = NULL;
|
||||
|
||||
ARC_Handler_Create(&((*data)->state));
|
||||
ARC_Handler_Create(&((*data)->state), cleanfn);
|
||||
|
||||
ARC_WindowInfo windowInfo;
|
||||
ARC_RenderInfo renderInfo;
|
||||
|
|
@ -73,7 +73,7 @@ void ARC_EngineData_Destroy(ARC_EngineData *data){
|
|||
ARC_Keyboard_Destroy(data->keyboard);
|
||||
ARC_Renderer_Destroy(data->renderer);
|
||||
ARC_Window_Destroy(data->window);
|
||||
ARC_Handler_Destroy(data->state, data->cleanfn);
|
||||
ARC_Handler_Destroy(data->state);
|
||||
}
|
||||
|
||||
void ARC_Engine_Run(ARC_EngineData *data){
|
||||
|
|
@ -105,7 +105,8 @@ void ARC_Engine_Run(ARC_EngineData *data){
|
|||
|
||||
ARC_Keyboard_Update(data->keyboard);
|
||||
|
||||
ARC_Handler_Clean(data->state, data->cleanfn);
|
||||
ARC_Handler_Clean(data->state);
|
||||
|
||||
ARC_Handler_Iterate(data->state, ARC_State_Update);
|
||||
|
||||
ARC_Renderer_Clear(data->renderer);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue