 |
|

18.10.2016, 16:53
|
|
Познающий
Регистрация: 03.11.2014
Сообщений: 43
С нами:
6065807
Репутация:
0
|
|
Почему не перемещает за размеры 500, 500? OnMouseHover(x, y, 500, 500)
C++:
Код:
BOOL
OnMouseHover
(
int
x
,
int
y
,
int
w
,
int
h
)
{
POINT pos
;
GetCursorPos
(
&
pos
)
;
return
(
pos
.
x
>=
x
&&
pos
.
x
=
y
&&
pos
.
y
getGame
(
)
->
isKeyDown
(
0x01
)
)
{
POINT pt
;
GetCursorPos
(
&
pt
)
;
x
=
pt
.
x
,
y
=
pt
.
y
;
}
}
|
|
|

19.10.2016, 10:44
|
|
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами:
6438231
Репутация:
133
|
|
Сообщение от Skadi
Почему не перемещает за размеры 500, 500? OnMouseHover(x, y, 500, 500)
C++:
Код:
BOOL
OnMouseHover
(
int
x
,
int
y
,
int
w
,
int
h
)
{
POINT pos
;
GetCursorPos
(
&
pos
)
;
return
(
pos
.
x
>=
x
&&
pos
.
x
=
y
&&
pos
.
y
getGame
(
)
->
isKeyDown
(
0x01
)
)
{
POINT pt
;
GetCursorPos
(
&
pt
)
;
x
=
pt
.
x
,
y
=
pt
.
y
;
}
}
Пример :
C++:
Код:
static
POINT offset
;
POINT cursor
=
SF
->
getGame
(
)
->
getCursorPos
(
)
;
if
(
cursor
.
x
hpX
-
30
&&
cursor
.
y
hpY
-
30
)
{
if
(
SF
->
getGame
(
)
->
isKeyPressed
(
VK_LBUTTON
)
)
{
offset
.
x
=
hpX
-
cursor
.
x
;
offset
.
y
=
hpY
-
cursor
.
y
;
}
if
(
SF
->
getGame
(
)
->
isKeyDown
(
VK_LBUTTON
)
)
{
hpX
=
cursor
.
x
+
offset
.
x
;
hpY
=
cursor
.
y
+
offset
.
y
;
}
}
Или попробуй вот так :
Сообщение от Skadi
Почему не перемещает за размеры 500, 500? OnMouseHover(x, y, 500, 500)
C++:
Код:
BOOL
OnMouseHover
(
int
x
,
int
y
,
int
w
,
int
h
)
{
POINT pos
;
GetCursorPos
(
&
pos
)
;
return
(
pos
.
x
>=
x
&&
pos
.
x
=
y
&&
pos
.
y
getGame
(
)
->
isKeyDown
(
0x01
)
)
{
if
(
OnMouseHover
(
x
,
y
,
500
,
500
)
)
{
POINT pt
;
GetCursorPos
(
&
pt
)
;
x
=
pt
.
x
,
y
=
pt
.
y
;
}
}
|
|
|

19.10.2016, 12:17
|
|
Познающий
Регистрация: 03.11.2014
Сообщений: 43
С нами:
6065807
Репутация:
0
|
|
Сообщение от iAmerican
Пример :
C++:
Код:
static
POINT offset
;
POINT cursor
=
SF
->
getGame
(
)
->
getCursorPos
(
)
;
if
(
cursor
.
x
hpX
-
30
&&
cursor
.
y
hpY
-
30
)
{
if
(
SF
->
getGame
(
)
->
isKeyPressed
(
VK_LBUTTON
)
)
{
offset
.
x
=
hpX
-
cursor
.
x
;
offset
.
y
=
hpY
-
cursor
.
y
;
}
if
(
SF
->
getGame
(
)
->
isKeyDown
(
VK_LBUTTON
)
)
{
hpX
=
cursor
.
x
+
offset
.
x
;
hpY
=
cursor
.
y
+
offset
.
y
;
}
}
уже лучше, но всё равно возвращает на исходные координаты, если далеко увожу мышку.
|
|
|

19.10.2016, 16:30
|
|
Новичок
Регистрация: 09.05.2010
Сообщений: 0
С нами:
8425825
Репутация:
0
|
|
Подскажите, почему GetHealth() постоянно показывает 100 и только если оно берет хп моё тогда правильно показывает?!
C++:
[CODE]
if
(
SF
->
getGame
(
)
->
isKeyPressed
(
VK_F10
)
)
{
CVehicle
*
pCurrentVehicle
=
GAME
->
GetPools
(
)
->
GetVehicle
(
reinterpret_cast
(
SF
->
getGame
(
)
->
vehicleInfoGet
(
VEHICLE_SELF
,
0
)
)
)
;
if
(
pCurrentVehicle
)
{
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"IsBeingDriven - %d | PassengerCount - %d"
,
pCurrentVehicle
->
IsBeingDriven
(
)
,
pCurrentVehicle
->
GetPassengerCount
(
)
)
;
for
(
int
i
=
0
,
j
=
pCurrentVehicle
->
GetPassengerCount
(
)
,
pid
=
-
1
;
i
GetPassenger
(
i
)
;
if
(
passenger
)
{
pid
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
GetSAMPPlayerIDFromGTAHandle
(
GAME
->
GetPools
(
)
->
GetPedRef
(
passenger
)
)
;
auto
hp
=
passenger
->
GetHealth
(
)
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"GetPassenger(%d) - %s[%d] | HP - %f"
,
i
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
GetPlayerName
(
pid
)
,
pid
,
hp
)
;
if
(
hp
|
|
|

19.10.2016, 17:35
|
|
Постоянный
Регистрация: 26.05.2013
Сообщений: 692
С нами:
6822856
Репутация:
213
|
|
|
|
|

29.10.2016, 03:41
|
|
Постоянный
Регистрация: 10.07.2015
Сообщений: 642
С нами:
5706781
Репутация:
43
|
|
C++:
Код:
stBulletData bulletData
;
memset
(
&
bulletData
,
0
,
sizeof
(
stBulletData
)
)
;
byte packetID
;
params
->
bitStream
->
ResetReadPointer
(
)
;
params
->
bitStream
->
Read
(
packetID
)
;
params
->
bitStream
->
Read
(
(
char
*
)
&
bulletData
,
sizeof
(
stBulletData
)
)
;
params
->
bitStream
->
ResetReadPointer
(
)
;
SF
->
Log
(
"-> TargetID: %d | Target: %.3f, %.3f, %.3f | Origin: %.3f, %.3f, %.3f | Center: %.3f, %.3f, %.3f"
,
bulletData
.
sTargetID
,
bulletData
.
fTarget
[
0
]
,
bulletData
.
fTarget
[
1
]
,
bulletData
.
fTarget
[
2
]
,
bulletData
.
fOrigin
[
0
]
,
bulletData
.
fOrigin
[
1
]
,
bulletData
.
fOrigin
[
2
]
,
bulletData
.
fCenter
[
0
]
,
bulletData
.
fCenter
[
1
]
,
bulletData
.
fCenter
[
2
]
)
;
А в логе получаю вот это:
C++:
Код:
TagetID
:
256
|
Target
:
-
123526324853786050000000.000
,
3002534671919167300000.000
,
-
157041088764241890000000000000000.000
|
Origin
:
2224.054
,
-
0.000
,
-
70597757144914183000000000000000.000
|
Center
:
-
2.004
,
0.000
,
-
2600830318495991100000000000000000.000
В чем проблема?
|
|
|

29.10.2016, 03:54
|
|
Флудер
Регистрация: 17.06.2013
Сообщений: 3,635
С нами:
6791977
Репутация:
183
|
|
там player id после ид пакета
|
|
|

29.10.2016, 15:57
|
|
Постоянный
Регистрация: 10.07.2015
Сообщений: 642
С нами:
5706781
Репутация:
43
|
|
Сообщение от DarkP1xel
там player id после ид пакета
Почему тогда outcoming пакет читается нормально?
upd:
Все работает. Спасибо.
Как реализовать функци. get_z_angle_for_point на С++. Мне нужно отправить ложную онфут синхру.
|
|
|

31.10.2016, 16:04
|
|
Участник форума
Регистрация: 14.05.2014
Сообщений: 149
С нами:
6314183
Репутация:
68
|
|
Можно ли как-то вставить текст в input диалога?
|
|
|

31.10.2016, 16:46
|
|
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами:
6603505
Репутация:
183
|
|
[QUOTE="MoZg"]
Подскажите, почему GetHealth() постоянно показывает 100 и только если оно берет хп моё тогда правильно показывает?!
C++:
[CODE]
if
(
SF
->
getGame
(
)
->
isKeyPressed
(
VK_F10
)
)
{
CVehicle
*
pCurrentVehicle
=
GAME
->
GetPools
(
)
->
GetVehicle
(
reinterpret_cast
(
SF
->
getGame
(
)
->
vehicleInfoGet
(
VEHICLE_SELF
,
0
)
)
)
;
if
(
pCurrentVehicle
)
{
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"IsBeingDriven - %d | PassengerCount - %d"
,
pCurrentVehicle
->
IsBeingDriven
(
)
,
pCurrentVehicle
->
GetPassengerCount
(
)
)
;
for
(
int
i
=
0
,
j
=
pCurrentVehicle
->
GetPassengerCount
(
)
,
pid
=
-
1
;
i
GetPassenger
(
i
)
;
if
(
passenger
)
{
pid
=
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
GetSAMPPlayerIDFromGTAHandle
(
GAME
->
GetPools
(
)
->
GetPedRef
(
passenger
)
)
;
auto
hp
=
passenger
->
GetHealth
(
)
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"GetPassenger(%d) - %s[%d] | HP - %f"
,
i
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
GetPlayerName
(
pid
)
,
pid
,
hp
)
;
if
(
hp
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|