Показать сообщение отдельно
Старый 24.03.2005, 10:55   #126
Vam

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

По умолчанию Re: Уроки скриптологии

// ************************************************** ************
// НПС slf называет НПС oth сумму денежного выражения goldAmount
// ************************************************** ************

func void B_Say_Gold(var C_NPC slf,var C_NPC oth,var int goldAmount)
{
* *if(goldAmount == 1000) *{ B_Say(slf,oth,"$GOLD_1000"); *};
* *if(goldAmount == 950) * { B_Say(slf,oth,"$GOLD_950"); * };
* *if(goldAmount == 900) * { B_Say(slf,oth,"$GOLD_900"); * };
* *if(goldAmount == 850) * { B_Say(slf,oth,"$GOLD_850"); * };
* *if(goldAmount == 800) * { B_Say(slf,oth,"$GOLD_800"); * };
* *if(goldAmount == 750) * { B_Say(slf,oth,"$GOLD_750"); * };
* *if(goldAmount == 700) * { B_Say(slf,oth,"$GOLD_700"); * };
* *if(goldAmount == 650) * { B_Say(slf,oth,"$GOLD_650"); * };
* *if(goldAmount == 600) * { B_Say(slf,oth,"$GOLD_600"); * };
* *if(goldAmount == 550) * { B_Say(slf,oth,"$GOLD_550"); * };
* *if(goldAmount == 500) * { B_Say(slf,oth,"$GOLD_500"); * };
* *if(goldAmount == 450) * { B_Say(slf,oth,"$GOLD_450"); * };
* *if(goldAmount == 400) * { B_Say(slf,oth,"$GOLD_400"); * };
* *if(goldAmount == 350) * { B_Say(slf,oth,"$GOLD_350"); * };
* *if(goldAmount == 300) * { B_Say(slf,oth,"$GOLD_300"); * };
* *if(goldAmount == 250) * { B_Say(slf,oth,"$GOLD_250"); * };
* *if(goldAmount == 200) * { B_Say(slf,oth,"$GOLD_200"); * };
* *if(goldAmount == 150) * { B_Say(slf,oth,"$GOLD_150"); * };
* *if(goldAmount == 100) * { B_Say(slf,oth,"$GOLD_100"); * };
* *if(goldAmount == 90) * *{ B_Say(slf,oth,"$GOLD_90"); * *};
* *if(goldAmount == 80) * *{ B_Say(slf,oth,"$GOLD_80"); * *};
* *if(goldAmount == 70) * *{ B_Say(slf,oth,"$GOLD_70"); * *};
* *if(goldAmount == 60) * *{ B_Say(slf,oth,"$GOLD_60"); * *};
* *if(goldAmount == 50) * *{ B_Say(slf,oth,"$GOLD_50"); * *};
* *if(goldAmount == 40) * *{ B_Say(slf,oth,"$GOLD_40"); * *};
* *if(goldAmount == 30) * *{ B_Say(slf,oth,"$GOLD_30"); * *};
* *if(goldAmount == 20) * *{ B_Say(slf,oth,"$GOLD_20"); * *};
* *if(goldAmount == 10) * *{ B_Say(slf,oth,"$GOLD_10"); * *};
};

... еще файл

// *******************************
// НПС slf преветствует НПС oth
// *******************************

