v0.3.0b: improved item emitter effects, should be more efficient and less buggy
This commit is contained in:
parent
4896b12e2e
commit
770b14dccc
|
@ -33,6 +33,7 @@ public class DiscardedItemSprite extends ItemSprite {
|
||||||
public void drop() {
|
public void drop() {
|
||||||
scale.set( 1 );
|
scale.set( 1 );
|
||||||
am = 1;
|
am = 1;
|
||||||
|
if (emitter != null) emitter.killAndErase();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -105,12 +105,18 @@ public class ItemSprite extends MovieClip {
|
||||||
dropInterval = 0;
|
dropInterval = 0;
|
||||||
|
|
||||||
heap = null;
|
heap = null;
|
||||||
if (emitter != null) emitter.revive();
|
if (emitter != null) {
|
||||||
|
emitter.killAndErase();
|
||||||
|
emitter = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void visible(boolean value){
|
public void visible(boolean value){
|
||||||
this.visible = value;
|
this.visible = value;
|
||||||
if (emitter != null) emitter.visible = value;
|
if (emitter != null && !visible){
|
||||||
|
emitter.killAndErase();
|
||||||
|
emitter = null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public PointF worldToCamera( int cell ) {
|
public PointF worldToCamera( int cell ) {
|
||||||
|
@ -161,7 +167,7 @@ public class ItemSprite extends MovieClip {
|
||||||
|
|
||||||
public ItemSprite view(Item item){
|
public ItemSprite view(Item item){
|
||||||
view(item.image(), item.glowing());
|
view(item.image(), item.glowing());
|
||||||
if (this.emitter != null) this.emitter.on = false;
|
if (this.emitter != null) this.emitter.killAndErase();
|
||||||
Emitter emitter = item.emitter();
|
Emitter emitter = item.emitter();
|
||||||
if (emitter != null && parent != null) {
|
if (emitter != null && parent != null) {
|
||||||
emitter.pos( this );
|
emitter.pos( this );
|
||||||
|
@ -184,7 +190,8 @@ public class ItemSprite extends MovieClip {
|
||||||
@Override
|
@Override
|
||||||
public void kill() {
|
public void kill() {
|
||||||
super.kill();
|
super.kill();
|
||||||
if (emitter != null) emitter.on = false;
|
if (emitter != null) emitter.killAndErase();
|
||||||
|
emitter = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Reference in New Issue
Block a user