+ // Modifying an active system's cursor spawns a small fadeout ghost system
+ if( clone->cur != src->cur )
+ {
+ sfx_system *ghost_system = sfx_alloc();
+
+ if( !ghost_system )
+ break;
+
+ ghost_system->source = clone->source;
+ ghost_system->ch = clone->ch;
+ ghost_system->end = clone->end;
+ ghost_system->cur = clone->cur;
+ ghost_system->flags = SFX_FLAG_GHOST;
+ ghost_system->fadeout = FADEOUT_LENGTH;
+ ghost_system->fadeout_current = FADEOUT_LENGTH;
+ ghost_system->vol_src = clone->vol_src;
+ ghost_system->name = clone->name;
+ ghost_system->thread_clone = src;
+ }
+ }