func void B_Say_GuildGreetings(var C_NPC slf,var C_NPC oth)
{
* *// если милиция приветствует милицию или паладина
* *if(slf.guild == GIL_MIL) && ((oth.guild == GIL_MIL) ¦¦ (oth.guild == GIL_PAL))
* *{
* * * *// звучит SVM фраза "За короля!"
* * * *B_Say_Overlay(slf,oth,"$MILGREETINGS");
* * * *return;
* *};
* *// если паладин приветствует паладина или милицию или магов огня
* *if(slf.guild == GIL_PAL) && ((oth.guild == GIL_PAL) ¦¦ (oth.guild == GIL_MIL) ¦¦ (oth.guild == GIL_KDF))
* *{
* * * *// звучит SVM фраза "За Инноса!"
* * * *B_Say_Overlay (slf,oth,"$PALGREETINGS");
* * * *return;
* *};
* *// если маг огня приветствует паладина или мага послушника или мага огня
* *if(slf.guild == GIL_KDF) && ((oth.guild == GIL_PAL) ¦¦ (oth.guild == GIL_NOV) ¦¦ (oth.guild == GIL_KDF))
* *{
* * * *// звучит SVM фраза "За Инноса!"
* * * *B_Say_Overlay (slf,oth,"$PALGREETINGS");
* * * *return;
* *};
* *// если приветствующий Барток и он сообщал об одиноком орке перед Хоринисом
* *if(Hlp_GetInstanceID(slf) == Hlp_GetInstanceID(Bartok)) && (Bartok_OrkGesagt == TRUE)
* *{
* * * *// Барток говорит об одиноком орке перед Хоринисом
* * * *B_Bartok_ShitAnOrc();
* * * *return;
* *};
* *// если приветствующий Кок
* *if(Hlp_GetInstanceID(slf) == Hlp_GetInstanceID(Koch))
* *{
* * * *// Кок говорит о топоре
* * * *B_Koch_Hackebeil();
* * * *return;
* *};
* *var int zufall;
* *zufall = Hlp_Random(100);
* *// с вероятностью 0.1 и если идет дождь
* *if((zufall <= 10) && Wld_IsRaining())
* *{
* * * *// звучит SVM фраза "Ну и скверная же погода!"
* * * *B_Say_Overlay(slf,oth,"$WEATHER");
* * * *return;
* * * *
* *};
};

... и ещё

// ************************************************
// *Мини реплики НПС
// ************************************************

