Jeśli był taki temat to przepraszam.
Mój błąd polega na tym, że NPC nie zmienia rutyny po dialogu.
Część dialogu:
//========================================
//-----------------> HELLO2
//========================================
INSTANCE DIA_Rob_HELLO2 (C_INFO)
{
npc = BAU_001_Rob;
nr = 2;
condition = DIA_Rob_HELLO2_Condition;
information = DIA_Rob_HELLO2_Info;
permanent = FALSE;
description = "Czy jest w pobliżu jakaś farma?";
};
FUNC INT DIA_Rob_HELLO2_Condition()
{
if (Npc_KnowsInfo (other, DIA_Rob_HELLO1))
{
return TRUE;
};
};
FUNC VOID DIA_Rob_HELLO2_Info()
{
AI_Output (other, self ,"DIA_Rob_HELLO2_15_01"); //Czy jest w pobliżu jakaś farma?
AI_Output (self, other ,"DIA_Rob_HELLO2_03_02"); //Tak. Jest tutaj farma Bengara.
AI_Output (other, self ,"DIA_Rob_HELLO2_03_03"); //Musisz po prostu iść prosto. Nie powinieneś spotkać żadnych niebezpieczeństw.
Log_CreateTopic (TOPIC_farma, LOG_MISSION);
Log_SetTopicStatus (TOPIC_farma, LOG_RUNNING);
B_LogEntry (TOPIC_farma, "Spotkałem farmera - myśliwego imieniem Rob. Kazał mi iść na pobliską farmę Bengara.");
NPC_ExchangeRoutine (self, "HOUSE");
};
I skrypt NPC'a:
// -----------------------------------
instance BAU_001_Rob (Npc_Default)
{
// ------ NSC ------
name = "Rob";
guild = GIL_BAU;
id = 001;
voice = 12;
npctype = NPCTYPE_MAIN;
// ------ Attributes ------
B_SetAttributesToChapter(self, 1);
// ------ NSC relevant talents ------
B_GiveNpcTalents (self);
// ------ Fight tactic ------
fight_tactic = FAI_HUMAN_NORMAL;
// ------ Equipted weapons ------
EquipItem (self, ITMW_1H_SLD_SWORD);
EquipItem (self, itrw_Bow_L_01);
// ------ Inventory ------
B_CreateAmbientInv (self);
CreateInvItems (self, ItAm_Dex_01, 1);
// ------ Visuals ------
B_SetNpcVisual (self, MALE, "Hum_Head_FatBald", Face_N_Mordrag, BodyTex_N, ITAR_BAU_L);
Mdl_SetModelFatness (self, 0);
Mdl_ApplyOverlayMds (self, "Humans_Militia.mds");
// ------ Fight skills ------
B_SetFightSkills (self, 3);
// ------ TA anmelden ------
daily_routine = Rtn_Start_001;
};
FUNC VOID Rtn_START_001()
{
TA_Stand_ArmsCrossed (07,00,15,00,"NW_TO_PASS_01");
TA_Stand_ArmsCrossed (15,00,07,00,"NW_TO_PASS_01");
};
FUNC VOID Rtn_HOUSE_001()
{
TA_Sit_Throne (07,00,12,00,"NW_FARM3_HOUSE_IN_NAVI_2");
TA_Smalltalk (12,00,17,00,"NW_FARM3_HOUSE_IN_NAVI_2");
TA_Sit_Throne (17,00,07,00,"NW_FARM3_HOUSE_IN_NAVI_2");
};
Myślę, że pomożecie. :wink: