Zmiana pancerza zależnie od roździału 784 2

O temacie

Autor Neck

Zaczęty 3.09.2022 roku

Wyświetleń 784

Odpowiedzi 2

Neck

Neck

Użytkownicy
posty79
Propsy7
Profesjabrak
  • Użytkownicy
Szukałem podobnego tematu na forum lecz niestety nic nie znalazłem, tak jak w temacie chciałbym zrobić aby z roździałem kilku NPC'om się zmieniał pancerz, próbowałem to zrobić poprzez  rutynę która zmienia się w danym roździale dodając do niej:    CreateInvItems(self,ITAR_SLD_L,1);
AI_EquipArmor(self,ITAR_SLD_L);

Lecz tym sposobem pancerz npctowi zmienia się tylko wtedy gdy zmienimy roździał stojąc obok niego, gdy jesteśmy daleko to pancerz mu się nie zmienia a jedynie dodaje do ekwipunku. Moglibyście może podpowiedzieć w jaki sposób mogę to zrobić aby zadziałało poprawnie?
 

outlander

outlander

Użytkownicy
posty426
Propsy211
ProfesjaReżyser
  • Użytkownicy
Spróbuj dodać te linijki do pliku z rozdziałami. Nie wiem, którą część moddujesz, ale w G1 jest to w pliku scripts\Content\Story\CHAPTERS\B_Kapitelwechsel.d
Pamiętaj, żeby odwołać się bezpośrednio do instancji npc (tj. zastąpić self kodem na npc).
 

frN

frN

Użytkownicy
posty35
Propsy17
ProfesjaGracz
  • Użytkownicy
Ale gdy npc jest poza zasięgiem to chyba nie wykonuje wtedy żadnych akcji z AI i właśnie przez to to nie działa?
Można użyć Mdl_SetVisualBody i wtedy postać ubiera zbroję nawet jeśli jest poza zasięgiem, ale w wielu przypadkach mimo tego, że posiada zbroję założoną (w ekwipunku jest zaznaczona jako aktywna), to wizualnie stoi w samych gaciach i trzeba zapisać/wczytać grę.
Chociaż wydaje mi się, że i na to istniał jakiś fix.
Nie znam się za bardzo, więc mogę się mylić.

Przykład zmiany na podstawie Laresa w Gothic 2, zakłada mu szatę maga
Mdl_SetVisualBody(LARES, "hum_body_Naked0", BODYTEX_N, 0 ,"Hum_Head_Thief", FACE_N_LARES, 0, itar_kdf_l);
Nie wiem jak to wygląda w G1.

//EDIT
Można przerobić funkcję B_RefreshAtInsert(), żeby postać przy spawnie zdejmowała i zakładała ponownie zbroję i razem z Mdl_SetVisualBody powinno dać oczekiwany efekt (można wykorzystać jakiś wolny aivar, żeby sprawdzić czy postać wymaga odświeżenia zbroi)
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry