Table of Contents

Class Soundscape

Namespace
TinyLife.World
Assembly
Tiny Life.dll

A soundscape is a set of background/ambient sounds that play to enhance the atmosphere of the game. To create a new soundscape, it can be added to Soundscapes.

public class Soundscape
Inheritance
Soundscape
Inherited Members
Extension Methods

Constructors

Soundscape(IntensityDelegate, params SoundEffect[])

Creates a new soundscape with the given settings.

public Soundscape(Soundscape.IntensityDelegate intensityFunction, params SoundEffect[] sounds)

Parameters

intensityFunction Soundscape.IntensityDelegate

The intensity function that determines the intensity of this soundscape at any given position.

sounds SoundEffect[]

The set of sound effects that this soundscape should contain, which will be randomly chosen from.

Fields

Soundscapes

The set of soundscapes that are active in the game. To create a new soundscape and to have its Update(Map, Camera) method called while in-game, it can be added to this collection.

public static readonly List<Soundscape> Soundscapes

Field Value

List<Soundscape>

Methods

GetDaytimePercentage(Map)

Returns a number between 0 and 1 that determines how bright the sun currently is, based on the passed Map's Time.

public static float GetDaytimePercentage(Map map)

Parameters

map Map

The map.

Returns

float

The daytime percentage.

GetObjectDensity<T>(Map, Vector2, Func<T, bool>, int, int)

Returns a value between 0 and 1 that represents the density of objects of a certain type around a certain position.

public static float GetObjectDensity<T>(Map map, Vector2 cameraWorldPos, Func<T, bool> predicate, int maxDistance, int maxAmount) where T : MapObject

Parameters

map Map

The map.

cameraWorldPos Vector2

The position in the world that the density calculation should be centered around.

predicate Func<T, bool>

A predicate that determines whether objects should count towards the density calculation.

maxDistance int

The maximum distance around the cameraWorldPos.

maxAmount int

The maximum amount of objects that match the predicate before the returned value is capped to 1.

Returns

float

The density.

Type Parameters

T

The type of object to match.

GetTileDensity(Map, Vector2, Func<Tile, bool>, int, int)

Returns a value between 0 and 1 that represents the density of tiles of a certain type around a certain position.

public static float GetTileDensity(Map map, Vector2 cameraWorldPos, Func<Tile, bool> predicate, int maxDistance, int maxAmount)

Parameters

map Map

The map.

cameraWorldPos Vector2

The position in the world that the density calculation should be centered around.

predicate Func<Tile, bool>

A predicate that determines whether tiles should count towards the density calculation.

maxDistance int

The maximum distance around the cameraWorldPos.

maxAmount int

The maximum amount of tiles that match the predicate before the returned value is capped to 1.

Returns

float

The density.

Update(Map, Camera)

Updates this soundscape, querying its intensity function and playing its sound effects.

public virtual void Update(Map map, Camera camera)

Parameters

map Map

The map that the soundscape should play on.

camera Camera

The game's camera.