Показать сообщение отдельно
Старый 11.08.2005, 14:35   #229
Vam

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

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

* *9. Функции входа в Старый мир (Миненталь).

Файл B_Enter_OldWorld.d

// Вход в Миненталь в Главе 1
// Примечание: функция не используется, можно удалить вместе с флагом

var int EnterOW_Kapitel1; * // флаг одноразовости

func void B_ENTER_OLDWORLD_Kapitel_1()
{
* *if (EnterOW_Kapitel1 == FALSE)
* *{
* * * *EnterOW_Kapitel1 = TRUE;
* *};
};

// Вход в Миненталь в Главе 2
// Примечание: функция не используется, можно удалить вместе с флагом

var int EnterOW_Kapitel2; * // флаг одноразовости

func void B_ENTER_OLDWORLD_Kapitel_2()
{
* *if (EnterOW_Kapitel2 == FALSE)
* *{
* * * *EnterOW_Kapitel2 = TRUE;
* *};
};

// Вход в Миненталь в Главе 3

var int EnterOW_Kapitel3; * // флаг одноразовости

func void B_ENTER_OLDWORLD_Kapitel_3()
{
* *// если флаг сброшен
* *if(EnterOW_Kapitel3 == FALSE)
* *{
* * * *// удалить Мильтона
* * * *B_RemoveNpc(PC_Mage_OW);
* * * *// удалить Горна
* * * *B_RemoveNpc(PC_Fighter_OW);
* * * *// удалить Диего
* * * *B_RemoveNpc(PC_ThiefOW);
* * * *// респавн живности
* * * *// Примечание: Здесь и далее значок //!!!!!! означает, что часть текста скрипта пропущена для краткости
* * * *//!!!!!!
* * * *// вставить руну Страх в Старой башне Ксардаса
* * * *Wld_InsertItem(ItRu_Fear,"FP_ITEM_XARDASALTERTURM _01");
* * * *// если ГГ маг Огня
* * * *if(hero.guild == GIL_KDF)
* * * *{
* * * * * *// вставить Рунический камень
* * * * * *Wld_InsertItem(ItMi_RuneBlank,"FP_ITEM_XARDASALTE RTURM_02");
* * * *}
* * * *else // иначе
* * * *{
* * * * * *// вставить кусок Руды
* * * * * *Wld_InsertItem(ItMi_Nugget,"FP_ITEM_XARDASALTERTU RM_02");
* * * *};
* * * *// установить флаг
* * * *EnterOW_Kapitel3 = TRUE;
* *};
};

// Вход в Миненталь в Главе 4

var int EnterOW_Kapitel4; * // флаг одноразовости

