3
« dnia: 2015-01-24, 14:32 »
Witam. Mój 1 wątek, właściwie konto specjalnie dla niego założone, przepraszam jeśli narobię modom roboty.
Czytałem wszystkie samouczki które znalazłem o takiej tematyce i googlowałem długo i namiętnie, ale po prostu nie umiem dostatecznie skryptów.
Chciałbym żeby ułamek many max był dodawany do obrażeń (zrobione pomyślnie przez dodanie mana max/5 do dam_index_magic + odświeżanie w starcie) potem, żeby dam_index_magic był dodawany (tuning zostawiam na później) do obrażeń zadawanych przez zaklęcia. Jedyne co przyszło mi do głowy (ze względu na ograniczoną głowę) to dodanie do skryptów spell zmiennych w sposób:
var int damage;
INSTANCE Spell_Zap (C_Spell_Proto)
{
time_per_mana = 0;
damageType = DAM_MAGIC;
damage = (30 + (self.damage [DAM_INDEX_MAGIC]));
damage_per_level = damage;
};
Po długich i namiętnych testach na różne sposoby, także z dodaniem linijki tutaj:
func int Spell_Logic_Zap(var int manaInvested)
{
damage = (30 + (self.damage [DAM_INDEX_MAGIC]));
if (Npc_GetActiveSpellIsScroll(self) && (self.attribute[ATR_MANA] >= SPL_Cost_Scroll))
{
return SPL_SENDCAST;
}
else if (self.attribute[ATR_MANA] >= SPL_Cost_Zap)
{
return SPL_SENDCAST;
}
else //nicht genug Mana
{
return SPL_SENDSTOP;
};
obrażenia albo się dodają albo nie (częściej nie) bądź w najlepszym wypadku ustawiają się poprawnie od 2 strzału.
Będzie ktoś uprzejmy powiedzieć mi czy to jest możliwe na silniku gothica (zakładam że jest) i jak to należy zrobić poprawnie?