Justin_Line
Дебютант
Здравствуйте, решил написать о том, как создать актеров и разговор с ними, через диалог, не судите строго)
Автор: Shark73
Для начала добавим инклуд.
Ищем паблик OnGameModeInit и добавим
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
bot[0] = CreateActor(70, 275.2365, 1860.4010, 8.7578, 176.7623);
bot[0] - первый бот
CreateActor - создает бота
70 - скин бота
275.2365, - X
1860.4010, 0 Y КООРДИНАТЫ
8.7578, - Z
176.7623 - Куда смотрит бот
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
CreateDynamic3DTextLabel("{FFFFFF}Для взаимодействия\nНажмите {B03131}ALT",0xB03131FF, 275.2365, 1860.4010, 8.7578, 3.0);
CreateDynamic3DTextLabel - создает текст возле бота
0xB03131FF - цвет текста.
275.2365, - X
1860.4010, - Y КООРДИНАТЫ БОТА
8.7578, - Z
3.0 - расстояние видимости текста
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ApplyActorAnimation(bot[0], "WEAPONS", "SHP_TRAY_POSE", 4.1, 1, 0, 0, 0, 0);
ApplyActorAnimation - добавляем анимацию для бота.
bot[0] - массив первого бота.
WEAPONS - библиотека анимаций
SHP_TRAY_POSE - анимация
4.1, 1, 0, 0, 0, 0 // 4.1 - скорость анимации (по умолчанию 4.1) // 1 - повторение анимации (1 - вкл. | 0 - выкл.)
=================================================================================================
Идем в паблик OnPlayerKeyStateChange и добавляем
Дальше идем в OnDialogResponse
Автор: Shark73
Для начала добавим инклуд.
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
|
Чтобы видеть скрытое содержание Зарегистрируйтесь на форуме!
PHP:
#include <a_actor>
#include <streamer>
Ищем паблик OnGameModeInit и добавим
PHP:
new bot[2];
bot[0] = CreateActor(70, 275.2365, 1860.4010, 8.7578, 176.7623);
CreateDynamic3DTextLabel("{FFFFFF}Для взаимодействия\nНажмите {B03131}ALT",0xB03131FF, 275.2365, 1860.4010, 8.7578, 3.0);
ApplyActorAnimation(bot[0], "WEAPONS", "SHP_TRAY_POSE", 4.1, 1, 0, 0, 0, 0);
bot[1] = CreateActor(188, 279.2365, 1860.4010, 8.7578, 176.7623);
CreateDynamic3DTextLabel("{FFFFFF}Для взаимодействия\nНажмите {B03131}ALT",0xB03131FF, 275.2365, 1860.4010, 8.7578, 3.0);
ApplyActorAnimation(bot[0], "WEAPONS", "SHP_TRAY_POSE", 4.1, 1, 0, 0, 0, 0);
new bot[2]; // 2 - количество ботов.
bot[0] = CreateActor(70, 275.2365, 1860.4010, 8.7578, 176.7623);
bot[0] - первый бот
CreateActor - создает бота
70 - скин бота
275.2365, - X
1860.4010, 0 Y КООРДИНАТЫ
8.7578, - Z
176.7623 - Куда смотрит бот
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
CreateDynamic3DTextLabel("{FFFFFF}Для взаимодействия\nНажмите {B03131}ALT",0xB03131FF, 275.2365, 1860.4010, 8.7578, 3.0);
CreateDynamic3DTextLabel - создает текст возле бота
0xB03131FF - цвет текста.
275.2365, - X
1860.4010, - Y КООРДИНАТЫ БОТА
8.7578, - Z
3.0 - расстояние видимости текста
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ApplyActorAnimation(bot[0], "WEAPONS", "SHP_TRAY_POSE", 4.1, 1, 0, 0, 0, 0);
ApplyActorAnimation - добавляем анимацию для бота.
bot[0] - массив первого бота.
WEAPONS - библиотека анимаций
SHP_TRAY_POSE - анимация
4.1, 1, 0, 0, 0, 0 // 4.1 - скорость анимации (по умолчанию 4.1) // 1 - повторение анимации (1 - вкл. | 0 - выкл.)
=================================================================================================
Идем в паблик OnPlayerKeyStateChange и добавляем
PHP:
if(newkeys == 1024)
{
if(IsPlayerInRangeOfPoint(playerid, 1.0, 275.2365,1860.4010,8.7578))
{
ShowPlayerDialog(playerid, 100 ,DIALOG_STYLE_LIST, "{458B74}Доктор Филл", "Не суди строго!\nЧто мне делать?", "Закрыть", "");
}
if(IsPlayerInRangeOfPoint(playerid, 1.0, 274.3978,1873.1890,8.7649))
{
ShowPlayerDialog(playerid, 101 ,DIALOG_STYLE_LIST, "{458B74}Ильнар", "Как тебя зовут?\nУ тебя есть задания для меня?", "Закрыть", "");
}
}
PHP:
if(dialogid == 100)
{
if(response)
{
if(listitem == 0)
{
ShowPlayerDialog(playerid, 30, DIALOG_STYLE_MSGBOX, "{458B74}Не судите строго!)","Не судите строго мое 'Творчество' :3 ","Далее","Отмена");
}
if(listitem == 1)
{
ShowPlayerDialog(playerid, 22, DIALOG_STYLE_MSGBOX, "{458B74}Начать продвигаться","{FFAF00}Для начала\nПосле.","Хорошо","");
}
}
}
if(dialogid == 101)
{
if(response)
{
if(listitem == 0)
{
ShowPlayerDialog(playerid, 101, DIALOG_STYLE_MSGBOX, "{458B74}Мое имя","{FFAF00}Меня зовут Ильнар.","Понятно","Отмена");
}
if(listitem == 1)
{
ShowPlayerDialog(playerid, 101, DIALOG_STYLE_MSGBOX, "{458B74}Задания","{FFAF00}На выходе есть охрана,\nони дают начальный набор выжившего,\nподойди к нему, и спроси задания.","Хорошо","");
}
}
}
}
}
}
