director = defense_game_master.spawning_director


director.reset()
Resets all values that the director stores.

director.get_intensity()
Returns a value between 0 and 1 which indicates in how much trouble
the player is. Takes into account change of mob count,
change of player health and current player health.

director.register_spawn_event(spawning event definition)


Spawning event definition format:
A spawning event is defined by a table, the entries of which are type
checked. This means that each field must have the same type as specified
below apart from the functions which can be nil.
Fields:
{
	description = "Paniki group",	--unique string
	name = "mob_paniki:paniki",		--entity name
	intensity_min = 0.0,			--see get_intensity
	intensity_max = 0.3,
	group_min = 1,					--minimal and maximal group size
	group_max = 6,
	probability = 0.6,				--number between 0 and 1
	day_start = 0,					--minimum day for spawning
	spawn_time = 9.0,				--cooldown for spawning
	spawn_location_type = "air",	--"air" or "ground"
	
	
	--called before spawning a mob
	--gets spawning position vector and number of spawned mobs as arguments
	--returns staticdata string that's used in mob's on_activate function
	--can be nil
	get_staticdata = function(pos, group_size)
	end,
	
	--called after spawning a mob
	--gets object that has just been spawned,
	--spawning position vector and number of spawned mobs as arguments
	--warning: object could be nil if spawning fails
	--can be nil
	postprocess_entity = function(object, pos, group_size)
		minetest.chat_send_all("postprocess_entity called")
	end,
	
	--called once per spawn event.
	--gets spawning position vector and number of spawned mobs as arguments
	--can be nil
	on_spawn_event = function()
		minetest.chat_send_all("on_spawn_event called")
	end,
}



Temporarily disabeling spawning:

director.plug_with(value)
Plugs the director. While 'value' is not false or nil, the director
will not spawn anything. The director can be plugged with multiple values
at once

director.pop_plug(value)
Removes the plug passed as argument from the director. Returns true
if removed successfully.

director.unplug()
Deletes all plugs

Plugs can be ObjectRefs which turn into nil values when they are removed
by the engine, thus also removing the plug.
Note that plugs are currently NOT STORED when the game restarts.