|
|
|
|
@ -2692,19 +2692,26 @@ void StoreEnter()
|
|
|
|
|
void CheckStoreBtn() |
|
|
|
|
{ |
|
|
|
|
const Point uiPosition = GetUIRectangle().position; |
|
|
|
|
const Rectangle windowRect { { uiPosition.x + 344, uiPosition.y + PaddingTop - 7 }, { 271, 303 } }; |
|
|
|
|
const Rectangle windowRectFull { { uiPosition.x + 24, uiPosition.y + PaddingTop - 7 }, { 591, 303 } }; |
|
|
|
|
|
|
|
|
|
if (!stextsize) { |
|
|
|
|
if (!windowRect.contains(MousePosition)) { |
|
|
|
|
while (stextflag != TalkID::None) |
|
|
|
|
StoreESC(); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
if (!windowRectFull.contains(MousePosition)) { |
|
|
|
|
while (stextflag != TalkID::None) |
|
|
|
|
StoreESC(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (qtextflag) { |
|
|
|
|
qtextflag = false; |
|
|
|
|
if (leveltype == DTYPE_TOWN) |
|
|
|
|
stream_stop(); |
|
|
|
|
} else if (stextsel != -1 && MousePosition.y >= (PaddingTop + uiPosition.y) && MousePosition.y <= (320 + uiPosition.y)) { |
|
|
|
|
if (!stextsize) { |
|
|
|
|
if (MousePosition.x < 344 + uiPosition.x || MousePosition.x > 616 + uiPosition.x) |
|
|
|
|
return; |
|
|
|
|
} else { |
|
|
|
|
if (MousePosition.x < 24 + uiPosition.x || MousePosition.x > 616 + uiPosition.x) |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} else if (stextsel != -1) { |
|
|
|
|
const int relativeY = MousePosition.y - (uiPosition.y + PaddingTop); |
|
|
|
|
|
|
|
|
|
if (stextscrl && MousePosition.x > 600 + uiPosition.x) { |
|
|
|
|
|