Показать сообщение отдельно
Старый 29.08.2010, 15:52   #2309
JohaNBlack

AGFC
Гость
 
Сообщений: n/a

По умолчанию Re: М: Скриптинг в Готике

2orebaron25: Если вариант диалога, то он должен быть упомянут через func void, пример из первой Готики:
Cпойлер(щелкните, чтобы прочесть):
func void DIA_Snaf_Zutaten_Info()
{
     AI_Output(other,self,"DIA_Snaf_Zutaten_15_00" );      //Что я могу для тебя сделать?
     AI_Output(self,other,"DIA_Snaf_Zutaten_01_01" );      //Ты, должно быть, любишь вкусно поесть. У меня тут новый рецепт: рагу из мясных жуков по снефски с грибами и рисом.
     AI_Output(self,other,"DIA_Snaf_Zutaten_01_02" );      //Ты получишь самую большую порцию, если сможешь принести мне трех жуков и несколько адских грибов... Я думаю, пяти будет достаточно.
     Info_ClearChoices(DIA_Snaf_Zutaten);
     Info_AddChoice(DIA_Snaf_Zutaten,"Ты хочешь, чтобы меня вырвало?",DIA_Snaf_Zutaten_KOTZ);
     Info_AddChoice(DIA_Snaf_Zutaten,"Звучит неплохо.",DIA_Snaf_Zutaten_DoIt);
};

func void DIA_Snaf_Zutaten_KOTZ()
{
     AI_Output(other,self,"DIA_Snaf_Zutaten_KOTZ_15_00 ");      //Ты хочешь, чтобы меня вырвало?
     AI_Output(self,other,"DIA_Snaf_Zutaten_KOTZ_01_01 ");      //Ты не обязан это есть, но, по крайней мере, мог бы попробовать! Приходи, если сможешь раздобыть то, о чем я просил.
     AI_Output(self,other,"DIA_Snaf_Zutaten_KOTZ_01_02 ");      //Я уже отправил одного за припасами, но он так и не вернулся: небось, сбежал в Новый Лагерь.
     Snaf_Zutaten = LOG_RUNNING;
     Log_CreateTopic(CH1_SnafsRecipe,LOG_MISSION);
     Log_SetTopicStatus(CH1_SnafsRecipe,LOG_RUNNIN G);
     B_LogEntry(CH1_SnafsRecipe,"Повар Снаф, живущий во внешнем кольце Старого Лагеря, послал меня раздобыть 3 мясных жука и 5  адских грибов для своего нового рецепта.");
     Info_ClearChoices(DIA_Snaf_Zutaten);
};

func void DIA_Snaf_Zutaten_DoIt()
{
     AI_Output(other,self,"DIA_Snaf_Zutaten_DoIt_15_00 ");      //Звучит неплохо.
     AI_Output(self,other,"DIA_Snaf_Zutaten_DoIt_01_01 ");      //Тогда иди и раздобудь то, о чем я тебя просил.
     AI_Output(self,other,"DIA_Snaf_Zutaten_DoIt_01_02 ");      //Я уже отправил одного за припасами, но он так и не вернулся: небось, сбежал в Новый Лагерь.
     Snaf_Zutaten = LOG_RUNNING;
     Snaf_FreeMBRagout = TRUE;
     Log_CreateTopic(CH1_SnafsRecipe,LOG_MISSION);
     Log_SetTopicStatus(CH1_SnafsRecipe,LOG_RUNNIN G);
     B_LogEntry(CH1_SnafsRecipe,"Повар Снаф, живущий во внешнем кольце Старого Лагеря, послал меня раздобыть 3 мясных жука и 5  адских грибов для своего нового рецепта. Я даже смогу попробовать его варево.");
     Info_ClearChoices(DIA_Snaf_Zutaten);
};
Ответить с цитированием