diff --git a/applications/tappytux/gameconfigform.pas b/applications/tappytux/gameconfigform.pas
index 059e2d474..8e9de6e8c 100644
--- a/applications/tappytux/gameconfigform.pas
+++ b/applications/tappytux/gameconfigform.pas
@@ -108,8 +108,14 @@ begin
end;
procedure TformConfig.FormCreate(Sender: TObject);
+var
+ i: Integer;
begin
TranslateUI();
+
+ // Initialize modules
+ for i := 0 to GetModuleCount() do
+ GetModule(i).InitModule();
end;
procedure TformConfig.TranslateUI;
diff --git a/applications/tappytux/tappymodules.pas b/applications/tappytux/tappymodules.pas
index f6c75d7b8..62ba1a17b 100644
--- a/applications/tappytux/tappymodules.pas
+++ b/applications/tappytux/tappymodules.pas
@@ -23,6 +23,7 @@ type
procedure TranslateTexts(ALanguage: Integer);
procedure TranslateTextsToEnglish; virtual;
procedure TranslateTextsToPortuguese; virtual;
+ procedure InitModule(); virtual;
procedure StartNewGame(); virtual; abstract;
procedure EndGame(); virtual; abstract;
end;
@@ -73,8 +74,6 @@ begin
imgLevel2 := TJPEGImage.Create;
imgLevel3 := TJPEGImage.Create;
- LoadImages();
-
TranslateTexts(ID_ENGLISH);
end;
@@ -119,6 +118,11 @@ begin
end;
+procedure TTappyModule.InitModule;
+begin
+ LoadImages();
+end;
+
initialization
gTappyModules := TFPList.Create;
finalization
diff --git a/applications/tappytux/tappytux.lpi b/applications/tappytux/tappytux.lpi
index aa6173b2a..671d3bdee 100644
--- a/applications/tappytux/tappytux.lpi
+++ b/applications/tappytux/tappytux.lpi
@@ -101,6 +101,10 @@
+
+
+
+