whyhardlyz
25.12.2023, 10:45
ни одна задержка при помощи таймера GetTickCount в мейнлупе не работает, можете пальцем ткнуть в чём ошибка, или помочь расставить dwTickStart = GetTickCount();
C++:
if
(
state
)
{
if
(
(
GetTickCount
(
)
-
dwTickStart
)
>
50
)
{
// тут выполняется функция
float
playerPos
[
3
]
=
{
PEDSELF
->
GetPosition
(
)
->
fX
,
PEDSELF
->
GetPosition
(
)
->
fY
,
PEDSELF
->
GetPosition
(
)
->
fZ
}
;
float
targetPos
[
3
]
=
{
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
0
]
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
1
]
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
2
]
}
;
dwTickStart
=
GetTickCount
(
)
;
if
(
getDist
(
playerPos
,
targetPos
)
1200
)
{
for
(
int
i
=
1
;
i
getSAMP
(
)
->
getPlayers
(
)
->
IsPlayerDefined
(
pId
)
)
{
float
newPlayerPos
[
3
]
=
{
PEDSELF
->
GetPosition
(
)
->
fX
,
PEDSELF
->
GetPosition
(
)
->
fY
,
PEDSELF
->
GetPosition
(
)
->
fZ
}
;
float
newTargetPos
[
3
]
=
{
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
0
]
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
1
]
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
2
]
}
;
// тут выполняется функция
dwTickStart
=
GetTickCount
(
)
;
if
(
getDist
(
newPlayerPos
,
newTargetPos
)
50
)
{
// тут выполняется функция
dwTickStart
=
GetTickCount
(
)
;
}
}
}
state
=
false
;
}
}
}
}
}
C++:
if
(
state
)
{
if
(
(
GetTickCount
(
)
-
dwTickStart
)
>
50
)
{
// тут выполняется функция
float
playerPos
[
3
]
=
{
PEDSELF
->
GetPosition
(
)
->
fX
,
PEDSELF
->
GetPosition
(
)
->
fY
,
PEDSELF
->
GetPosition
(
)
->
fZ
}
;
float
targetPos
[
3
]
=
{
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
0
]
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
1
]
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
2
]
}
;
dwTickStart
=
GetTickCount
(
)
;
if
(
getDist
(
playerPos
,
targetPos
)
1200
)
{
for
(
int
i
=
1
;
i
getSAMP
(
)
->
getPlayers
(
)
->
IsPlayerDefined
(
pId
)
)
{
float
newPlayerPos
[
3
]
=
{
PEDSELF
->
GetPosition
(
)
->
fX
,
PEDSELF
->
GetPosition
(
)
->
fY
,
PEDSELF
->
GetPosition
(
)
->
fZ
}
;
float
newTargetPos
[
3
]
=
{
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
0
]
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
1
]
,
SF
->
getSAMP
(
)
->
getPlayers
(
)
->
pRemotePlayer
[
pId
]
->
pPlayerData
->
inCarData
.
fPosition
[
2
]
}
;
// тут выполняется функция
dwTickStart
=
GetTickCount
(
)
;
if
(
getDist
(
newPlayerPos
,
newTargetPos
)
50
)
{
// тут выполняется функция
dwTickStart
=
GetTickCount
(
)
;
}
}
}
state
=
false
;
}
}
}
}
}