Undefined function: SPELL_LOGIC_F 2705 2

O temacie

Autor Pan.L

Zaczęty 18.09.2020 roku

Wyświetleń 2705

Odpowiedzi 2

Pan.L

Pan.L

Użytkownicy
posty72
Propsy3
Profesjabrak
  • Użytkownicy
Witam, tworzę nowy czar na podstawie poradnika użytkownika Ezzam w dziale samouczki. Napotkałem jednak błąd występujący w pliku Spell_ProcessMana. Z jakiegoś powodu skrypt twierdzi, że ta funkcja:

         if (activeSpell == SPL_FIRE)
        {
                return spell_logic_f(manaInvested);
        };


Jest nieokreślona gdy w pliku zaklęcia wygląda to tak:

func int spell_logic_f(var int manainvested)
{
if(Npc_GetActiveSpellIsScroll(self) && (self.attribute[ATR_MANA] >= SPL_COST_SCROLL))
{
return SPL_SENDCAST;
}
else if(self.attribute[ATR_MANA] >= SPL_COST_FIRE)
{
return SPL_SENDCAST;
}
else
{
return SPL_SENDSTOP;
};
};

Co pominąłem bądź źle zapisałem, że taki błąd się pojawia?
 

N1kX

N1kX

Użytkownicy
posty93
Propsy15
ProfesjaTłumacz
  • Zbanowany
Błąd mówi wprost - nie zna tej funkcji. Aby się dowiedziała, musisz najpierw ją zainicjować, a dopiero potem użyć.

To znaczy, że w gothic.src funkcja czaru musi stać powyżej funkcji, w której jest używany.

AI\Magic\Spells\spell_f.d
****
****
AI\Magic\Spell_ProcessMana.d
 

Pan.L

Pan.L

Użytkownicy
posty72
Propsy3
Profesjabrak
  • Użytkownicy
Problem rozwiązałem. Zamiast stworzyć nowy plik dopisałem nowy czar pod już istniejącym. Jednak jak to bywa napotkałem nowy problem. Zarówno obrażenia jak i zużycie many nie podlegają wartościom które wpisałem pod Instance SPELL_F tylko od  efektu jaki mu przypisze  -_- I tak gdy wpisywałem w Constants "Firebolt" to runa przyjmowała wartości strzały ognia, gdy zmieniłem na "Firestorm" to odpowiadały one małej burzy ognia...
 


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