# HG changeset patch # User Ritor1 # Date 1364210999 -21600 # Node ID e95389c8680aba5b6d2f75161c63271a25bbe17e # Parent 305ba6e71c711bacd1c60f7b2a65cd570c95492c# Parent 472ca68386d4fa3bc96677dabd9564ea200f3a82 Слияние diff -r 472ca68386d4 -r e95389c8680a Events.cpp --- a/Events.cpp Mon Mar 25 14:23:40 2013 +0200 +++ b/Events.cpp Mon Mar 25 17:29:59 2013 +0600 @@ -338,12 +338,10 @@ memcpy(pSomeEVT_Events, pLevelEVT_Index, sizeof(EventIndex)*4400); } - v4 = 0; v124 = 0; //for (uint i = 0; i < uSomeEVT_NumEvents; ++i) // { - //v6 = v123; //v7 = ""; while ( 1 ) @@ -1040,8 +1038,7 @@ sub_4451A8_press_any_key(uEventID, v105, v121); LABEL_301: if ( v133 == 1 ) -LABEL_302: - OnMapLeave(); + OnMapLeave(); return; } v84 = _evt->v13 + ((_evt->v14 + ((_evt->v15 + ((uint)_evt->v16 << 8)) << 8)) << 8); @@ -1071,12 +1068,16 @@ case EVENT_ReceiveDamage: v85 = EVT_DWORD(_evt->v7 ); v86 = _evt->v5; - if ( (unsigned __int8)v86 <= 3u ) + if ( (unsigned __int8)v86 <= 3 ) { v119 = _evt->v6; v115 = EVT_DWORD(_evt->v7 ); v89 = (unsigned __int8)v86; - goto LABEL_233; + v88 = &pParty->pPlayers[v89]; + v88->ReceiveDamage(v115, v119); + ++curr_seq_num; + v4 = v124; + break; } if ( v86 == 4 ) { @@ -1092,16 +1093,17 @@ v119 = _evt->v6; v88 = pPlayers[uActiveCharacter]; v115 = EVT_DWORD(_evt->v7 ); - goto LABEL_234; + v88->ReceiveDamage(v115, v119); + ++curr_seq_num; + v4 = v124; + break; } if ( v86 != 5 ) { v119 = _evt->v6; v115 = EVT_DWORD(_evt->v7 ); v89 = rand() % 4; -LABEL_233: v88 = &pParty->pPlayers[v89]; -LABEL_234: v88->ReceiveDamage(v115, v119); ++curr_seq_num; v4 = v124; @@ -1372,7 +1374,8 @@ pDialogueWindow = 0; pIcons_LOD->_40F9C5(); } - goto LABEL_302; + OnMapLeave(); + return; } } ++curr_seq_num; diff -r 472ca68386d4 -r e95389c8680a Game.cpp --- a/Game.cpp Mon Mar 25 14:23:40 2013 +0200 +++ b/Game.cpp Mon Mar 25 17:29:59 2013 +0600 @@ -334,7 +334,6 @@ if ( pArcomageGame->bGameInProgress ) { ArcomageGame::Loop(); -//LABEL_89: pRenderer->Present(); continue; } diff -r 472ca68386d4 -r e95389c8680a Indoor.cpp --- a/Indoor.cpp Mon Mar 25 14:23:40 2013 +0200 +++ b/Indoor.cpp Mon Mar 25 17:29:59 2013 +0600 @@ -536,11 +536,14 @@ if (pFace->Fluid() && pFace->uBitmapID == pRenderer->hd_water_tile_id ) { - __debugbreak(); v23 = pRenderer->pHDWaterBitmapIDs[pRenderer->hd_water_current_frame]; - goto LABEL_42; + v27 = pBitmaps_LOD->pHardwareTextures[v23]; + if (pFace->uAttributes & FACE_DO_NOT_LIGHT) + _479A53_draw_some_blv_poly(uNumVerticesa, uFaceID); + else + pRenderer->DrawIndoorPolygon(uNumVerticesa, pFace, v27, v28, 8 * uFaceID | OBJECT_BModel, v17, 0); + return; } - if (pFace->Fluid()) { //auto v24 = GetTickCount() / 4; @@ -552,14 +555,17 @@ for (uint i = 0; i < uNumVerticesa; ++i) //array_507D30[i].v += (double)(pBitmaps_LOD->pTextures[pFace->uBitmapID].uHeightMinus1 & (unsigned int)(stru_5C6E00->SinCos(v25) >> 8)); array_507D30[i].v += pBitmaps_LOD->pTextures[pFace->uBitmapID].uHeightMinus1 * cosf(angle); - v23 = pFace->uBitmapID; - goto LABEL_42; + v27 = pBitmaps_LOD->pHardwareTextures[v23]; + if (pFace->uAttributes & FACE_DO_NOT_LIGHT) + _479A53_draw_some_blv_poly(uNumVerticesa, uFaceID); + else + pRenderer->DrawIndoorPolygon(uNumVerticesa, pFace, v27, v28, 8 * uFaceID | OBJECT_BModel, v17, 0); + return; } else if (pFace->uAttributes & 0x4000) { v23 = pTextureFrameTable->GetFrameTexture(pFace->uBitmapID, pBLVRenderParams->field_0_timer_); -LABEL_42: v27 = pBitmaps_LOD->pHardwareTextures[v23]; if (pFace->uAttributes & FACE_DO_NOT_LIGHT) _479A53_draw_some_blv_poly(uNumVerticesa, uFaceID); @@ -569,7 +575,12 @@ } v17 = 0xFFFFFFFF; v23 = pFace->uBitmapID; - goto LABEL_42; + v27 = pBitmaps_LOD->pHardwareTextures[v23]; + if (pFace->uAttributes & FACE_DO_NOT_LIGHT) + _479A53_draw_some_blv_poly(uNumVerticesa, uFaceID); + else + pRenderer->DrawIndoorPolygon(uNumVerticesa, pFace, v27, v28, 8 * uFaceID | OBJECT_BModel, v17, 0); + return;; } } }