Att_hostile - jak zmienić na inny zaraz po upadku pokonanego na ziemię 4454 4

O temacie

Autor pawbuj

Zaczęty 23.08.2009 roku

Wyświetleń 4454

Odpowiedzi 4

pawbuj

pawbuj

Użytkownicy
posty1624
Propsy135
ProfesjaSkrypter
  • Użytkownicy
mam problem. mianowicie kiedy ustawiam w dialogu att_hostile dla npc z którym rozmawiam, to po walce dany npc zawsze ucieka.nie che podejmować dialogu, tylko ratuje się ucieczką
jak zmienić, aby w momencie upadku dany npc, zmienił swój stosunek na inny lub pierwotny?

chodzi mi o moment w którym już leży na ziemi.
problem ten dotyczy praktycznie wszystkich npc z którymi mamy stosunek:hostile.

Jeżeli nie da sie tego w ten sposób zrobić, to jak ustawić w sposób niekolidujący z att_hostile, aby npc po walce wykonał kończący, śmiertelny cios (bez zmiany guild attitudes).
 

MRGreg

MRGreg

Użytkownicy
posty32
  • Użytkownicy
Może się mylę ale wydaje mi się że problem nie tkwi w dialogu tylko w stylu walki postaci. Sprawdź czy nie mają przez przypadek styl walki ustawiony na

fight_tactic   =   FAI_HUMAN_Coward;

a jeżeli tak mają zmień im na FAI_HUMAN_Strong;
 

pawbuj

pawbuj

Użytkownicy
posty1624
Propsy135
ProfesjaSkrypter
  • Użytkownicy
raczej nie.

rozwiązanie jest w pliku zs_assessenemy/ocena wroga
 

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Jeśli chcesz aby jego nastawienie zmieniło się po pokonaniu go, proponuję dodać odpowiednie funkcje w pliku
_Work\Data\Scripts\Content\AI\B_Human\B_CombatReactToDamage.d
Najpierw sprawdź czy zraniony NPC to konkretnie ten o którego ci chodziło oraz czy akurat został powalony na ziemię (HP=1). Jeśli oba te warunki są spełnione, wtedy ustaw mu nastawienie na att_friendly.
Powinno to wyglądać z grubsza tak:
if (self.id == id_modyfikowanego_NPC && self.attribute[ATR_HITPOINTS] == 1)
{
Npc_SetTempAttitude(self, ATT_FRIENDLY);
Npc_SetAttitude(self, ATT_FRIENDLY);
};

pawbuj

pawbuj

Użytkownicy
posty1624
Propsy135
ProfesjaSkrypter
  • Użytkownicy
najlepiej zs_assessenemy, tam jet to dokładniej zdefiniowane.
 


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