Другое SAMPFUNCS | API C++

itsLegend

Фонд борьбы за жуков 🐞
Администратор
2,696
1,460
В isKeyPressed передается параметр с типом byte. Тебе нужно "конвертировать" клавишу в её ид. Можешь через массив или ещё как-нибудь.
В собейте есть такая функция: static int key_lookup ( const char *name ), может возникнет собственная идея...
 

0pc0d3R

Потрачен
550
269
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
  • Нравится
Реакции: DarkExorcist

0pc0d3R

Потрачен
550
269
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

DarkExorcist

Новичок
77
3
SF->getGame()->convert3DCoordsToScreen
переводит так же как и
0AB1: call_scm_func @getScreenXYFrom3DCoords
или же он переводит к разрешению экрана, а не к игровому?
 

0pc0d3R

Потрачен
550
269
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
SF->getGame()->convert3DCoordsToScreen
переводит так же как и
0AB1: call_scm_func @getScreenXYFrom3DCoords
или же он переводит к разрешению экрана, а не к игровому?
SF->getGame()->convert3DCoordsToScreen - конвертирует координаты из трехмерного пространства в плоские для екрана.
а вторая с клео тоже вроде, и да обе переводят игровые в екранные.
 

Woofing Giraffe

Активный
402
49
Код:
    if (dialogId == 9437)
    {
        if (buttonId == 1)
        {
            carid = atoi(input);
            SF->getSAMP()->getChat()->AddChatMessage(-1, "%d", carid);
            SF->getSAMP()->getDialog()->ShowDialog(9439, 2, "kek", "1\n2", "Выбор", "Отмена");
        }
    }
Обработчик работает, сообщение выводит, а следующий диалог не отображает.
 

FYP

Известный
Администратор
1,758
5,730
Код:
    if (dialogId == 9437)
    {
        if (buttonId == 1)
        {
            carid = atoi(input);
            SF->getSAMP()->getChat()->AddChatMessage(-1, "%d", carid);
            SF->getSAMP()->getDialog()->ShowDialog(9439, 2, "kek", "1\n2", "Выбор", "Отмена");
        }
    }
Обработчик работает, сообщение выводит, а следующий диалог не отображает.
в калбэке нельзя показывать новый диалог - это проблема сф. сделай по примеру NoCollision, он с исходником.
 
  • Нравится
Реакции: Woofing Giraffe

FYP

Известный
Администратор
1,758
5,730
C++:
actor_info *self = actorInfoGet(ACTOR_SELF, 0);
self->fCurrentRotation = self->fTargetRotation = rotation;
используя Game API:
C++:
PEDSELF->SetCurrentRotation(rotation);
PEDSELF->SetTargetRotation(rotation);
 
  • Нравится
Реакции: Woofing Giraffe

DarkExorcist

Новичок
77
3
SF->getGame()->convert3DCoordsToScreen - конвертирует координаты из трехмерного пространства в плоские для екрана.
а вторая с клео тоже вроде, и да обе переводят игровые в екранные.
Я немного другое имел ввиду. Они переводят в экранные под разрешение экрана, или под те, с которыми обычно работает игра(600х480 вроде).