func void B_Say_Smalltalk()
{
* *var int random;
* *random = Hlp_Random (120);
* *var int Choice;
* *Choice = Hlp_Random(1);
* *// с вероятностью 0.04
* *if(random < 5)
* *{
* * * *// НПС произносит SVM фразу "... ты, правда, так думаешь..."
* * * *B_Say(self,self,"$SMALLTALK01");
* *}
* *// с вероятностью 0.04
* *else if(random < 10)
* *{
* * * *// НПС произносит SVM фразу "... все возможно..."
* * * *B_Say(self,self,"$SMALLTALK02");
* *}
* *// с вероятностью 0.04
* *else if(random < 15)
* *{
* * * *// НПС произносит SVM фразу "... он должен больше знать об этом..."
* * * *B_Say(self,self,"$SMALLTALK03");
* *}
* *// с вероятностью 0.04
* *else if(random < 20)
* *{
* * * *// НПС произносит SVM фразу "... как будто у меня и так мало проблем..."
* * * *B_Say(self,self,"$SMALLTALK04");
* *}
* *// с вероятностью 0.04
* *else if(random < 25)
* *{
* * * *// НПС произносит SVM фразу "... кто мог рассказать такое..."
* * * *B_Say(self,self,"$SMALLTALK05");
* *}
* *// с вероятностью 0.04
* *else if(random < 30)
* *{
* * * *// НПС произносит SVM фразу "... все же я еще очень зол..."
* * * *B_Say(self,self,"$SMALLTALK06");
* *}
* *// с вероятностью 0.04
* *else if(random < 35)
* *{
* * * *// НПС произносит SVM фразу "... кое-что болтают..."
* * * *B_Say(self,self,"$SMALLTALK07");
* *}
* *// с вероятностью 0.04
* *else if(random < 40)
* *{
* * * *// НПС произносит SVM фразу "... я бы не делал этого..."
* * * *B_Say(self,self,"$SMALLTALK08");
* *}
* *// с вероятностью 0.04
* *else if(random < 45)
* *{
* * * *// НПС произносит SVM фразу "... это всего лишь запах..."
* * * *B_Say(self,self,"$SMALLTALK09");
* *}
* *// с вероятностью 0.04
* *else if(random < 50)
* *{
* * * *// НПС произносит SVM фразу "... нужно узнать, что они там замышляют..."
* * * *B_Say(self,self,"$SMALLTALK10");
* *}
* *// с вероятностью 0.04
* *else if(random < 55)
* *{
* * * *// НПС произносит SVM фразу "... а я тебе что говорил..."
* * * *B_Say(self,self,"$SMALLTALK11");
* *}
* *// с вероятностью 0.04
* *else if(random < 60)
* *{
* * * *// НПС произносит SVM фразу "... меня никто не спрашивал..."
* * * *B_Say(self,self,"$SMALLTALK12");
* *}
* *// с вероятностью 0.04
* *else if(random < 65)
* *{
* * * *// НПС произносит SVM фразу "... бедный малый может и обидеть кого-нибудь..."
* * * *B_Say(self,self,"$SMALLTALK13");
* *}
* *// с вероятностью 0.04
* *else if(random < 70)
* *{
* * * *// НПС произносит SVM фразу "... ничего нового..."
* * * *B_Say(self,self,"$SMALLTALK14");
* *}
* *// с вероятностью 0.04
* *else if(random < 75)
* *{
* * * *// НПС произносит SVM фразу "... все ясно..."
* * * *B_Say(self,self,"$SMALLTALK15");
* *}
* *// с вероятностью 0.04
* *else if(random < 80)
* *{
* * * *// НПС произносит SVM фразу "... меня не нужно спрашивать..."
* * * *B_Say(self,self,"$SMALLTALK16");
* *}
* *// с вероятностью 0.04
* *else if(random < 85)
* *{
* * * *// НПС произносит SVM фразу "... так не может дальше продолжаться..."
* * * *B_Say(self,self,"$SMALLTALK17");
* *}
* *// с вероятностью 0.04
* *else if(random < 90)
* *{
* * * *// НПС произносит SVM фразу "... мое мнение ты уже знаешь..."
* * * *B_Say(self,self,"$SMALLTALK18");
* *}
* *// с вероятностью 0.04
* *else if(random < 95)
* *{
* * * *// НПС произносит SVM фразу "... я сказал то же самое..."
* * * *B_Say(self,self,"$SMALLTALK19");
* *}
* *// с вероятностью 0.04
* *else if(random < 100)
* *{
* * * *// НПС произносит SVM фразу "... вряд ли что-нибудь изменится из-за этого..."
* * * *B_Say(self,self,"$SMALLTALK20");
* *}
* *// с вероятностью 0.04
* *else if(random < 105)
* *{
* * * *// НПС произносит SVM фразу "... почему я узнаю об этом только сейчас..."
* * * *B_Say(self,self,"$SMALLTALK21");
* *}
* *// с вероятностью 0.04
* *else if(random < 110)
* *{
* * * *// если НПС маг послушник или паладин или маг огня
* * * *if(Npc_GetTrueGuild(self) == GIL_NOV) ¦¦ (Npc_GetTrueGuild(self) == GIL_PAL) ¦¦ (Npc_GetTrueGuild(self) == GIL_KDF)
* * * *{
* * * * * *// с вероятностью 0.5
* * * * * *if(Choice == 0)
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... так написано в священных книгах..."
* * * * * * * *B_Say(self,self,"$SMALLTALK28");
* * * * * *}
* * * * * *else
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... давайте посмотрим, что из этого выйдет..."
* * * * * * * *B_Say(self,self,"$SMALLTALK22");
* * * * * *};
* * * *}
* * * *// если НПС бандит или наемник или охотник на драконов или пират
* * * *else if(Npc_GetTrueGuild(self) == GIL_BDT) ¦¦ (Npc_GetTrueGuild(self) == GIL_SLD) ¦¦ (Npc_GetTrueGuild(self) == GIL_DJG)
* * * *¦¦ *(Npc_GetTrueGuild(self) == GIL_PIR)
* * * *{
* * * * * *// с вероятностью 0.5
* * * * * *if(Choice == 0)
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... он был пьянючий..."
* * * * * * * *B_Say(self,self,"$SMALLTALK25");
* * * * * *}
* * * * * *else
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... давайте посмотрим, что из этого выйдет..."
* * * * * * * *B_Say(self,self,"$SMALLTALK22");
* * * * * *};
* * * *}
* * * *else // остальные гильдии
* * * *{
* * * * * *// НПС произносит SVM фразу "... давайте посмотрим, что из этого выйдет..."
* * * * * *B_Say(self,self,"$SMALLTALK22");
* * * *}; *
* *}
* *// с вероятностью 0.04
* *else if(random < 115)
* *{
* * * *// если НПС маг послушник или паладин или маг огня
* * * *if(Npc_GetTrueGuild(self) == GIL_NOV) ¦¦ (Npc_GetTrueGuild(self) == GIL_PAL) ¦¦ (Npc_GetTrueGuild(self) == GIL_KDF)
* * * *{
* * * * * *// с вероятностью 0.5
* * * * * *if(Choice == 0)
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... я действую по приказу Инноса..."
* * * * * * * *B_Say(self,self,"$SMALLTALK29");
* * * * * *}
* * * * * *else
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... некоторые проблемы решаются сами собой..."
* * * * * * * *B_Say(self,self,"$SMALLTALK23");
* * * * * *};
* * * *}
* * * *// если НПС бандит или наемник или охотник на драконов или пират
* * * *else if(Npc_GetTrueGuild(self) == GIL_BDT) ¦¦ (Npc_GetTrueGuild(self) == GIL_SLD) ¦¦ (Npc_GetTrueGuild(self) == GIL_DJG)
* * * *¦¦ (Npc_GetTrueGuild(self) == GIL_PIR)
* * * *{
* * * * * *// с вероятностью 0.5
* * * * * *if(Choice == 0)
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... со мной бы этот номер не прошел..."
* * * * * * * *B_Say(self,self,"$SMALLTALK26");
* * * * * *}
* * * * * *else
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... некоторые проблемы решаются сами собой..."
* * * * * * * *B_Say(self,self,"$SMALLTALK23");
* * * * * *};
* * * *}
* * * *else // остальные гильдии
* * * *{
* * * * * *// НПС произносит SVM фразу "... некоторые проблемы решаются сами собой..."
* * * * * *B_Say(self,self,"$SMALLTALK23");
* * * *}; *
* *}
* *// с вероятностью 0.04
* *else if(random <= 120)
* *{ * * *
* * * *// если НПС маг послушник или паладин или маг огня
* * * *if(Npc_GetTrueGuild(self) == GIL_NOV) ¦¦ (Npc_GetTrueGuild(self) == GIL_PAL) ¦¦ (Npc_GetTrueGuild(self) == GIL_KDF)
* * * *{
* * * * * *// с вероятностью 0.5
* * * * * *if(Choice == 0)
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... никому не позволено нарушать указания богов..."
* * * * * * * *B_Say(self,self,"$SMALLTALK30");
* * * * * *}
* * * * * *else
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... я не могу больше это слушать..."
* * * * * * * *B_Say(self,self,"$SMALLTALK24");
* * * * * *};
* * * *}
* * * *// если НПС бандит или наемник или охотник на драконов или пират
* * * *else if(Npc_GetTrueGuild(self) == GIL_BDT) ¦¦ (Npc_GetTrueGuild(self) == GIL_SLD) ¦¦ (Npc_GetTrueGuild(self) == GIL_DJG)
* * * *¦¦ (Npc_GetTrueGuild (self) == GIL_PIR)
* * * *{
* * * * * *// с вероятностью 0.5
* * * * * *if(Choice == 0)
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... все убежали словно зайцы, я остался один..."
* * * * * * * *B_Say(self,self,"$SMALLTALK27");
* * * * * *}
* * * * * *else
* * * * * *{
* * * * * * * *// НПС произносит SVM фразу "... я не могу больше это слушать..."
* * * * * * * *B_Say(self,self,"$SMALLTALK24");
* * * * * *};
* * * *}
* * * *else // остальные гильдии
* * * *{
* * * * * *// НПС произносит SVM фразу "... я не могу больше это слушать..."
* * * * * *B_Say(self,self,"$SMALLTALK24");
* * * *}; *
* *};
};

... и ещё

// ************************************************** **************
// НПС slf произносит для НПС oth быструю SVM фразу text
// ----------------------------------------------------------------
// От B_Say() отличается только тем, что следующие AI команды будут
// выполняться не ожидая окончания фразы
// ************************************************** **************

func void B_Say_Overlay(var C_NPC slf,var C_Npc oth,var string text)
{
* *AI_OutputSVM_Overlay(slf,oth,text);
};

Ответить с цитированием