Zrobiłem skrypt teleportu do Czerwonej Latarni w spell_teleport_alle.d, zrobiłem runę w It_Runen.d, dodałem do constants.d oraz text.d odpowiednie linijki wszystko działa z wyjątkiem czaru po zmianie czaru na inny wszystko działa więc winny jest czar. Podaję skrypt i proszę o wytkniecie mi mojego błędu
// ------ Czerwona Latarnia------
func int Spell_Logic_TeleportBrothel (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_Teleport)
{
return SPL_SENDCAST;
};
return SPL_NEXTLEVEL;
};
func void Spell_Cast_TeleportBrothel()
{
B_PrintTeleportTooFarAway (NEWWORLD_ZEN);
if (Npc_GetActiveSpellIsScroll(self))
{
self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Scroll;
}
else
{
self.attribute[ATR_MANA] = self.attribute[ATR_MANA] - SPL_Cost_Teleport;
};
AI_Teleport (self, "NW_CITY_HABOUR_PUFF_NADJA");
AI_PlayAni (self, "T_HEASHOOT_2_STAND" );
Oczywiście nie zapomniałem o tej linijce :
if (Npc_GetActiveSpell(self) == SPL_TeleportBrothel ) { Spell_Cast_TeleportBrothel (); };
Problem pojawia się gdy próbuję założyć tą runę robi się crash i tyle.
Musze dodawać gdzieś do funkcji equip jak tak to gdzie??