widac nie masz pojecia co robisz ...
LeGO - barsto twój kawałek kodu :
instance Bar_1(GothicBar)
{ x = 100; y = 20;
};
ale ty robisz tylko instancje tego prototypu który jest już v skryptach LeGo
prototype GothicBar(Bar) {
x = Print_Screen[PS_X] / 2;
y = Print_Screen[PS_Y] - 20;
barTop = 3;
barLeft = 7;
width = 180;
height = 20;
backTex = "Bar_Back.tga";
barTex = "Bar_Misc.tga";
value = 100;
valueMax = 100;
};
twoja instancja zawiera tylko dane które się zmieniają , reszta jest ustawiona jak v prototype (odziedziczona).
instance Bar_1(GothicBar)
{ x = 100;
y = 20;
backTex = "nazwa tekstury podkladu.tga";
barTex = "nazwa tekstury paska.tga";
};
FF_applyonce : tak jest zaprogramowane
func void FF_ApplyOnce(var func function) {
FF_ApplyOnceExt(function, 0, -1);
};
by go zrozumiec potrzebujesz zrozumiec to
func void FF_ApplyOnceExt(var func function, var int delay, var int cycles) {
if(FF_Active(function)) {
return;
};
FF_ApplyExt(function, delay, cycles);
};
i tez mniej więcej cale framefunctions.d ....
co dla ciebie jest ważne to - ze jak v którymkolwiek skrypcie dasz to FF_applyonce(funkcja) a wywołasz to więcej razy, to tak naprawdę tylko raz jest twoja funkcja aplikowana pomocą FF_Apply. Funkcja bedze odnawiana co klatkę enginu

v nieskoczno .
Jak bede mial ochote to otestuje i moze jescze ci pomoge , originalny skript napewno dziala