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 /> }