 |
|

24.07.2015, 17:37
|
|
Познающий
Регистрация: 08.07.2015
Сообщений: 40
С нами:
5709574
Репутация:
0
|
|
Также интересует вопрос, как поставить игру на паузу прямо из плагина? Какая функция?
|
|
|

24.07.2015, 18:06
|
|
Участник форума
Регистрация: 18.03.2013
Сообщений: 104
С нами:
6921972
Репутация:
0
|
|
урсхадов фип кто там ау разработчик в общем. фикс говноедство, типа
Код:
Код:
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.");
init = true;
}
}
bool APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpReserved) {
switch (dwReasonForCall) {
case DLL_PROCESS_ATTACH:
SF->initPlugin(mainloop, hModule);
}
return true;
}
сделойте в методе инициализации плагина еще один параметр, колбек, вызывающийся после инициализации плагина. а основная петля будет вызываться уже после инициализации.
т.е будет нечто такое прекрасное, за что вам будут благодарны боги всех религий
Код:
Код:
void onPluginInit() {
SF->getRakNet()->registerRakNetCallback(RakNetScriptHookType::RAKHOOK_TYPE_INCOMING_RPC, incomingRPC);
SF->getSAMP()->registerChatCommand("showinfo", cmd_show_info_player);
}
void mainloop() {
if(SF->getGame()->isKeyPressed( 'H' )) {
int &iDialogStatus = SF->getSAMP()->getDialog()->iIsActive;
iDialogStatus ^= true;
if(!iDialogStatus)
SF->getSAMP()->getMisc()->ToggleCursor(false);
};
}
bool APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID lpReserved) {
switch (dwReasonForCall) {
case DLL_PROCESS_ATTACH:
SF->initPlugin(onPluginInit, mainloop, hModule);
}
return true;
}
|
|
|

24.07.2015, 22:04
|
|
Познающий
Регистрация: 08.07.2015
Сообщений: 40
С нами:
5709574
Репутация:
0
|
|
Попытался так. Но мотоциклы и машины так тпшит, а вот поезд - нет :C Что не так?
Код:
Код:
void vehicleTeleport(float x, float y, float z)
{
actor_info *self = SF->getGame()->actorInfoGet(VEHICLE_SELF, VEHICLE_ALIVE);
self->vehicle->base.matrix[4 * 3] = x;
self->vehicle->base.matrix[4 * 3 + 1] = y;
self->vehicle->base.matrix[4 * 3 + 2] = z;
}
|
|
|

25.07.2015, 01:34
|
|
Познающий
Регистрация: 26.05.2014
Сообщений: 40
С нами:
6297017
Репутация:
0
|
|
Сообщение от Harch
Попытался так. Но мотоциклы и машины так тпшит, а вот поезд - нет :C Что не так?
Код:
Код:
void vehicleTeleport(float x, float y, float z)
{
actor_info *self = SF->getGame()->actorInfoGet(VEHICLE_SELF, VEHICLE_ALIVE);
self->vehicle->base.matrix[4 * 3] = x;
self->vehicle->base.matrix[4 * 3 + 1] = y;
self->vehicle->base.matrix[4 * 3 + 2] = z;
}
Насколько я знаю, поезд не может тпхнутся. Он всегда на рельсах
|
|
|

25.07.2015, 03:57
|
|
Познающий
Регистрация: 08.07.2015
Сообщений: 40
С нами:
5709574
Репутация:
0
|
|
По идее при ТП поезд должен встать на ближайшие рельсы. В скриптах, по крайней мере, при установке поезда так.
Ладно, как тогда поставить игру на паузу? Аналог нажатия escape фактически?
|
|
|

26.07.2015, 16:56
|
|
Участник форума
Регистрация: 12.07.2013
Сообщений: 161
С нами:
6755146
Репутация:
78
|
|
Как получить скин игрока?
|
|
|

26.07.2015, 17:37
|
|
Новичок
Регистрация: 30.10.2014
Сообщений: 18
С нами:
6070899
Репутация:
3
|
|
Сообщение от CarLCas
Как получить скин игрока?
Попробуй:
Код:
Код:
SF->getSAMP->getPlayers()->pLocalPlayer->pSAMP_Actor->pGTA_Ped->base.model_alt_id;
//or
SF->getSAMP->getPlayers()->pRemotePlayer[id]->pPlayerData->pSAMP_Actor->pGTA_Ped->base.model_alt_id;
|
|
|

27.07.2015, 12:44
|
|
Участник форума
Регистрация: 13.07.2014
Сообщений: 164
С нами:
6227977
Репутация:
83
|
|
Можно ли перехватить как-то выгрузку плагина (т.е. pfree NAME).
Я просто хочу убить поток в это время.
|
|
|

27.07.2015, 18:19
|
|
Участник форума
Регистрация: 12.07.2013
Сообщений: 161
С нами:
6755146
Репутация:
78
|
|
Подскажите пожалуйста как получить координаты игрока сидящего в машине?
|
|
|

29.07.2015, 03:56
|
|
Участник форума
Регистрация: 23.10.2010
Сообщений: 125
С нами:
8186006
Репутация:
1
|
|
Как выводить в рендер значения переменных?
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|