summaryrefslogtreecommitdiff
path: root/src/test/testplay.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/testplay.c')
-rw-r--r--src/test/testplay.c45
1 files changed, 13 insertions, 32 deletions
diff --git a/src/test/testplay.c b/src/test/testplay.c
index 1d63335..1d32104 100644
--- a/src/test/testplay.c
+++ b/src/test/testplay.c
@@ -1,4 +1,5 @@
#include "gameui.h"
+#include "gamelogic.h"
#include "graphic.h"
#include "loader.h"
#include "utils.h"
@@ -9,6 +10,7 @@ int main(int argc, char **argv) {
gameIni_t gIni;
gameRess_t gRess;
gameState_t gState;
+ gameUI_t gUI;
SDL_Window *win;
SDL_Renderer *rend;
@@ -37,6 +39,7 @@ int main(int argc, char **argv) {
SDL_memset(&gIni,0,sizeof(gameIni_t));
SDL_memset(&gRess,0,sizeof(gameRess_t));
SDL_memset(&gState,0,sizeof(gameState_t));
+ SDL_memset(&gUI,0,sizeof(gameUI_t));
res=loadLevel(DATA_BASEPATH, argv[1], argv[2], &gIni);
if (res!=0) exit(res);
@@ -48,9 +51,12 @@ int main(int argc, char **argv) {
res=loadStyleRes(rend, &gIni, &gRess); if (res!=0) exit(res);
res=setInitialState(&gIni, &gState); if (res!=0) exit(res);
+ gUI.cameraX = gIni.level.xPos;
+
res=paintTerrain(&gIni, &gRess, &gState); if (res!=0) exit(res);
- res=renderTerrainToTexture(rend, &gState); if (res!=0) exit(res);
- res=buildRenderList(&gIni, &gRess, &gState); if (res!=0) exit(res);
+ res=renderTerrainToTextures(rend, gState.terrain, &gUI);
+ if (res!=0) exit(res);
+ res=buildGameRenderList(&gRess, &gUI) ;if (res!=0) exit(res);
/* Main render loop */
uiTick = 0;
@@ -64,27 +70,26 @@ int main(int argc, char **argv) {
}
}
- (void) renderTerrainToTexture(rend, &gState);
+ (void) renderTerrainToTextures(rend, gState.terrain, &gUI);
SDL_RenderClear(rend);
- (void) renderSprites(rend, &gState);
+ (void) renderSprites(rend, &gUI);
SDL_RenderPresent(rend);
if (uiTick % 4 == 0) {
int i;
gState.tick++;
- for (i=0;i<gState.renderListSize;i++) {
- renderItem_t *it = &gState.renderList[i];
+ for (i=0;i<gUI.renderListSize;i++) {
+ renderItem_t *it = &gUI.renderList[i];
if (it->animate==1) {
it->currframe = (it->currframe + 1) % it->sprite->frames;
}
}
}
SDL_Delay(25);
- gState.cameraX = (gState.cameraX + 1) % (LEVEL_WIDTH - MPL_WIN_W);
+ gUI.cameraX = (gUI.cameraX + 1) % (LEVEL_WIDTH - MPL_WIN_W);
uiTick++;
}
- disposeRenderList(&gState);
unloadStyleRes(&gRess);
unloadMiscRes(&gRess);
@@ -128,27 +133,3 @@ int addRLitem(renderItem_t list[], sprite_t *it, int rlMaxLen) {
return cur;
}
-int buildTestRL(gameRess_t *gRess, gameState_t *gState, int rlMaxLen, renderItem_t renderList[]) {
- int i, rlLen;
-
- rlLen=addRLitem(renderList, &gState->terrainSprite, rlMaxLen);
- rlLen=addRLitem(renderList, NULL, rlMaxLen);
-
- for (i=0; i<MAX_LEMMANIM_COUNT; i++) {
- rlLen=addRLitem(renderList, &gRess->lemmingAnims[i], rlMaxLen);
- }
- rlLen=addRLitem(renderList, NULL, rlMaxLen);
-
- for (i=0; i<MAX_OBJECTS_COUNT; i++) {
- rlLen=addRLitem(renderList, &gRess->objects[i], rlMaxLen);
- }
- rlLen=addRLitem(renderList, NULL, rlMaxLen);
-
- rlLen=addRLitem(renderList, &gRess->font1, rlMaxLen);
- rlLen=addRLitem(renderList, &gRess->font2, rlMaxLen);
- rlLen=addRLitem(renderList, &gRess->countdown, rlMaxLen);
- rlLen=addRLitem(renderList, &gRess->cursor, rlMaxLen);
-
- return rlLen;
-}
-