v3.2.5: added some sync checks to sprite addition and removed old adds

This commit is contained in:
Evan Debenham
2025-09-18 12:36:26 -04:00
parent 1dedfb3029
commit 7d2098426b

View File

@@ -1003,29 +1003,21 @@ public class GameScene extends PixelScene {
customWalls.add( visual.create() ); customWalls.add( visual.create() );
} }
private void addHeapSprite( Heap heap ) { private synchronized void addHeapSprite( Heap heap ) {
ItemSprite sprite = heap.sprite = (ItemSprite)heaps.recycle( ItemSprite.class ); ItemSprite sprite = heap.sprite = (ItemSprite)heaps.recycle( ItemSprite.class );
sprite.revive(); sprite.revive();
sprite.link( heap ); sprite.link( heap );
heaps.add( sprite ); heaps.add( sprite );
} }
private void addDiscardedSprite( Heap heap ) { private synchronized void addDiscardedSprite( Heap heap ) {
heap.sprite = (DiscardedItemSprite)heaps.recycle( DiscardedItemSprite.class ); heap.sprite = (DiscardedItemSprite)heaps.recycle( DiscardedItemSprite.class );
heap.sprite.revive(); heap.sprite.revive();
heap.sprite.link( heap ); heap.sprite.link( heap );
heaps.add( heap.sprite ); heaps.add( heap.sprite );
} }
private void addPlantSprite( Plant plant ) { private synchronized void addBlobSprite( final Blob gas ) {
}
private void addTrapSprite( Trap trap ) {
}
private void addBlobSprite( final Blob gas ) {
if (gas.emitter == null) { if (gas.emitter == null) {
gases.add( new BlobEmitter( gas ) ); gases.add( new BlobEmitter( gas ) );
} }
@@ -1101,18 +1093,6 @@ public class GameScene extends PixelScene {
// ------------------------------------------------------- // -------------------------------------------------------
public static void add( Plant plant ) {
if (scene != null) {
scene.addPlantSprite( plant );
}
}
public static void add( Trap trap ) {
if (scene != null) {
scene.addTrapSprite( trap );
}
}
public static void add( Blob gas ) { public static void add( Blob gas ) {
Actor.add( gas ); Actor.add( gas );
if (scene != null) { if (scene != null) {