[G2NK]Problem z funkcją, nie widzi C_NPCISUNDEAD. 2555 2

O temacie

Autor Kranek

Zaczęty 9.11.2009 roku

Wyświetleń 2555

Odpowiedzi 2

Kranek

Kranek

Użytkownicy
posty35
Propsy14
ProfesjaNierób
  • Użytkownicy
No tak, myślałem, że sam sobie radę dam z tym problemem i że nigdy nie będe musiał prosić o pomoć w skryptach, no cóż, stało się.

Problem polaga na tym, iż kiedy piszę nową funkcję, zapisuje ją w odzielnym pliku(nie chce robić burdelu w już istniejących.), dopisuje ją do Gothic.src tak, że by ją czytał, no i oczywiście do B_AssesDamage I B_MM_AssesDamage (Nie pamiętam czy tak się dokładnie to pisze, z resztą nie ważne.). Skrypt działał poprawnie, dopóki nie dodałem w nim warunku:

[codebox]if (C_NpcIsUndead(self) == TRUE)[/codebox]

Teraz kiedy parsuję skrypty, zSpy bezczelnie pluje się, iż:

[codebox]PAR: Undefined function : C_NPCISUNDEAD (line 11)[/codebox]

Sprawdziłem czy ta funkcja rzeczywiście istnieje i ku mojemu zdziwieniu, tak. A tu taki surprise...
Potem pomyślałem: "Może jakimś cudem ten skrypt nie jest dopisany do Gothic.src?". Sprawdziłem i kolejna niespodzianka, otóż jest.

I teraz pojawia się moje pytanie, jeżeli ktoś był by łaskaw objaśnić mi o co tu biega, to byłbym dozgonnie wdzięczny.

PS: Tutaj cały skrypt jakby ktoś potrzebował dla wyjaśnienia sprawy.

[codebox]
func void B_Duril (var C_NPC oth, var C_NPC slf)
   {
      var C_ITEM ready;  
      const int Durilspecialdamage = 100;

      ready = Npc_GetReadiedWeapon(other);

      if (Npc_HasItems(other, Itmw_Duril) == TRUE && Hlp_IsItem(ready, Itmw_Duril) == TRUE)
         {
            if (C_NpcIsUndead(self) == TRUE)
               {
                  Wld_PlayEffect("spellFX_PalRepelEvil_KEY_CAST", self, self, 0, 0, 0, FALSE );
                  B_MagicHurtNpc (slf, slf, Durilspecialdamage);
               };
            if (Hlp_GetInstanceID(slf) == Hlp_GetInstanceID(Zom_5011_Warrior))
            && (slf.flags != NPC_FLAG_IMMORTAL)
               {
                  Wld_PlayEffect("spellFX_Fear",  self, self, 0, 0, 0, FALSE );
                  Wld_PlayEffect("spellFX_LIGHTSTAR_VIOLET",  self, self, 0, 0, 0, FALSE );
                  Wld_PlayEffect("FX_EarthQuake",  self, self, 0, 0, 0, FALSE );
                  Wld_PlayEffect("spellFX_INCOVATION_VIOLET",  self, self, 0, 0, 0, FALSE );
                  Snd_Play    ("MFX_FEAR_CAST" );
                  Snd_Play    ("ZOM_Die" );
                  B_MagicHurtNpc (slf, slf, Durilpecialdamage*1000);
               };
         };
   };
[/codebox]
 


Kranek

Kranek

Użytkownicy
posty35
Propsy14
ProfesjaNierób
  • Użytkownicy
Jak mogłem się tego nie domyśleć? Teraz wszystko zadziałało, no może z wyjątkiem Access Violation (Przez zły efekt bodajże, który zmieniłem). Wielkie dzięki za pomoc, nie wiem co ja bym zrobił.

Cieszę się że (prawie) działa, zamykam temat
Avallach
 


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