- 320
- 539
.sln файл открывайЯ скачал архив с проектом для разработчиков. Как его подключить чтобы компилировались файлы .sf?
.sln файл открывайЯ скачал архив с проектом для разработчиков. Как его подключить чтобы компилировались файлы .sf?
Посмотри все гайды по SF API в этом разделе.Скиньте полный код который выводит текст в чат на sf
SF->getSAMP()->getChat()->AddChatMessage( -1, "Text" );
Ты должен реализовать в библиотеке все интерфейсы оригинально библиотеки и пробрасывать их. Это тебе не Linux, что бы все так просто было с прокси-либойЗдарова, мужики.
Пишу dll d3d9, которое будет подгружать основной d3d9.dll от майкрософт. Только одна проблема.... Крашит при входе. Что делать, чтобы всё заработало?
C++:#include <Windows.h> #include <process.h> #include <iostream> #include <string.h> #include <stdio.h> void __cdecl MainThread(void *pArg) { while (true) { Sleep(10); if (GetAsyncKeyState(VK_NUMPAD1)) { keybd_event('n', 0, 0, 0); keybd_event('n', 0, KEYEVENTF_KEYUP, 0); } } } BOOL WINAPI DllMain(_In_ HINSTANCE hinstDLL, _In_ DWORD fdwReason, _In_ PVOID lpvReserved) { if (fdwReason == DLL_PROCESS_ATTACH) { LoadLibrary("C:\\Windows\\System32\\d3d9.dll"); _beginthread(MainThread, NULL, nullptr); } return TRUE; }
Ошибка:
Код:Серьезность Код Описание Строка Состояние подавления Предупреждение MSB8004 каталог Output заканчивается не косой чертой. Этот экземпляр сборки добавит косую черту, поскольку она необходима для правильного определения каталога Output. 377
1)1.
for (int other_players = 0; other_players < SAMP_MAX_PLAYERS; other_players++)
{
actor_info *actor = getGTAPedFromSAMPPlayerID(other_players);
how to get skin id for other_players
2.
and how to make text draw only on other_players and not on my player
for (int other_players = 0; other_players < SAMP_MAX_PLAYERS; other_players++)
{
actor_info *actor = getGTAPedFromSAMPPlayerID(other_players);
//actor_info * my_ac = actor_info_get(ACTOR_SELF, NULL);
if (!actor)
continue;
D3DXVECTOR3 player_pos, screenposs;
float * f_pos = &actor->base.matrix[4 * 3];
player_pos.x = f_pos[0];
player_pos.y = f_pos[1];
player_pos.z = f_pos[2];
CalcScreenCoors(&player_pos, &screenposs);
char pos[256], ping[256], hparmw[256], pnameid[256] ;
if (screenposs.z < 1.f)
continue;
// this text below is showed on my player also how to make it show only on other_players
_snprintf_s(skin, sizeof(skin) - 1, "Skin");
pD3DFont_sampStuff->PrintShadow(screenposs.x, screenposs.y - 12, COLOR_WHITE(255), skin);
thanks for help !
actor->base.model_alt_id;
player_pos.x = actor->base.matrix[12];
player_pos.y = actor->base.matrix[13];
player_pos.z = actor->base.matrix[14];
1)2) test itC++:actor->base.model_alt_id;
C++:player_pos.x = actor->base.matrix[12]; player_pos.y = actor->base.matrix[13]; player_pos.z = actor->base.matrix[14];
do you know how to define skin id for other_player ? for example i want to draw text on all players which are with skin id 29
if (actor->base.model_alt_id != 29)
continue;
Можно ли как то визуально переместить объект?
![]()
g_SAMP->pPools->pObject->object[id]->pGTAEntity->base.matrix[12] = X;
g_SAMP->pPools->pObject->object[id]->pGTAEntity->base.matrix[13] = Y;
g_SAMP->pPools->pObject->object[id]->pGTAEntity->base.matrix[14] = Z;
g_Players->pRemotePlayer[player id]->pPlayerData->onFootData.byteCurrentWeapon
if(g_Players->iIsListed[id] != 1) continue;ye i put that pRemotePlayer[playerid] it also crash