 |
|

16.10.2017, 21:29
|
|
Постоянный
Регистрация: 10.01.2016
Сообщений: 922
С нами:
5441999
Репутация:
133
|
|
Сообщение от Karbun
Не в mainloop, в функции. coords - это еще одна функция, которая обновляет координаты, к ней идет запрос, она возвращает координаты.
Тогда давай весь код
|
|
|

16.10.2017, 21:36
|
|
Участник форума
Регистрация: 11.06.2017
Сообщений: 112
С нами:
4695764
Репутация:
18
|
|
Сообщение от BlackKnigga
Тогда давай весь код
Он вродe и так вecь здeсь
C++:
Код:
#include
#include
#include
#include
#include "SAMPFUNCS_API.h"
#include "game_api\game_api.h"
SAMPFUNCS
*
SF
=
new
SAMPFUNCS
(
)
;
float
coords
(
)
{
float
fPos
[
3
]
=
{
PEDSELF
->
GetPosition
(
)
->
fX
,
PEDSELF
->
GetPosition
(
)
->
fY
,
PEDSELF
->
GetPosition
(
)
->
fZ
}
;
return
(
fPos
[
0
]
,
fPos
[
1
]
,
fPos
[
2
]
)
;
}
void
script
(
void
)
float
fPos
[
3
]
;
do
{
coords
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"Следующее действие"
)
;
}
while
(
true
)
;
void
CALLBACK
fld
(
std
::
string str
)
{
script
(
)
;
}
void
CALLBACK
mainloop
(
)
{
static
bool
init
=
false
;
if
(
!
init
)
{
if
(
GAME
==
nullptr
)
return
;
if
(
GAME
->
GetSystemState
(
)
!=
eSystemState
::
GS_PLAYING_GAME
)
return
;
if
(
!
SF
->
getSAMP
(
)
->
IsInitialized
(
)
)
return
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
D3DCOLOR_XRGB
(
0
,
0xAA
,
0
)
,
"SAMPFUNCS Plugin loaded."
)
;
SF
->
getSAMP
(
)
->
registerChatCommand
(
"fld"
,
fld
)
;
init
=
true
;
}
}
|
|
|

16.10.2017, 21:44
|
|
Постоянный
Регистрация: 10.01.2016
Сообщений: 922
С нами:
5441999
Репутация:
133
|
|
Сообщение от Karbun
Он вродe и так вecь здeсь
C++:
Код:
#include
#include
#include
#include
#include "SAMPFUNCS_API.h"
#include "game_api\game_api.h"
SAMPFUNCS
*
SF
=
new
SAMPFUNCS
(
)
;
float
coords
(
)
{
float
fPos
[
3
]
=
{
PEDSELF
->
GetPosition
(
)
->
fX
,
PEDSELF
->
GetPosition
(
)
->
fY
,
PEDSELF
->
GetPosition
(
)
->
fZ
}
;
return
(
fPos
[
0
]
,
fPos
[
1
]
,
fPos
[
2
]
)
;
}
void
script
(
void
)
float
fPos
[
3
]
;
do
{
coords
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"Следующее действие"
)
;
}
while
(
true
)
;
void
CALLBACK
fld
(
std
::
string str
)
{
script
(
)
;
}
void
CALLBACK
mainloop
(
)
{
static
bool
init
=
false
;
if
(
!
init
)
{
if
(
GAME
==
nullptr
)
return
;
if
(
GAME
->
GetSystemState
(
)
!=
eSystemState
::
GS_PLAYING_GAME
)
return
;
if
(
!
SF
->
getSAMP
(
)
->
IsInitialized
(
)
)
return
;
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
D3DCOLOR_XRGB
(
0
,
0xAA
,
0
)
,
"SAMPFUNCS Plugin loaded."
)
;
SF
->
getSAMP
(
)
->
registerChatCommand
(
"fld"
,
fld
)
;
init
=
true
;
}
}
Херню какую то написал. Как это скомпилировалось вообще?
void script(void) - где открывающая и закрывающая скобка?
coords; - вызывать надо так: coords();
Да и беск. цикл в теле функции тоже нельзя юзать
Что ты вообще сделать хочешь?
|
|
|

