diff --git a/readme.txt b/readme.txt index 71aa843f..ed3c4ec5 100644 --- a/readme.txt +++ b/readme.txt @@ -1,4 +1,4 @@ -Here it is! SRB2 v2.1.6 source code! +Here it is! SRB2 v2.1.7 source code! Win32 with Visual C (6SP6+Processor Pack OR 7) diff --git a/src/r_main.c b/src/r_main.c index 6af1bf46..e17f749e 100644 --- a/src/r_main.c +++ b/src/r_main.c @@ -798,7 +798,54 @@ void R_SkyboxFrame(player_t *player) if (mapheaderinfo[gamemap-1]) { mapheader_t *mh = mapheaderinfo[gamemap-1]; - if (thiscam->chase) + if (player->awayviewtics) + { + if (skyboxmo[1]) + { + fixed_t x = 0, y = 0; + if (mh->skybox_scalex > 0) + x = (player->awayviewmobj->x - skyboxmo[1]->x) / mh->skybox_scalex; + else if (mh->skybox_scalex < 0) + x = (player->awayviewmobj->x - skyboxmo[1]->x) * -mh->skybox_scalex; + + if (mh->skybox_scaley > 0) + y = (player->awayviewmobj->y - skyboxmo[1]->y) / mh->skybox_scaley; + else if (mh->skybox_scaley < 0) + y = (player->awayviewmobj->y - skyboxmo[1]->y) * -mh->skybox_scaley; + + if (viewmobj->angle == 0) + { + viewx += x; + viewy += y; + } + else if (viewmobj->angle == ANGLE_90) + { + viewx -= y; + viewy += x; + } + else if (viewmobj->angle == ANGLE_180) + { + viewx -= x; + viewy -= y; + } + else if (viewmobj->angle == ANGLE_270) + { + viewx += y; + viewy -= x; + } + else + { + angle_t ang = viewmobj->angle>>ANGLETOFINESHIFT; + viewx += FixedMul(x,FINECOSINE(ang)) - FixedMul(y, FINESINE(ang)); + viewy += FixedMul(x, FINESINE(ang)) + FixedMul(y,FINECOSINE(ang)); + } + } + if (mh->skybox_scalez > 0) + viewz += player->awayviewmobj->z / mh->skybox_scalez; + else if (mh->skybox_scalez < 0) + viewz += player->awayviewmobj->z * -mh->skybox_scalez; + } + else if (thiscam->chase) { if (skyboxmo[1]) { diff --git a/src/sdl/macosx/Srb2mac.xcodeproj/project.pbxproj b/src/sdl/macosx/Srb2mac.xcodeproj/project.pbxproj index 16a01ee6..1704f434 100644 --- a/src/sdl/macosx/Srb2mac.xcodeproj/project.pbxproj +++ b/src/sdl/macosx/Srb2mac.xcodeproj/project.pbxproj @@ -1214,7 +1214,7 @@ C01FCF4B08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - CURRENT_PROJECT_VERSION = 2.1.6; + CURRENT_PROJECT_VERSION = 2.1.7; GCC_PREPROCESSOR_DEFINITIONS = ( "$(inherited)", NORMALSRB2, @@ -1226,7 +1226,7 @@ C01FCF4C08A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - CURRENT_PROJECT_VERSION = 2.1.6; + CURRENT_PROJECT_VERSION = 2.1.7; GCC_ENABLE_FIX_AND_CONTINUE = NO; GCC_GENERATE_DEBUGGING_SYMBOLS = NO; GCC_PREPROCESSOR_DEFINITIONS = (