WebGL Bank Loading Issues

# WebGL: Race Condition in Bank Loading Causes EventNotFoundException

**Platform:** WebGL  
**Issue:** Streaming music/sounds fail to load with `EventNotFoundException` errors

## Problem

In WebGL, `RuntimeManager.LoadBank()` uses `StartCoroutine(loadFromWeb())` to download banks via HTTP. However, `AnyBankLoading()` returns false immediately because:

1. `StartCoroutine()` doesn't execute until the next frame
2. `AnyBankLoading()` checks `loadedBanks` dictionary which is still empty
3. Scene initialization completes before banks finish downloading

## Fix

Check `loadingBanksRef` counter before checking registered banks:

```csharp
public static bool AnyBankLoading()
{
    if (Instance.loadingBanksRef > 0)
        return true;
    
    // ... existing checks for loadedBanks states
}

This catches banks that are downloading but haven’t been registered yet.

Hello thanks for that information. Are you on an older version? The variable you are talking about is not used in current releases.

We’re on 2.02.28. So we might be a little out of date. If it’s been fixed, we may just upgrade. Thanks!

I can see what you’re saying, the Coroutine will execute immediately but then return at the first yield, which is when we request the data from Unity and then after it comes back in we attempt the load.

We can check Instance.HaveAllBanksLoaded()(which checks the loadingBanksRef list) at that point to see if any banks have been added to the queue.

I have added a task to implement this in an upcoming release.

Thanks very much!