16.10.2017, 21:47
|
|
Участник форума
Регистрация: 11.06.2017
Сообщений: 112
С нами:
4695764
Репутация:
18
|
|
Сообщение от BlackKnigga
Херню какую то написал. Как это скомпилировалось вообще?
void script(void) - где открывающая и закрывающая скобка?
coords; - вызывать надо так: coords();
Да и беск. цикл в теле функции тоже нельзя юзать
Что ты вообще сделать хочешь?
Хочу сделать чтобы в чат флудило координатами персонажа, поможешь с бесконечным циклом, если не сложно? Пока не разобрался куда его можно пихать, а куда нет.
|
|
|

16.10.2017, 21:49
|
|
Постоянный
Регистрация: 10.01.2016
Сообщений: 922
С нами:
5441999
Репутация:
133
|
|
Сообщение от Karbun
Хочу сделать чтобы в чат флудило координатами персонажа, поможешь с бесконечным циклом, если не сложно? Пока не разобрался куда его можно пихать, а куда нет.
В mainloop получай координаты и пиши в чат. Не надо пихать кучу функций и циклов
|
|
|

16.10.2017, 21:52
|
|
Участник форума
Регистрация: 11.06.2017
Сообщений: 112
С нами:
4695764
Репутация:
18
|
|
Сообщение от BlackKnigga
В mainloop получай координаты и пиши в чат. Не надо пихать кучу функций и циклов
Еще хотел по поводу GetTickCount спросить, я его правильно использую?
C++:
Код:
static
DWORD time
=
0
;
if
(
GetTickCount
(
)
-
time
>
1000
)
{
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"Следующее действие"
)
;
}
|
|
|

16.10.2017, 21:54
|
|
Постоянный
Регистрация: 21.08.2015
Сообщений: 343
С нами:
5646349
Репутация:
163
|
|
Сообщение от Karbun
Еще хотел по поводу GetTickCount спросить, я его правильно использую?
C++:
Код:
static
DWORD time
=
0
;
if
(
GetTickCount
(
)
-
time
>
1000
)
{
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"Следующее действие"
)
;
}
Не-а.
Код:
Код:
static DWORD time = GetTickCount();
if(GetTickCount - time getSAMP()->getChat()->AddChatMessage(-1, "Следующее действие");
}
|
|
|

16.10.2017, 21:56
|
|
Постоянный
Регистрация: 10.01.2016
Сообщений: 922
С нами:
5441999
Репутация:
133
|
|
Сообщение от dankestmemer
Не-а.
Код:
Код:
static DWORD time = GetTickCount();
if(GetTickCount - time getSAMP()->getChat()->AddChatMessage(-1, "Следующее действие");
}
После срабатывания надо обновлять time, получать новый TickCount
C++:
Код:
static
DWORD time
=
GetTickCount
(
)
;
if
(
GetTickCount
(
)
-
time
>
100
)
{
SF
->
getSAMP
(
)
->
getChat
(
)
->
AddChatMessage
(
-
1
,
"Следующее действие"
)
;
time
=
GetTickCount
(
)
;
}
|
|
|

16.10.2017, 22:01
|
|
Участник форума
Регистрация: 11.06.2017
Сообщений: 112
С нами:
4695764
Репутация:
18
|
|
Извините за тупость, но еще один вопрос, как это закинуть в mainloop ( и надо ли вообще ), а после вызвать её из тела?
C++:
Код:
float
coords
(
)
{
float
fPos
[
3
]
=
{
PEDSELF
->
GetPosition
(
)
->
fX
,
PEDSELF
->
GetPosition
(
)
->
fY
,
PEDSELF
->
GetPosition
(
)
->
fZ
}
;
return
(
fPos
[
0
]
,
fPos
[
1
]
,
fPos
[
2
]
)
;
}
|
|
|

17.10.2017, 13:06
|
|
Участник форума
Регистрация: 11.06.2017
Сообщений: 112
С нами:
4695764
Репутация:
18
|
|
Up
Сообщение от Karbun
Извините за тупость, но еще один вопрос, как это закинуть в mainloop ( и надо ли вообще ), а после вызвать её из тела?
C++:
Код:
float
coords
(
)
{
float
fPos
[
3
]
=
{
PEDSELF
->
GetPosition
(
)
->
fX
,
PEDSELF
->
GetPosition
(
)
->
fY
,
PEDSELF
->
GetPosition
(
)
->
fZ
}
;
return
(
fPos
[
0
]
,
fPos
[
1
]
,
fPos
[
2
]
)
;
}
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|