SF API создан для visual studio (у тебя code::blocks). либо качай вс, либо переписывай апи под кб (но ты заебешся)
SF API создан для visual studio (у тебя code::blocks). либо качай вс, либо переписывай апи под кб (но ты заебешся)
const struct weapon_entry *weapon = &weapon_list[byteCurrentWeapon];how to get player current weapon name, here what i did
Код:const struct weapon_entry *weapon = weapon_list; sprintf(ctarget_wep, "{31f8ff}Weapon{FFFFFF} %s{FFFFFF} %u", gta_weapon_get_by_name(weapon->name), g_Players->pRemotePlayer[Target_PlayerID]->pPlayerData->onFootData.byteCurrentWeapon); const struct weapon_entry weapon_list[] = { { 0, 0, -1, "Fist" }, { 1, 0, 331, "Brass Knuckles" }, { 2, 1, 333, "Golf Club" }, { 3, 1, 334, "Nitestick" }, { 4, 1, 335, "Knife" }, { 5, 1, 336, "Baseball Bat" }, { 6, 1, 337, "Shovel" }, { 7, 1, 338, "Pool Cue" }, { 8, 1, 339, "Katana" }, { 9, 1, 341, "Chainsaw" }, { 22, 2, 346, "Pistol" }, { 23, 2, 347, "Silenced Pistol" }, { 24, 2, 348, "Desert Eagle" }, { 25, 3, 349, "Shotgun" }, { 26, 3, 350, "Sawn-Off Shotgun" }, { 27, 3, 351, "SPAZ12" }, { 28, 4, 352, "Micro UZI" }, { 29, 4, 353, "MP5" }, { 32, 4, 372, "Tech9" }, { 30, 5, 355, "AK47" }, { 31, 5, 356, "M4" }, { 33, 6, 357, "Country Rifle" }, { 34, 6, 358, "Sniper Rifle" }, { 35, 7, 359, "Rocket Launcher" }, { 36, 7, 360, "Heat Seeking RPG" }, { 37, 7, 361, "Flame Thrower" }, { 38, 7, 362, "Minigun" }, { 16, 8, 342, "Grenade" }, { 17, 8, 343, "Teargas" }, { 18, 8, 344, "Molotov Cocktail" }, { 39, 8, 363, "Remote Explosives" }, { 41, 9, 365, "Spray Can" }, { 42, 9, 366, "Fire Extinguisher" }, { 43, 9, 367, "Camera" }, { 10, 10, 321, "Dildo 1" }, { 11, 10, 322, "Dildo 2" }, { 12, 10, 323, "Vibe 1" }, { 13, 10, 324, "Vibe 2" }, { 14, 10, 325, "Flowers" }, { 15, 10, 326, "Cane" }, { 44, 11, 368, "NV Goggles" }, { 45, 11, 369, "IR Goggles" }, { 46, 11, 371, "Parachute" }, { 40, 12, 364, "Detonator" }, { -1, -1, -1, NULL } };
but this shows![]()
thanks for help !
const struct weapon_entry *weapon = &weapon_list[byteCurrentWeapon];
sprintf(buf, "weapon: %s", weapon->name);
it shows name but incorrect for example if player use pistol it shows molotov cocktail but sometimes it show correct name like when player have Fist or Catana
i did it like this
stRemotePlayer *pPlayer = g_SAMP->pPools->pPlayer->pRemotePlayer[player_target];
const struct weapon_entry *weapon = &weapon_list[pPlayer->pPlayerData->onFootData.byteCurrentWeapon];
![]()
stRemotePlayer *pPlayer = g_SAMP->pPools->pPlayer->pRemotePlayer[player_target];
for (int i = 0; weapon_list[i].name != nullptr; i++)
{
const struct weapon_entry *weapon = &weapon_list[i];
if (weapon->id == pPlayer->pPlayerData->onFootData.byteCurrentWeapon)
{
sprintf(buf, "weapon: %s", weapon->name);
}
}
Лучше после spintf добавить брик и заменить его на strcpy, а еще лучше юзать std::stringC++:sprintf(buf, "weapon: %s", weapon->name);
Зажми клавишу W через key_eventПриветствую. Столкнулся с такой проблемой:
К примеру, есть координаты множества чекпоинтов, они расположены хаотично.
Есть координаты машины и поворот персонажа в ней:
Поворот персонажа:
public float Get_Rotation() {
int base_address = mem.ReadInt(0xB6F5F0);
float angel = mem.ReadFloat(base_address + 0x558);
return angel * 6;
}
Координаты машины:
public float[] Get_Car_Coord()
{
float[] Position = new float[2];
int car_offset = mem.ReadInt(0xBA18FC);
int offset_to_matrix_car = mem.ReadInt(car_offset + 0x14);
Position[0] = mem.ReadFloat(offset_to_matrix_car + 0x30);
Position[1] = mem.ReadFloat(offset_to_matrix_car + 0x34);
return Position;
}
Как мне сделать так, чтобы она могла проехать по маршруту чекпоинтов?
Мне нужно как-то взять тот угол, на который она должна повернуться.
Типа... Есть координаты чекпоинта:
x: 1141.513916
y: -1162.998169
И координаты машины:
x: 1162.112061
y: -1199.149658
Как сделать так, чтобы она туда приехала? Как вычислить тот угол, на который она должна повернуть?
Вообще, видел, что реализуют через функцию lua - getHeadingFromVector2d.
Как она вообще устроена? Как её перевести на другой язык, к примеру?
P.S НУЖНО БЕЗ SAMPFUNCS и SAMP LUA.
Заранее спасибо)
У тебя не это спросилиЗажми клавишу W через key_event
AsiPlugin(https://git.prime-hack.net/SR_team/AsiPlugin/src/branch/master/CGame/Types.cpp#L29)Как рассчитать угол между двумя точками, куда нужно повернуть машине?
У SF плагина нет Makefile
У тебя не это спросили
AsiPlugin(https://git.prime-hack.net/SR_team/AsiPlugin/src/branch/master/CGame/Types.cpp#L29)
X и Y это дельты, как в опкоде CLEO
либо наоборотПолучается, чтобы узнать угол -
angle(x_car-x_checkpoint, y_car-y_checkpoint);
Верно?
свойства проекта > свойства конфигурации > набор инструментов платформы > ставь что у тебя естьОткрываю готовый проект SF, и пишет этоКод:C:\Новая папка\SFPlugin\SFPlugin\SFPlugin.vcxproj : warning : Невозможно найти средства сборки для Visual Studio 2012 - Windows XP (v110_xp). Установите Visual Studio 2012 - Windows XP (v110_xp), чтобы выполнить сборку с использованием средств сборки Visual Studio 2012 - Windows XP (v110_xp).
Никак @_@Как сделать чтобы sf проект запускался на версиях ниже 2012??? p.s версия 2010