Столкнулся с такой проблемой, что не могу отправить incar синхру на координаты, т.к в SF 5.5.0 pLocalPlayer не определен.
Попробовал переделать, но не получилось. Запутался с получением ID игрока.
Именно GetInCarData() просит ID игрока.
Код:
void InCarSync(float x, float y, float z)
{
stInCarData data{};
data = SF->getSAMP()->getPlayers()->pLocalPlayer->inCarData;
data.fPosition[0] = x;
data.fPosition[1] = y;
data.fPosition[2] = z;
BitStream bs;
bs.Write(static_cast<BYTE>(ID_VEHICLE_SYNC));
bs.Write(reinterpret_cast<PCHAR>(&data), sizeof(stInCarData));
SF->getRakNet()->SendPacket(&bs);
}
Мой код:
IncarSync(float Xx, float Yx, float Zx)
{ float poss[3] = {
poss[0] = Xx,
poss[1] = Yx,
poss[2] = Zx
};
InCarData data;
memcpy(&data, &SF->getSAMP()->getPlayers()->GetInCarData()->position, sizeof(InCarData));
memcpy(&data.position, &poss, sizeof(float) * 3);
BitStream bs;
bs.Write((BYTE)ID_VEHICLE_SYNC);
bs.Write((PCHAR)&data, sizeof(InCarData));
SF->getRakNet()->SendPacket(&bs);
}