X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fgame%2Fg_holmes.pas;h=3a50ffaba189b0355483ab7aa86d5eb26f4a009a;hb=9ab8e0d74b399aad6fd4793f427503bb857a4236;hp=7f2ddb09168f53ba9e88a7f3d0d66828a7db60bc;hpb=293ea7628b51495cb55d020e33db3aa262c1085f;p=d2df-sdl.git diff --git a/src/game/g_holmes.pas b/src/game/g_holmes.pas index 7f2ddb0..3a50ffa 100644 --- a/src/game/g_holmes.pas +++ b/src/game/g_holmes.pas @@ -76,6 +76,7 @@ procedure g_Holmes_WindowFocused (); procedure g_Holmes_WindowBlured (); procedure g_Holmes_Draw (); +procedure g_Holmes_DrawUI (); function g_Holmes_MouseEvent (var ev: THMouseEvent): Boolean; // returns `true` if event was eaten function g_Holmes_KeyEvent (var ev: THKeyEvent): Boolean; // returns `true` if event was eaten @@ -116,6 +117,7 @@ var // ////////////////////////////////////////////////////////////////////////// // var + g_ol_nice: Boolean = false; g_ol_rlayer_back: Boolean = false; g_ol_rlayer_step: Boolean = false; g_ol_rlayer_wall: Boolean = false; @@ -181,6 +183,8 @@ begin llb.appendItem('acid2', @g_ol_rlayer_acid2); llb.appendItem('water', @g_ol_rlayer_water); llb.appendItem('foreground', @g_ol_rlayer_fore); + llb.appendItem('', nil); + llb.appendItem('slow''n''nice', @g_ol_nice); winOutlines := THTopWindow.Create('outlines', 100, 10); winOutlines.escClose := true; winOutlines.appendChild(llb); @@ -308,30 +312,23 @@ begin end; +var + olEdgeL: array of Boolean = nil; + olEdgeR: array of Boolean = nil; + olEdgeU: array of Boolean = nil; + olEdgeD: array of Boolean = nil; + +procedure drawOutlines (); +begin +end; + + procedure plrDebugDraw (); procedure drawTileGrid (); var x, y: Integer; begin - { - y := mapGrid.gridY0; - while (y < mapGrid.gridY0+mapGrid.gridHeight) do - begin - x := mapGrid.gridX0; - while (x < mapGrid.gridX0+mapGrid.gridWidth) do - begin - if (x+mapGrid.tileSize > vpx) and (y+mapGrid.tileSize > vpy) and - (x < vpx+vpw) and (y < vpy+vph) then - begin - //e_DrawQuad(x, y, x+mapGrid.tileSize-1, y+mapGrid.tileSize-1, 96, 96, 96, 96); - drawRect(x, y, mapGrid.tileSize, mapGrid.tileSize, 96, 96, 96, 255); - end; - Inc(x, mapGrid.tileSize); - end; - Inc(y, mapGrid.tileSize); - end; - } for y := 0 to (mapGrid.gridHeight div mapGrid.tileSize) do begin drawLine(mapGrid.gridX0, mapGrid.gridY0+y*mapGrid.tileSize, mapGrid.gridX0+mapGrid.gridWidth, mapGrid.gridY0+y*mapGrid.tileSize, 96, 96, 96, 255); @@ -489,6 +486,8 @@ begin glPushMatrix(); glTranslatef(-vpx, -vpy, 0); + drawOutlines(); + if (showGrid) then drawTileGrid(); if (laserSet) then g_Mons_AlongLine(laserX0, laserY0, laserX1, laserY1, monsCollector, true); @@ -686,11 +685,14 @@ begin plrDebugDraw(); end; - uiDraw(); + laserSet := false; +end; - drawCursor(); - laserSet := false; +procedure g_Holmes_DrawUI (); +begin + uiDraw(); + drawCursor(); end;