Форум TeamX
   Home   Members  
Pages: [1] |   Go Down
 
Author Topic: Вызов бартера из диалога  (Read 610 times)
Helm
Пользователь
Posts: 13


Вызов бартера из диалога
« on: 05 July 2010, 14:15:24 »

Пытался вставить в скрипт функцию бартера, не получилось. Подскажите пожалуйста как это сделать правильно. И еще хотелось бы, чтобы торговец использовал предметы из сундука для бартера. Вот скрипт:

#define NAME 1304
#define Reply(x) gsay_reply(NAME,x)
#define Option(x,y) gsay_option(NAME,x,y,-1)

procedure Node008;
procedure Node009;
procedure Node010;
procedure Node011;
procedure Node012;
procedure Node995;
procedure Node999;

//Процедуры
procedure start begin
end

procedure talk_p_proc begin
Start_gDialog(NAME,self_obj,-1,-1,-1);
GSay_Start;
  call Node008;
GSay_End;
End_Dialogue;
end

procedure Node008 begin
 Reply(1);
  Option(8,Node009);
  Option(9,Node010);
  Option(10,Node995);
  Option(11,Node999);
end

procedure Node009 begin
   Reply(6);
   Option(18,Node999);
end

procedure Node010 begin
  Reply(2);
  Option(12,Node011);
  Option(13,Node999);
end

procedure Node011 begin
  Reply(3);
  Option(14,Node012);
  Option(15,Node999);
end

procedure Node012 begin
   Reply(4);
   Option(16,Node999);
end
   
procedure Node995 begin
   op_gdialog_barter;
   Reply(5);
   Option(17,Node999);
end

procedure Node999 begin
end

Название темы изменено на более информативное.
« Last Edit: 05 July 2010, 18:32:11 by Wasteland Ghost »
Wasteland Ghost
Администратор
Posts: 869

Маленькое Злое Привидение


Re: По поводу бартера
« Reply #1 on: 05 July 2010, 18:30:36 »

А шо цэ за op_gdialog_barter? Документаций по опкодам начитался? Улыбка Бартер вызывается функцией gdialog_mod_barter (или макросом gdialog_barter — с нулевым модификатором). "Доку" изучи.
Helm
Пользователь
Posts: 13


Re: Вызов бартера из диалога
« Reply #2 on: 06 July 2010, 20:38:01 »

Бартер вызывается, за это спасибо, но какой функцией сделать так, чтобы после вызова бартера окно ответов чузена тоже убиралось, а не высвечивалось поверх бартерного окна.
« Last Edit: 06 July 2010, 20:43:07 by Helm »
Wasteland Ghost
Администратор
Posts: 869

Маленькое Злое Привидение


Re: Вызов бартера из диалога
« Reply #3 on: 07 July 2010, 10:37:43 »

Бррр... Это ты как умудрился?

Вообще, если сомневаешься, берёшь любой произвольный файл готового торговца и смотришь:

procedure Node990 begin
   gdialog_mod_barter(0);
   call Node003;
end


Вот примерно так...
Helm
Пользователь
Posts: 13


Re: Вызов бартера из диалога
« Reply #4 on: 07 July 2010, 12:19:55 »

Умудрился очень просто Улыбка. Дело в том, что у прототипа в настройках стояло: Barter No. Я хотел чтобы только с помощью нужной фразы в диалоге бартер открывался, а стоило поменять на Barter Yes и все стало нормально, но в этом случае насколько я понимаю модификатор gdialog_mod_barter не учитывается. Грустный В том плане, что с помощью кнопки бартера его можно обойти.
Wasteland Ghost
Администратор
Posts: 869

Маленькое Злое Привидение


Re: Вызов бартера из диалога
« Reply #5 on: 07 July 2010, 20:59:26 »

Quote
В том плане, что с помощью кнопки бартера его можно обойти.
Для этого есть функция gdialog_set_barter_mod. Вызываешь один раз в самом начале процедуры диалога — и будет тебе щщастье. Улыбка

PS А доки всё-таки читать надо... Подмигивающий
Pages: [1] |   Go Up