Rutyna siedzenia przy ognisku. 3877 8

O temacie

Autor Vanarius

Zaczęty 23.10.2015 roku

Wyświetleń 3877

Odpowiedzi 8

Vanarius

Vanarius

Riquer Team
Początkujący Modder
posty332
Propsy62
ProfesjaGrafik 3D
  • Riquer Team
  • Początkujący Modder
W ostatnim poście pisałem że mam problem ze rutynami że postacie stoją przy ognisku zamiast siedzieć oraz że jedna postać nie szła spać.
Ale problemu ze postaciami które stoją dalej został, oglądając świat Khorinis podleciałem koło ogniska i zauważyłem Freepoint'a (ktoś też mi o tym pisał). Wszedłem do skryptu postaci która siedzi przy ognisku, i patrze jest tylko wpisany waypoint, nie ma freepointa wpisanego.
Jak przepisać Freepoint'a do rutyny?
 

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Jeśli to Gothic 2, cała rutyna w spoilerze:

ZS_Sit_Campfire.d
// *******************************************
// NSC setzt sich an Campfire-FP auf den Boden
// *******************************************
func void ZS_Sit_Campfire()
{
   Perception_Set_Normal();
   
   B_ResetAll (self);
   
   if (!C_BodyStateContains(self, BS_SIT))
   {
      AI_SetWalkmode    (self,NPC_WALK);
     
      if (Npc_GetDistToWP (self,self.wp) > TA_DIST_SELFWP_MAX)
       {
         AI_GotoWP   (self, self.wp);
      };
   };         
};
func int ZS_Sit_Campfire_loop()
{
   if ((Npc_IsOnFP (self, "CAMPFIRE"))
   && (!C_BodyStateContains(self, BS_SIT)))
   {   
      AI_AlignToFP    (self);
      AI_PlayAniBS (self,"T_STAND_2_SIT",BS_SIT);
   }
   else if ((Wld_IsFPAvailable(self,"CAMPFIRE"))
       && (!C_BodyStateContains(self, BS_SIT)))
   {
      AI_GotoFP       (self, "CAMPFIRE");
      AI_StandUp       (self);
      AI_AlignToFP    (self);
   };   
   
   return LOOP_CONTINUE;
};
func void ZS_Sit_Campfire_end()
{
   AI_PlayAniBS(self,"T_SIT_2_STAND",BS_STAND);   
};


FP to Freepoint
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Vanarius

Vanarius

Riquer Team
Początkujący Modder
posty332
Propsy62
ProfesjaGrafik 3D
  • Riquer Team
  • Początkujący Modder
Jeśli to Gothic 2, cała rutyna w spoilerze:

ZS_Sit_Campfire.d
// *******************************************
// NSC setzt sich an Campfire-FP auf den Boden
// *******************************************
func void ZS_Sit_Campfire()
{
   Perception_Set_Normal();
   
   B_ResetAll (self);
   
   if (!C_BodyStateContains(self, BS_SIT))
   {
      AI_SetWalkmode    (self,NPC_WALK);
     
      if (Npc_GetDistToWP (self,self.wp) > TA_DIST_SELFWP_MAX)
       {
         AI_GotoWP   (self, self.wp);
      };
   };         
};
func int ZS_Sit_Campfire_loop()
{
   if ((Npc_IsOnFP (self, "CAMPFIRE"))
   && (!C_BodyStateContains(self, BS_SIT)))
   {   
      AI_AlignToFP    (self);
      AI_PlayAniBS (self,"T_STAND_2_SIT",BS_SIT);
   }
   else if ((Wld_IsFPAvailable(self,"CAMPFIRE"))
       && (!C_BodyStateContains(self, BS_SIT)))
   {
      AI_GotoFP       (self, "CAMPFIRE");
      AI_StandUp       (self);
      AI_AlignToFP    (self);
   };   
   
   return LOOP_CONTINUE;
};
func void ZS_Sit_Campfire_end()
{
   AI_PlayAniBS(self,"T_SIT_2_STAND",BS_STAND);   
};


FP to Freepoint
Mi bardziej chodziło o skrypt do postaci.
Chodziło mi o wzór FUNC VOID żeby mógł się jakoś przełączyć na freepoint
 

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
To już się robi samo. Musi być WP i FP blisko moba Campfire i Npc sam znajdzie swoje miejsce.

((Npc_IsOnFP (self, "CAMPFIRE")) = Jeśli npc jest na Freepoincie;
AI_AlignToFP    (self); = przydziel do Freepointu;
((Wld_IsFPAvailable(self,"CAMPFIRE")) = jeśli istnieje Freepoint;
AI_GotoFP       (self, "CAMPFIRE"); = idź do Freepointu;
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Vanarius

Vanarius

Riquer Team
Początkujący Modder
posty332
Propsy62
ProfesjaGrafik 3D
  • Riquer Team
  • Początkujący Modder
Tylko że ja te Freepointy mam wstawione, a npc ich nie wykrywa.
 

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Freepoint nosi nazwę CAMPFIRE? Nie Campfire, campfire, CampFire ani nic takiego, musi być CAMPFIRE
Jeśli tak, pokaż skrypt npc.
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Vanarius

Vanarius

Riquer Team
Początkujący Modder
posty332
Propsy62
ProfesjaGrafik 3D
  • Riquer Team
  • Początkujący Modder
Freepoint nosi nazwę CAMPFIRE? Nie Campfire, campfire, CampFire ani nic takiego, musi być CAMPFIRE
Jeśli tak, pokaż skrypt npc.
Dzięki, nie miałem napisanego na Freepoincie "CAMPFIRE". Dzięki za pomoc :D
Taki mały szczegół a może tak utrudzić pracę nowicjuszowi :P
Jeszcze raz dzięki i sorry że spamie tymi postami
 

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Przez to posłałem Ci rutynę campfire i wyjaśnione poszczególne funkcje.
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Vanarius

Vanarius

Riquer Team
Początkujący Modder
posty332
Propsy62
ProfesjaGrafik 3D
  • Riquer Team
  • Początkujący Modder
Przez to posłałem Ci rutynę campfire i wyjaśnione poszczególne funkcje.
Nie ogarniałem :P, sorry :P
 


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