Използвам AndEngine и EntityModifier да оживявамнякои свойства като мащаба или позицията на много Entities. Необходимо ли е да отмените EntityModifiers след като сте готови или вече е по подразбиране?
И ако това е необходимо: По-добре ли е да се използва
modifier.setAutoUnregisterWhenFinished(true);
или да се обадите
entity.unregisterEntityModifier(modifier);
Благодаря предварително.
Отговори:
1 за отговор № 1Има два булевци, които решават живота на модификаторите
защитен булев mFinished; частен буулейн mAutoUnregisterWhenFinished = true;
Както можете да видите, u е вярнопо подразбиране също mFinished се задава, когато модификаторът е готов. и когато и двете от тези булеани се изпълняват, условието по-долу се работи за унищожаване на модификатора.
if(modifier.isFinished() && modifier.isAutoUnregisterWhenFinished()) {
this.remove(i);
}
За Вашия въпрос зависи от вашето
entity.unregisterEntityModifier(modifier);
горният код се използва, когато искате да приложите нов модификатор към спрата или entity.where като
modifier.setAutoUnregisterWhenFinished(true);
се прилага само когато този модификатор е завършен. например, ако искате да приложите движение на спрайт, когато го докосвате, можете да използвате модификатор за отписване и да приложите нов модификатор.
Благодаря