43
« dnia: 2016-10-13, 15:38 »
Mam taki skrypt gdzie NPC prowadzi nas do WP. Nie zrobiłem tego za pomocą rutyny bo tak też powinno działać. Problem w tym że gdy dialog się kończy to pc_hero z npc udają się do WP a kamera stoi w miejscu i przenosi do bohatera dopiero gdy obydwaj dojdą na miejsce. Gdzie tu jest błąd ?
FUNC VOID DIA_Aron_Yao_Tak()
{
var C_ITEM heroArmor; heroArmor = Npc_GetEquippedArmor(other);
AI_Output (other, self ,"DIA_Aron_Yao_Tak_15_01"); //Oto on
B_GiveInvItems (other, self, Itwr_Wascar_Raport, 1);
B_UseFakeScroll ();
B_GiveInvItems (self, other, Itwr_Wascar_Raport_Open, 1);
AI_Output (self, other ,"DIA_Aron_Yao_Tak_03_02"); //Hmm.. rozumiem
AI_Output (self, other ,"DIA_Aron_Yao_Tak_03_03"); //Znam Wascara, można mu zaufać. Wygląda na to że miał o tobie spore mniemanie, innaczej nie powierzył by ci takiego dokumentu.
if (Hlp_IsItem (heroArmor, itar_prisoner) == TRUE)
{
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_04"); //Odprowadze cię do nadzorcy. Za mną !
}
else
{
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_05"); //Tylko ubierz spodnie zanim z nim porozmawiasz
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_06"); //Odprowadze cię do nadzorcy. Za mną !
};
AI_StopProcessInfos (self);
AI_SetWalkmode (PC_hero, NPC_RUN);
AI_SetWalkmode (SLD_3231_Aron, NPC_RUN);
AI_GotoWP(PC_hero,"KP_PATH_08");
AI_GotoWP(SLD_3231_Aron,"KP_PATH_08");
};
Cały skrypt //========================================
//-----------------> Ardalion
//========================================
INSTANCE DIA_Aron_Yao (C_INFO)
{
npc = SLD_3231_Aron;
nr = 9;
condition = DIA_Aron_Yao_Condition;
information = DIA_Aron_Yao_Info;
permanent = FALSE;
Important = FALSE;
description = "Mam tu raport adresowany do nadzorcy Ardaliona";
};
FUNC INT DIA_Aron_Yao_Condition()
{
if (Npc_KnowsInfo (other, DIA_Aron_HELLO1))
&& (!Npc_KnowsInfo (other, DIA_Ardalion_Hello1)) // dialog powitalny z ardalion
{
return TRUE;
};
};
FUNC VOID DIA_Aron_Yao_INFO()
{
AI_Output (other, self ,"DIA_Aron_Yao_15_01"); //Mam tu raport adresowany do nadzorcy Ardaliona
AI_Output (self, other ,"DIA_Aron_Yao_03_02"); //Do Ardaliona ? jak to ?
AI_Output (other, self ,"DIA_Aron_Yao_15_03"); //Przybyłem tu z Wascarem, polecił mi zobaczyć się z Ardalionem i wręczyć mu raport.
AI_Output (self, other ,"DIA_Aron_Yao_03_04"); //Pokaż mi ten raport
Info_AddChoice (DIA_Aron_Yao, "Oto on", DIA_Aron_Yao_Tak);
Info_AddChoice (DIA_Aron_Yao, "Wybacz ale oddam go tylko do rąk Ardaliona", DIA_Aron_Yao_Nie);
};
FUNC VOID DIA_Aron_Yao_Tak()
{
var C_ITEM heroArmor; heroArmor = Npc_GetEquippedArmor(other);
AI_Output (other, self ,"DIA_Aron_Yao_Tak_15_01"); //Oto on
B_GiveInvItems (other, self, Itwr_Wascar_Raport, 1);
B_UseFakeScroll ();
B_GiveInvItems (self, other, Itwr_Wascar_Raport_Open, 1);
AI_Output (self, other ,"DIA_Aron_Yao_Tak_03_02"); //Hmm.. rozumiem
AI_Output (self, other ,"DIA_Aron_Yao_Tak_03_03"); //Znam Wascara, można mu zaufać. Wygląda na to że miał o tobie spore mniemanie, innaczej nie powierzył by ci takiego dokumentu.
if (Hlp_IsItem (heroArmor, itar_prisoner) == TRUE)
{
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_04"); //Odprowadze cię do nadzorcy. Za mną !
}
else
{
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_05"); //Tylko ubierz spodnie zanim z nim porozmawiasz
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_06"); //Odprowadze cię do nadzorcy. Za mną !
};
AI_StopProcessInfos (self);
AI_SetWalkmode (PC_hero, NPC_RUN);
AI_SetWalkmode (SLD_3231_Aron, NPC_RUN);
AI_GotoWP(PC_hero,"KP_PATH_08");
AI_GotoWP(SLD_3231_Aron,"KP_PATH_08");
};
FUNC VOID DIA_Aron_Yao_Nie()
{
var C_ITEM heroArmor; heroArmor = Npc_GetEquippedArmor(other);
AI_Output (other, self ,"DIA_Aron_Yao_Nie_15_01"); //Wybacz ale oddam go tylko do rąk Ardaliona
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_02"); //Dla ciebie jest to nadzorca Ardalion, czy to jasne ?
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_03"); //Jeśli mnie okłamałeś napewno zaraz odczujesz to na swojej skórze.
B_GivePlayerXP (100);
if (Hlp_IsItem (heroArmor, itar_prisoner) == TRUE)
{
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_04"); //Odprowadze cię do niego. Za mną !
}
else
{
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_05"); //Tylko ubierz spodnie zanim z nim porozmawiasz
AI_Output (self, other ,"DIA_Aron_Yao_Nie_03_06"); //Odprowadze cię do niego. Za mną !
};
AI_StopProcessInfos (self);
AI_SetWalkmode (PC_hero, NPC_RUN);
AI_SetWalkmode (SLD_3231_Aron, NPC_RUN);
AI_GotoWP(PC_hero,"KP_PATH_08");
AI_GotoWP(SLD_3231_Aron,"KP_PATH_08");
};