Z tego co wiem na to nie trzeba skryptu. Wystarczy pobawić się w ustawieniach postaci. A przy okazji skrypty:
Witaj ponownie.
Jest to chyba najważniejszy skrypt w NWN. Dzięki temu gdy przyjdziemy drugi raz to tekst będzie inny niż przy pierwszej rozmowie. Więc po kolei. Najpierw tworzymy 2 teksty. Ten który napiszemy pierwszy usłyszymy przy pierwszej rozmowie. Teraz w tekście "pierwszym" który ma zniknąć podczas "drugiej" rozmowy w zakładce "tekst pojawia się gdy" dajemy skrypt:
Teraz otwieramy zakładkę "wykonane zadania" i wpisujemy skrypt:
Teraz klikamy na tekst który ma się pojawić podczas drugiej rozmowy i w zakładce "tekst pojawia się gdy" dajemy:
No dobra jeszcze kilka skryptów:
Wołający NPC.
Dzięki temu skryptowi NPC będzie coś wołał gdy tylko zobaczy naszego PG
Do OnHetbeat NPC wpisać:
Tekst pojawi się gdy mamy przedmiot w "plecaku".
Do "tekst pojawia się gdy" (mósi to być tekst który wymawia PG!) dajemy:
Witaj ponownie.
Jest to chyba najważniejszy skrypt w NWN. Dzięki temu gdy przyjdziemy drugi raz to tekst będzie inny niż przy pierwszej rozmowie. Więc po kolei. Najpierw tworzymy 2 teksty. Ten który napiszemy pierwszy usłyszymy przy pierwszej rozmowie. Teraz w tekście "pierwszym" który ma zniknąć podczas "drugiej" rozmowy w zakładce "tekst pojawia się gdy" dajemy skrypt:
int StartingConditional()<br />
{<br />
int bCondition = GetIsPC(GetPCSpeaker()) &&<br />
GetLocalInt(GetModule(),"NW_G_M1Q6F08Demon_Free") == FALSE &&<br />
GetLocalInt(OBJECT_SELF,"L_TALKTIMES") < 1;<br />
return bCondition;<br />
}Teraz otwieramy zakładkę "wykonane zadania" i wpisujemy skrypt:
void main()<br />
{<br />
SetLocalInt(OBJECT_SELF,"L_TALKTIMES",GetLocalInt(OBJECT_SELF,"L_TALKTIMES") + 1);<br />
SetLocalObject(OBJECT_SELF,"NW_L_FirstSpeaker",GetPCSpeaker());<br />
}Teraz klikamy na tekst który ma się pojawić podczas drugiej rozmowy i w zakładce "tekst pojawia się gdy" dajemy:
int StartingConditional()<br />
{<br />
int bCondition = GetIsPC(GetPCSpeaker()) &&<br />
GetLocalInt(GetModule(),"NW_G_M1Q6F08Demon_Free") == FALSE &&<br />
GetLocalInt(OBJECT_SELF,"L_TALKTIMES") >= 1;<br />
return bCondition;<br />
}No dobra jeszcze kilka skryptów:
Wołający NPC.
Dzięki temu skryptowi NPC będzie coś wołał gdy tylko zobaczy naszego PG
Do OnHetbeat NPC wpisać:
void main()<br />
{<br />
<br />
object oPC = GetNearestCreature(CREATURE_TYPE_PLAYER_CHAR, PLAYER_CHAR_IS_PC, OBJECT_SELF, 1, CREATURE_TYPE_PERCEPTION, PERCEPTION_SEEN);<br />
<br />
if (IsInConversation(OBJECT_SELF) || GetIsInCombat()) return;<br />
<br />
if (!(GetLocalInt(oPC, "intZmiennaT")<= 1))<br />
return;<br />
<br />
ActionSpeakString("Tekst który NPC ma wypowiedzieć.");<br />
<br />
}Tekst pojawi się gdy mamy przedmiot w "plecaku".
Do "tekst pojawia się gdy" (mósi to być tekst który wymawia PG!) dajemy:
int StartingConditional()<br />
{<br />
int bCondition = GetIsObjectValid(GetItemPossessedBy(GetPCSpeaker(),"Nazwa przedmiotu"));<br />
return bCondition;<br />
}