Номер квадрата под курсором.
Доброго времени суток. Функция которой решил поделиться с вами (банальная вплоть до некуда), однако использую её чуть-ли не везде. Суть её в том что-бы в зависимости от позиции курсора на экране передать номер ячейки и её координату.
; -----------------------------------------------------------------------------------
; OPREDELYAYU NA KAKOY KVADRAT NAVEDEN CURSOR
; FF_MousNumKV(pX,pY,rX,rY,sXY,mX,mY,direc)
; pX,pY=start risovaniya setki / rX,rY=kol yacheek setki
; sXY=razmer kajdoy yacheyki / mX,mY=pozicita kursora na ekrane
; direc=1 vozvrat po X nomera kletki direc=2 Y
; direc=3 tochnaya koordunata X na ekrane v pikselyah direc=4 Y tochnaya koordunata na ekrane
; vozvrat ot pozicii x=1 / y=1 i do rX,rY=koll yacheek
; .................................................. .................................................
Function FF_MousNumKV(pX,pY,rX,rY,sXY,mX,mY,direc)
If mX>pX And mX<pX+(rX*sXY) Then
If mY>pY And mY<pY+(rY*sXY) Then
If direc=1 Then Return (mX-pX)/sXY+1
If direc=2 Then Return (mY-pY)/sXY+1
If direc=3 Then Return pX+((mX-pX)/sXY+1)*sXY
If direc=4 Then Return pY+((mY-pY)/sXY+1)*sXY
EndIf
EndIf
End Function
; _____________________________________________
Обычно эта функция нужна для построения 2д карты игрового поля.
То-есть рисуешь сетку в центре экрана и желаешь знать на какую ячейку на ней навёл курсор. Ну и т.д. и т.п.
__________________
|