Robisz jakąś zmienną np.
new bool:menu_aktywne[33];
W funkcji która tworzy menu dajesz:
menu_aktywne[id] = true;
i tak do każdego menu musisz dodać. Natomiast w handlerze menu zaraz po
menu_destroy(menu);
dodajesz:
menu_aktywne[id] = false;
Teraz w funkcji która wyświetla huda:
if(menu_aktywne[id])
{
//tu zapewne task który wywoła funkcje od huda jeszcze raz
return PLUGIN_CONTINUE;
}
Nie wiem czy to będzie idealne rozwiązanie. Nie wiem czy to się jakoś nie zbuguje tzn. czy po zamknięciu menu zmienna zawsze będzie ustawiana na false. Możesz jeszcze dodać:
public client_putinserver(id)
{
menu_aktywne[id] = false;
}
Na wypadek gdy gracz który ma otwarte menu wyjdzie z serwera.