|
Re: Скриптинг в Готике
2TSYLin: Попробуй создать скрипт:
instance SEK_30000_FORTUNO_NW(Npc_Default) { * * *id = 30000; \\ ID ЛЮБОГО непися, будь он в Минентале, Яркендаре, Хоринисе должно быть УНИКАЛЬНЫМ * * *name[0] = "Фортуно"; * * *guild = GIL_None; \\ если у тебя не описана гильдия послушников в файле Guilds.d то лучше, пусть он будет без гильдии * * *voice = 13; * * *flags = 0; * * *npcType = NPCTYPE_AMBIENT; * * *B_SetAttributesToChapter (self, 1); * * *aivar[AIV_IGNORE_Murder] = TRUE; * * *aivar[AIV_IGNORE_Theft] = TRUE; * * *aivar[AIV_IGNORE_Sheepkiller] = TRUE; * * *fight_tactic = FAI_HUMAN_COWARD; * * *EquipItem (self, ItMw_1h_Sld_Axe); * * *B_CreateAmbientInv (self); * * *B_SetNpcVisual (self, MALE, "Hum_Head_Bald", 8, 10, itar_nov_h); * * *Mdl_SetModelFatness (self, 0); * * *Mdl_ApplyOverlayMds (self, "Humans_Relaxed.mds"); * * *B_GiveNpcTalents (self); * * *B_SetFightSkills (self, 20); * * *daily_routine = rtn_start_30000; };
func void rtn_start_30000 () { * * *TA_Stand_Eating (5, 0, 11, 0, "NW_FARM3_OUT_06"); * * *TA_Smoke_Joint (11, 0, 24, 0, "NW_FARM3_OUT_06"); * * *TA_Pray_Sleeper (24, 0, 5, 0, "NW_FARM3_OUT_06"); };
В файле Story\Npc_Globals в начале файла напиши var C_Npc FORTUNO_NW; Далее найди в этом же файле функцию func void B_InitNpcGlobals() и после строк
if (Kapitel == 0) * * *{ * * * * * *Kapitel = 1; * * *};
напиши вот что:
FORTUNO_NW = Hlp_GetNpc (SEK_30000_FORTUNO_NW);
Далее в файле Story\Startup.d в функции func void STARTUP_NewWorld_Part_GreatPeasant_01() напиши вот что: Wld_InsertNpc (SEK_30000_FORTUNO_NW, "FARM3");
Теперь самое ответственное: Файл DIA_sek_6006_fortuno.d переименуй в DIA_ SEK_30000_FORTUNO_NW.d и везде замени npc = sek_6006_fortuno; на npc = SEK_30000_FORTUNO_NW;
Заключительный штрих – впиши в файл Gothic.scr строчки DIA_ SEK_30000_FORTUNO_NW.d SEK_30000_FORTUNO_NW.d
Если не получится то ты выдай кусок скрипта, где компилятор ругается и ошибку ZSpy.
|