# waitStaggeredSpawnComplete

<p class="callout info">An eventCall to wait until the preceding [`staggeredAISpawn`](https://wiki.eternalmods.com/books/entities-custom-encounters/page/staggeredaispawn "staggeredAISpawn") finishes.</p>

## Usage

```
item[0] = {
	eventCall = {
		eventDef = "waitStaggeredSpawnComplete";
		args = {
			num = 3;
			item[0] = {
				eEncounterSpawnType_t = ""; // aiType
			}
			item[1] = {
				int = 0; // remaining_spawn_count
			}
			item[2] = {
				string = ""; // group_label
			}
		}
	}
}
```

- `aiType` are the [`eEncounterSpawnType_t`](https://wiki.eternalmods.com/books/entities-custom-encounters/page/eencounterspawntype-t "eEncounterSpawnType_t") from the preceding [`staggeredAISpawn`](https://wiki.eternalmods.com/books/entities-custom-encounters/page/staggeredaispawn "staggeredAISpawn") that you want to wait on. `ENCOUNTER_SPAWN_ANY` can also be used.
- `remaining_spawn_count` is how many remaining spawns this eventCall should wait on.

## Example Usage

```
item[0] = {
	eventCall = {
		eventDef = "staggeredAISpawn";
		args = {
			num = 6;
			item[0] = {
				eEncounterSpawnType_t = "ENCOUNTER_SPAWN_IMP"; // spawnType
			}
			item[1] = {
				int = 3; // spawn_count
			}
			item[2] = {
				entity = "mod_spawngroup_encounter2"; // spawnGroup
			}
			item[3] = {
				string = "fodder"; // group_label
			}
			item[4] = {
				float = 1; // minSpawnStagger
			}
			item[5] = {
				float = 2; // maxSpawnStagger
			}
		}
	}
}
item[1] = {
	eventCall = {
		eventDef = "staggeredAISpawn";
		args = {
			num = 6;
			item[0] = {
				eEncounterSpawnType_t = "ENCOUNTER_SPAWN_HELL_SOLDIER"; // spawnType
			}
			item[1] = {
				int = 3; // spawn_count
			}
			item[2] = {
				entity = "mod_spawngroup_encounter2B"; // spawnGroup
			}
			item[3] = {
				string = "fodder"; // group_label
			}
			item[4] = {
				float = 1; // minSpawnStagger
			}
			item[5] = {
				float = 2; // maxSpawnStagger
			}
		}
	}
}
item[2] = {
	eventCall = {
		eventDef = "waitStaggeredSpawnComplete";
		args = {
			num = 3;
			item[0] = {
				eEncounterSpawnType_t = "ENCOUNTER_SPAWN_ANY"; // aiType
			}
			item[1] = {
				int = 0; // remaining_spawn_count
			}
			item[2] = {
				string = ""; // group_label
			}
		}
	}
}
item[3] = {
	eventCall = {
		eventDef = "spawnSingleAI";
		args = {
			num = 3;
			item[0] = {
				eEncounterSpawnType_t = "ENCOUNTER_SPAWN_HELL_KNIGHT";
			}
			item[1] = {
				entity = ai_target_spawn_23";
			}
			item[2] = {
				string = "priority";
			}
		}
	}
}
```

In this example, we have a [`staggeredAISpawn`](https://wiki.eternalmods.com/books/entities-custom-encounters/page/staggeredaispawn "staggeredAISpawn") for 3 Imps, with a 1-2s delay between spawns, and ditto for Soldiers. We can then follow it up with `waitStaggeredSpawnComplete`, with `ENCOUNTER_SPAWN_ANY` and `remaining_spawn_count set` to `0`, so that all [`staggeredAISpawn`](https://wiki.eternalmods.com/books/entities-custom-encounters/page/staggeredaispawn "staggeredAISpawn") eventcalls for any ai type will need to finish spawning (ie. 0 remaining spawns), before the encounter can proceed and spawn a Hell Knight.

### See Also

- [staggeredAISpawn](https://wiki.eternalmods.com/books/creating-custom-encounters/page/staggeredaispawn)