func void B_ENTER_OLDWORLD_Kapitel_4()
{
* *// если флаг сброшен
* *if(EnterOW_Kapitel4 == FALSE)
* *{
* * * *// если Энгром жив
* * * *if((Npc_IsDead(Engrom)) == FALSE)
* * * *{
* * * * * *// задать распорядок дня
* * * * * *B_StartOtherRoutine(Engrom,"Obsessed");
* * * * * *// дать Энгрому Кожу шныга
* * * * * *CreateInvItems(Engrom,ItAt_TalbinsLurkerSkin,1);
* * * * * *// если ГГ маг Огня
* * * * * *if(hero.guild == GIL_KDF)
* * * * * *{
* * * * * * * *// дать Энгрому "Альманах одержимости"
* * * * * * * *CreateInvItems(Engrom,ITWR_DementorObsessionBook_ MIS,1);
* * * * * *}
* * * * * *else // иначе
* * * * * *{
* * * * * * * *// убить Энгрома
* * * * * * * *B_KillNpc(Engrom);
* * * * * *};
* * * * * *// Энгром ушел от Тальбина
* * * * * *EngromIsGone = TRUE;
* * * *};
* * * *// убить НПС
* * * *B_RemoveNpc(STRF_1115_Geppert); * * // Гепперт
* * * *B_RemoveNpc(STRF_1116_Kervo); * * * // Керво
* * * *B_RemoveNpc(VLK_4106_Dobar); * * * *// Добар
* * * *B_RemoveNpc(VLK_4107_Parlaf); * * * // Парлаф
* * * *// если Сенграт жив
* * * *if((Npc_IsDead(Sengrath)) == FALSE)
* * * *{
* * * * * *// Сенграт идет к забору орков
* * * * * *B_StartOtherRoutine(Sengrath,"ORCBARRIER");
* * * * * *// если у него есть арбалет
* * * * * *if(Npc_HasItems(Sengrath,ItRw_Mil_Crossbow))
* * * * * *{
* * * * * * * *// удалить арбалет
* * * * * * * *Npc_RemoveInvItem(Sengrath,ItRw_Mil_Crossbow);
* * * * * *};
* * * * * *// дать Сенграту его арбалет
* * * * * *CreateInvItems(Sengrath,ItRw_SengrathsArmbrust_MI S,1);
* * * * * *// Сенграт ушел к оркам
* * * * * *Sengrath_Missing = TRUE;
* * * * * *// убить Сенграта
* * * * * *B_KillNpc(Sengrath);
* * * *};
* * * *// вставка мертвых Охотников на драконов
* * * *//!!!!!!
* * * *// Брутус боится мясных жуков
* * * *Npc_ExchangeRoutine(Brutus,"Meatbugs");
* * * *Wld_InsertNpc(Meatbug_Brutus1,"OC_FOLTER_SHARP"); *
* * * *Wld_InsertNpc(Meatbug_Brutus2,"OC_FOLTER_SHARP"); *
* * * *Wld_InsertNpc(Meatbug_Brutus3,"OC_FOLTER_SHARP"); *
* * * *Wld_InsertNpc(Meatbug_Brutus4,"OC_FOLTER_SHARP"); *
* * * *// вставка Сильвио
* * * *Wld_InsertNpc(DJG_700_Sylvio,"OC1");
* * * *// если Булко ушел в Миненталь
* * * *if(SLD_Bullco_is_alive == TRUE)
* * * *{
* * * * * *// вставить Булко
* * * * * *Wld_InsertNpc(DJG_701_Bullco,"OC1");
* * * *};
* * * *// если Род ушел в Миненталь
* * * *if(SLD_Rod_is_alive == TRUE)
* * * *{
* * * * * *// вставить Рода
* * * * * *Wld_InsertNpc(DJG_702_Rod,"OC1");
* * * *};
* * * *// если Сайфер ушел в Миненталь
* * * *if(SLD_Cipher_is_alive == TRUE)
* * * *{
* * * * * *// вставить Сайфера
* * * * * *Wld_InsertNpc(DJG_703_Cipher,"OC1");
* * * *};
* * * *// если Горн ушел в Миненталь
* * * *if(SLD_Gorn_is_alive == TRUE)
* * * *{
* * * * * *// вставить Горна
* * * * * *Wld_InsertNpc(PC_Fighter_DJG,"OC1");
* * * *};
* * * *// вставить других охотников на драконов
* * * *Wld_InsertNpc(DJG_705_Angar,"OC1");
* * * *Wld_InsertNpc(DJG_708_Kurgan,"OC1");
* * * *Wld_InsertNpc(DJG_709_Rethon,"OC1");
* * * *Wld_InsertNpc(DJG_710_Kjorn,"OC1");
* * * *Wld_InsertNpc(DJG_711_Godar,"OC1");
* * * *Wld_InsertNpc(DJG_712_Hokurn,"OC1");
* * * *Wld_InsertNpc(DJG_713_Biff,"OC1");
* * * *Wld_InsertNpc(DJG_714_Jan,"OC1");
* * * *Wld_InsertNpc(DJG_715_Ferros,"OC1");
* * * *// вставить Ур-Шака
* * * *Wld_InsertNpc(NONE_110_Urshak,"WP_INTRO_FALL");
* * * *// респавн живности и вставка предметов
* * * *//!!!!!!
* * * *// создать тему "Охотники на драконов"
* * * *Log_CreateTopic(TOPIC_Dragonhunter,LOG_MISSION);
* * * *// задать статус темы
* * * *Log_SetTopicStatus(TOPIC_Dragonhunter,LOG_RUNNING );
* * * *// запись в дневник
* * * *B_LogEntry(TOPIC_Dragonhunter,"Началась охота на драконов и она должна заманить в рудниковую долину больших авантюристов. Я могу только надеяться, что они не встанут у меня на пути.");
* * * *// заставка Главы 4 * *
* * * *IntroduceChapter(KapWechsel_4,KapWechsel_4_Text," chapter4.tga","
chapter_01.wav",6000);
* * * *// установить флаг
* * * *EnterOW_Kapitel4 = TRUE;
* *};
* *// если ГГ отказался провести Тальбина за перевал
* *if(Talbin_FollowsThroughPass == LOG_OBSOLETE)
* *{
* * * *// убить Тальбина
* * * *B_KillNpc(VLK_4130_Talbin);
* * * *// вставка остера, убившего Тальбина
* * * *Wld_InsertNpc(Dragonsnapper,"START");
* * * *// задание провалено
* * * *Talbin_FollowsThroughPass = LOG_FAILED;
* *}
* *// иначе, если Тальбин ушел за перевал
* *else if(Talbin_FollowsThroughPass == LOG_SUCCESS)
* *{
* * * *// удалить Тальбина
* * * *B_RemoveNpc(VLK_4130_Talbin);
* * * *// Примечание: данную строку необходимо удалить!
* * * *Talbin_FollowsThroughPass = LOG_FAILED;
* *};
};

// Вход в Миненталь в Главе 5

var int EnterOW_Kapitel5; * // флаг одноразовости

func void B_ENTER_OLDWORLD_Kapitel_5()
{
* *// если флаг сброшен
* *if(EnterOW_Kapitel5 == FALSE)
* *{
* * * *// сброс флагов охраны главных ворот
* * * *VLK_4143_HaupttorWache.flags = 0;
* * * *// дать стражнику Башенный ключ стражника главных ворот * * * * * * * * * *
* * * *CreateInvItems(VLK_4143_HaupttorWache,ITKE_OC_MAI NGATE_MIS,1);
* * * *// если Брутус жив
* * * *if(Npc_IsDead(Brutus) == FALSE)
* * * *{
* * * * * *// дать Брутусу "Альманах одержимости"
* * * * * *CreateInvItems(VLK_4100_Brutus,ITWR_DementorObses sionBook_MIS,1);
* * * *};
* * * *// если Бильгот покинул Миненталь
* * * *if(TschuessBilgot == TRUE)
* * * *{
* * * * * *// удалить Бильгота
* * * * * *B_RemoveNpc(VLK_4120_Bilgot);
* * * *};
* * * *// установить флаг
* * * *EnterOW_Kapitel5 = TRUE;
* *};
* *// если Бифф покинул Миненталь
* *if(Biff_FollowsThroughPass == LOG_SUCCESS)
* *{
* * * *// удалить Биффа
* * * *B_RemoveNpc(DJG_713_Biff);
* *};
};

// Вход в Миненталь в Главе 5
// Примечание: функция не используется, можно удалить вместе с флагом

var int EnterOW_Kapitel6; * // флаг одноразовости

func void B_ENTER_OLDWORLD_Kapitel_6()
{
* *if(EnterOW_Kapitel6 == FALSE)
* *{
* * * *EnterOW_Kapitel6 = TRUE;
* *};
};

// Общая функция входа в Миненталь
func void B_ENTER_OLDWORLD()
{
* *// инициализация глобальных НПС
* *B_InitNpcGlobals();
* *// в зависимости от главы вызвать соответствующую функцию
* *if (Kapitel >= 1) * { B_ENTER_OLDWORLD_Kapitel_1(); };
* *if (Kapitel >= 2) * { B_ENTER_OLDWORLD_Kapitel_2(); };
* *if (Kapitel >= 3) * { B_ENTER_OLDWORLD_Kapitel_3(); };
* *if (Kapitel >= 4) * { B_ENTER_OLDWORLD_Kapitel_4(); };
* *if (Kapitel >= 5) * { B_ENTER_OLDWORLD_Kapitel_5(); };
* *if (Kapitel >= 6) * { B_ENTER_OLDWORLD_Kapitel_6(); };
* *// задать текущий уровень
* *CurrentLevel = OLDWORLD_ZEN;
* *// инициализация глобальных НПС (уже было, можно удалить)
* *B_InitNpcGlobals();
* *// если Бифф член партии ГГ и Бифф жив
* *if(DJG_BiffParty == TRUE) && (Npc_IsDead(Biff) == FALSE)
* *{
* * * *// если ГГ отдает Биффу половину добычи
* * * *if(DJG_Biff_HalbeHalbe == TRUE)
* * * *{
* * * * * *// отказ от диалога на 500мс
* * * * * *Npc_SetRefuseTalk(Biff,500);
* * * *}
* * * *else
* * * *{
* * * * * *// отказ от диалога на 300мс
* * * * * *Npc_SetRefuseTalk(Biff,300);
* * * *};
* *};
* *// если Бильгот мертв и ГГ вел его за перевал
* *if(Npc_IsDead(Bilgot) == TRUE) && (MIS_RescueBilgot == LOG_RUNNING)
* *{
* * * *// задание провалено
* * * *MIS_RescueBilgot = LOG_FAILED;
* *}; *
};


* *10. Функция получения текущего дня.

Файл B_GetDayPlus.d

// ************************************************** **************
// Функция получения текущего дня
// ************************************************** **************
// Возвращаемое значение: текущий день

func int B_GetDayPlus()
{
* *// если время между 22-00 и 23-59
* *if(Wld_IsTime(22,00,23,59))
* *{
* * * *// возвратить следующий день
* * * *// (так сделано для того, чтобы при получении задания, когда ГГ говорят приходи завтра или утром, у него было время что-то успеть сделать)
* * * *return (Wld_GetDay() + 1);
* *};
* *return Wld_GetDay();
};


* *11. Функция получения стоимости обучения ГГ.

Файл B_GetLearnCostAttribute.d

// ************************************************** **************
// Функция получения стоимости обучения ГГ
// ************************************************** **************
// Аргументы: oth - обучаемый НПС (ГГ), attribut - аттрибут
// Возвращаемое значение: стоимость обучения

func int B_GetLearnCostAttribute(var C_NPC oth,var int attribut)
{
* *// в зависимости от улучшаемого аттрибута определяется стоимость его увеличения на единицу
* *var int kosten;
* *kosten = 0;
* *// если сила
* *if(attribut == ATR_STRENGTH)
* *{
* * * *if(oth.aivar[REAL_STRENGTH] >= 120) * * * * { kosten = 5; }
* * * *else if(oth.aivar[REAL_STRENGTH] >= 90) * * { kosten = 4; }
* * * *else if(oth.aivar[REAL_STRENGTH] >= 60) * * { kosten = 3; }
* * * *else if(oth.aivar[REAL_STRENGTH] >= 30) * * { kosten = 2; }
* * * *else * * * * * * * * * * * * * * * * * * * *{ kosten = 1; };
* *};
* *// если ловкость
* *if(attribut == ATR_DEXTERITY)
* *{
* * * *if(oth.aivar[REAL_DEXTERITY] >= 120) * * * *{ kosten = 5; }
* * * *else if(oth.aivar[REAL_DEXTERITY] >= 90) * *{ kosten = 4; }
* * * *else if(oth.aivar[REAL_DEXTERITY] >= 60) * *{ kosten = 3; }
* * * *else if(oth.aivar[REAL_DEXTERITY] >= 30) * *{ kosten = 2; }
* * * *else * * * * * * * * * * * * * * * * * * * *{ kosten = 1; };
* *};
* *// если мана
* *if (attribut == ATR_MANA_MAX)
* *{ * * *
* * * *if(oth.aivar[REAL_MANA_MAX] >= 120) * * * * { kosten = 5; }
* * * *else if(oth.aivar[REAL_MANA_MAX] >= 90) * * { kosten = 4; }
* * * *else if(oth.aivar[REAL_MANA_MAX] >= 60) * * { kosten = 3; }
* * * *else if(oth.aivar[REAL_MANA_MAX] >= 30) * * { kosten = 2; }
* * * *else * * * * * * * * * * * * * * * * * * * *{ kosten = 1; };
* *};
* *// стоимость обучения
* *return kosten;
};


* *12. Функция получения стоимости обучения навыкам.

Файл B_GetLearnCostTalent.d

// ************************************************** **************
// Функция получения стоимости обучения навыкам
// ************************************************** **************
// Аргументы: oth - обучаемый НПС (ГГ), talent - навык, skill - уровень мастерства
// Возвращаемое значение: стоимость обучения

func int B_GetLearnCostTalent(var C_NPC oth,var int talent,var int skill)
{
* *var int kosten;
* *kosten = 0;
* *// повышение владения кругом магии
* *if(talent == NPC_TALENT_MAGE)
* *{
* * * *if(skill >= 1) && (skill <= 6)
* * * *{
* * * * * *kosten = 5;
* * * *};
* *};
* *// владение одноручником
* *if(talent == NPC_TALENT_1H)
* *{ *
* * * *if(oth.aivar[REAL_TALENT_1H] >= 120) * * * *{ kosten = 5; }
* * * *else if(oth.aivar[REAL_TALENT_1H] >= 90) * *{ kosten = 4; }
* * * *else if(oth.aivar[REAL_TALENT_1H] >= 60) * *{ kosten = 3; }
* * * *else if(oth.aivar[REAL_TALENT_1H] >= 30) * *{ kosten = 2; }
* * * *else * * * * * * * * * * * * * * * * * * * *{ kosten = 1; };
* * * *kosten = (kosten * skill);
* *};
* *// владение двуручником
* *if(talent == NPC_TALENT_2H)
* *{ *
* * * *if(oth.aivar[REAL_TALENT_2H] >= 120) * * * *{ kosten = 5; }
* * * *else if(oth.aivar[REAL_TALENT_2H] >= 90) * *{ kosten = 4; }
* * * *else if(oth.aivar[REAL_TALENT_2H] >= 60) * *{ kosten = 3; }
* * * *else if(oth.aivar[REAL_TALENT_2H] >= 30) * *{ kosten = 2; }
* * * *else * * * * * * * * * * * * * * * * * * * *{ kosten = 1; };
* * * *kosten = (kosten * skill);
* *};
* *// владение луком
* *if(talent == NPC_TALENT_BOW)
* *{ *
* * * *if(oth.aivar[REAL_TALENT_BOW] >= 120) * * * { kosten = 5; }
* * * *else if(oth.aivar[REAL_TALENT_BOW] >= 90) * { kosten = 4; }
* * * *else if(oth.aivar[REAL_TALENT_BOW] >= 60) * { kosten = 3; }
* * * *else if(oth.aivar[REAL_TALENT_BOW] >= 30) * { kosten = 2; }
* * * *else * * * * * * * * * * * * * * * * * * * *{ kosten = 1; };
* * * *kosten = (kosten * skill);
* *};
* *// владение арбалетом
* *if(talent == NPC_TALENT_CROSSBOW)
* *{ *
* * * *if(oth.aivar[REAL_TALENT_CROSSBOW] >= 120) * * *{ kosten = 5; }
* * * *else if(oth.aivar[REAL_TALENT_CROSSBOW] >= 90) *{ kosten = 4; }
* * * *else if(oth.aivar[REAL_TALENT_CROSSBOW] >= 60) *{ kosten = 3; }
* * * *else if(oth.aivar[REAL_TALENT_CROSSBOW] >= 30) *{ kosten = 2; }
* * * *else * * * * * * * * * * * * * * * * * * * * * *{ kosten = 1; };
* * * *kosten = (kosten * skill);
* *};
* *// подкрадывание или акробатика
* *if(talent == NPC_TALENT_SNEAK) ¦¦ (talent == NPC_TALENT_ACROBAT)
* *{
* * * *kosten = 5;
* *};
* *// вскрытие замков или карманная кража
* *if(talent == NPC_TALENT_PICKLOCK) ¦¦ (talent == NPC_TALENT_PICKPOCKET)
* *{
* * * *kosten = 10;
* *};
* *// кузнечное дело
* *if(talent == NPC_TALENT_SMITH)
* *{
* * * *if(skill == WEAPON_Common) * * * * * * *{ kosten = 2; }
* * * *else if(skill == WEAPON_1H_Special_01) *{ kosten = 4; }
* * * *else if(skill == WEAPON_2H_Special_01) *{ kosten = 4; }
* * * *else if(skill == WEAPON_1H_Special_02) *{ kosten = 6; }
* * * *else if(skill == WEAPON_2H_Special_02) *{ kosten = 6; }
* * * *else if(skill == WEAPON_1H_Special_03) *{ kosten = 8; }
* * * *else if(skill == WEAPON_2H_Special_03) *{ kosten = 8; }
* * * *else if(skill == WEAPON_1H_Special_04) *{ kosten = 10;}
* * * *else if(skill == WEAPON_2H_Special_04) *{ kosten = 10;}
* * * *else if(skill == WEAPON_1H_Harad_01) * *{ kosten = 4; }
* * * *else if(skill == WEAPON_1H_Harad_02) * *{ kosten = 6; }
* * * *else if(skill == WEAPON_1H_Harad_03) * *{ kosten = 8; }
* * * *else if(skill == WEAPON_1H_Harad_04) * *{ kosten = 10;};
* *};
* *// алхимия
* *if(talent == NPC_TALENT_ALCHEMY)
* *{
* * * *if * * (skill == POTION_Health_01) * * *{ kosten = 1; }
* * * *else if(skill == POTION_Health_02) * * *{ kosten = 3; }
* * * *else if(skill == POTION_Health_03) * * *{ kosten = 5; }
* * * *else if(skill == POTION_Health_04) * * *{ kosten = 8; }
* * * *else if(skill == POTION_Mana_01 *) * * *{ kosten = 1; }
* * * *else if(skill == POTION_Mana_02 *) * * *{ kosten = 3; }
* * * *else if(skill == POTION_Mana_03 *) * * *{ kosten = 5; }
* * * *else if(skill == POTION_Mana_04 *) * * *{ kosten = 8; }
* * * *else if(skill == POTION_Speed * *) * * *{ kosten = 5; }
* * * *else if(skill == POTION_Perm_STR ) * * *{ kosten = 20;}
* * * *else if(skill == POTION_Perm_DEX ) * * *{ kosten = 20;}
* * * *else if(skill == POTION_Perm_Mana) * * *{ kosten = 10;}
* * * *else if(skill == POTION_Perm_Health) * *{ kosten = 10;}
* * * *else if(skill == POTION_MegaDrink) * * *{ kosten = 20;};
* *};
* *// разделка животных
* *if(talent == NPC_TALENT_TAKEANIMALTROPHY)
* *{
* * * *if * * (skill == TROPHY_Teeth * * * ) * { kosten = 3; }
* * * *else if(skill == TROPHY_Claws * * * ) * { kosten = 3; }
* * * *else if(skill == TROPHY_Fur * * * * ) * { kosten = 5; }
* * * *else if(skill == TROPHY_Heart * * * ) * { kosten = 3; }
* * * *else if(skill == TROPHY_ShadowHorn *) * { kosten = 3; }
* * * *else if(skill == TROPHY_FireTongue *) * { kosten = 1; }
* * * *else if(skill == TROPHY_BFWing * * *) * { kosten = 1; }
* * * *else if(skill == TROPHY_BFSting * * ) * { kosten = 1; }
* * * *else if(skill == TROPHY_Mandibles * ) * { kosten = 1; }
* * * *else if(skill == TROPHY_CrawlerPlate) * { kosten = 3; }
* * * *else if(skill == TROPHY_DrgSnapperHorn) { kosten = 1; }
* * * *else if(skill == TROPHY_DragonScale ) * { kosten = 3; }
* * * *else if(skill == TROPHY_DragonBlood ) * { kosten = 3; }
* * * *else if(skill == TROPHY_ReptileSkin ) * { kosten = 3; };
* *}; * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *// иностранные языки
* *if(talent == NPC_TALENT_FOREIGNLANGUAGE)
* *{
* * * *if * * (skill == LANGUAGE_1) * * * *{ kosten = 5; }
* * * *else if(skill == LANGUAGE_2) * * * *{ kosten = 10;}
* * * *else if(skill == LANGUAGE_3) * * * *{ kosten = 15;};
* *};
* *// обучение Огонька
* *if(talent == NPC_TALENT_WISPDETECTOR)
* *{
* * * *if * * (skill == WISPSKILL_NF * *) *{ kosten = 0; }
* * * *else if(skill == WISPSKILL_FF * *) *{ kosten = 1; }
* * * *else if(skill == WISPSKILL_NONE *) *{ kosten = 2; }
* * * *else if(skill == WISPSKILL_RUNE *) *{ kosten = 3; }
* * * *else if(skill == WISPSKILL_MAGIC ) *{ kosten = 4; }
* * * *else if(skill == WISPSKILL_FOOD *) *{ kosten = 5; }
* * * *else if(skill == WISPSKILL_POTIONS) { kosten = 5; };
* *};
* *// изготовление рун
* *if(talent == NPC_TALENT_RUNES)
* *{
* * * *if * * (skill == SPL_PalLight * * * ) * { kosten = 1; }
* * * *else if(skill == SPL_PalLightHeal * ) * { kosten = 3; }
* * * *else if(skill == SPL_PalHolyBolt * *) * { kosten = 3; }
* * * *else if(skill == SPL_PalMediumHeal *) * { kosten = 5; }
* * * *else if(skill == SPL_PalRepelEvil * ) * { kosten = 5; }
* * * *else if(skill == SPL_PalFullHeal * *) * { kosten = 10;}
* * * *else if(skill == SPL_PalDestroyEvil ) * { kosten = 10;}
* * * *else if(skill == SPL_PalTeleportSecret) { kosten = 5; }
* * * *else if(skill == SPL_Light * * * * *) * { kosten = 1; }
* * * *else if(skill == SPL_Firebolt * * * ) * { kosten = 5; }
* * * *else if(skill == SPL_LightHeal * * *) * { kosten = 3; }
* * * *else if(skill == SPL_SummonGoblinSkeleton) { kosten = 3;}
* * * *else if(skill == SPL_Zap * * * * * *) * { kosten = 3; }
* * * *else if(skill == SPL_Icebolt * * * *) * { kosten = 5; }
* * * *else if(skill == SPL_InstantFireball) * { kosten = 10;}
* * * *else if(skill == SPL_SummonWolf * * ) * { kosten = 5; }
* * * *else if(skill == SPL_WindFist * * * ) * { kosten = 5; }
* * * *else if(skill == SPL_Sleep * * * * *) * { kosten = 5; }
* * * *else if(skill == SPL_Charm * * * * *) * { kosten = 5; }
* * * *else if(skill == SPL_IceLance * * * ) * { kosten = 5; } *
* * * *else if(skill == SPL_Whirlwind * * *) * { kosten = 5; }
* * * *else if(skill == SPL_MediumHeal * * ) * { kosten = 5; }
* * * *else if(skill == SPL_LightningFlash ) * { kosten = 5; }
* * * *else if(skill == SPL_ChargeFireball ) * { kosten = 10;}
* * * *else if(skill == SPL_SummonSkeleton ) * { kosten = 10;}
* * * *else if(skill == SPL_Fear * * * * * ) * { kosten = 5; }
* * * *else if(skill == SPL_IceCube * * * *) * { kosten = 10;}
* * * *else if(skill == SPL_Thunderstorm * ) * { kosten = 5; }
* * * *else if(skill == SPL_Geyser * * * * ) * { kosten = 10;}
* * * *else if(skill == SPL_ChargeZap * * *) * { kosten = 10;}
* * * *else if(skill == SPL_SummonGolem * *) * { kosten = 15;}
* * * *else if(skill == SPL_DestroyUndead *) * { kosten = 10;}
* * * *else if(skill == SPL_Pyrokinesis * *) * { kosten = 10;}
* * * *else if(skill == SPL_WaterFist * * *) * { kosten = 10;} *
* * * *else if(skill == SPL_Firestorm * * *) * { kosten = 15;}
* * * *else if(skill == SPL_IceWave * * * *) * { kosten = 20;}
* * * *else if(skill == SPL_SummonDemon * *) * { kosten = 20;}
* * * *else if(skill == SPL_FullHeal * * * ) * { kosten = 10;}
* * * *else if(skill == SPL_MasterOfDisaster) *{ kosten = 15;}
* * * *else if(skill == SPL_Firerain * * * ) * { kosten = 20;}
* * * *else if(skill == SPL_BreathOfDeath *) * { kosten = 20;}
* * * *else if(skill == SPL_MassDeath * * *) * { kosten = 20;}
* * * *else if(skill == SPL_ArmyOfDarkness ) * { kosten = 20;}
* * * *else if(skill == SPL_Shrink * * * * ) * { kosten = 20;}
* * * *else * * * * * * * * * * * * * * * * * *{ kosten = 5; };
* *};
* *// стоимость
* *return kosten;
};

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