rewriting awaitAvailability
This commit is contained in:
parent
4cbc2b344d
commit
e009ae3127
1 changed files with 11 additions and 8 deletions
|
@ -310,12 +310,15 @@ export class Guild extends Base {
|
||||||
* Fulfills promise when guild becomes available
|
* Fulfills promise when guild becomes available
|
||||||
* @param delay the delay between checking guild availability
|
* @param delay the delay between checking guild availability
|
||||||
*/
|
*/
|
||||||
async awaitAvailability(
|
async awaitAvailability(delay: number = 1000): Promise<void> {
|
||||||
delay: number = 1000
|
if(!this.unavailable) return;
|
||||||
): Promise<void> {
|
var loaded = false;
|
||||||
|
var listener = (guild: Guild) => loaded = loaded || guild.id == this.id;
|
||||||
|
this.client.on('guildLoaded', listener);
|
||||||
while(true) {
|
while(true) {
|
||||||
await new Promise(resolve => setTimeout(resolve, delay))
|
await new Promise(resolve => setTimeout(resolve, delay));
|
||||||
if(!this.unavailable) {
|
if(loaded) {
|
||||||
|
this.client.removeListener('guildLoaded', listener);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue