Jumpvalley 0.5.0
An app and library that can be used to test and run 3D platformer levels. Currently being made with Godot.
Loading...
Searching...
No Matches
Classes
Jumpvalley.Music Namespace Reference

Classes

class  MusicGroup
 Handles a Playlist that's in the form of nodes in a scene tree.
Each MusicGroup node must have a node as a direct child named "Music" that lists the directory (folder) paths of songs in its metadata.

There are two ways to specify songs that should be played:

songs array in metadata
The metadata (as mentioned above) has an array named songs that specifies the songs to play. The array's C# type should be Godot.Collections.Array.

Incremental songN metadata entries
This method is used when no songs array is present in the metadata. Multiple metadata entries should be specified in this format:
Entry name: songN where N represents the numerical index of the song package directory starting from 1. Songs are played in numerical order.
Entry value: The absolute path to the song's directory. (The value's type must be string.) More...
 
class  MusicPlayer
 Plays music that is split into playlists (see Playlist)
This class applies a fade transition when the user wants to switch between playlists.
Each instance of a MusicPlayer can only play one song at a time at most. More...
 
class  MusicZone
 Represents a single music zone.
Music zones each have their own playlist. Such playlists typically only contain one song, but it's possible for the playlists to have multiple songs.
To specify the geometry that makes up the music zone, the music zone has to have a node named "ZoneParts" as a direct child. This "ZoneParts" node should contain MeshInstance3Ds using box meshes (preferred for performance reasons) or CSGBox3Ds. These boxes make up the music zone's geometry. More...
 
class  MusicZonePlayer
 MusicPlayer that handles the playback of Playlists with music zones in mind.
Music zone logic is handled like how it is in Juke's Towers of Hell. This means that whenever a player enters a music zone, the zone's playlist gets played.
In order for music to play when the player is outside a music zone, a primary playlist must be set. This playlist will get played when outside of the music zones.

It's important to note that MusicZonePlayer will only update CurrentPlaylist once per process frame for stability reasons (as long as the calling of MusicZonePlayer's _Process() function hasn't been disabled). More...
 
class  Playlist
 Represents a musical playlist that can hold multiple Songs. More...
 
class  Song
 Represents a single song associated with a file, along with some metadata. More...
 
class  SongChangedArgs
 Event arguments for Playlist.SongChanged and MusicPlayer.SongChanged More...
 
class  SongInfo
 Class that holds some metadata about a song file. More...
 
class  SongInfoFile
 Reads the associated "info.txt" file for a song.
The contents of such types of files should be formatted like this:
property name: property value
where each property is specified on its own line.
Currently, the properties read for an song's info.txt file are:

  • name: The name of the song
  • artists: The artists that made the song
  • album: The album the song belongs to
  • audio_path: The file path to the audio file, including its file name and extension

This text formatting is inspired by the way that the content of .osu files are formatted in Osu (the rhythm game). More...

 
class  SongPackage
 Represents a folder (such as one on the filesystem) that contains a song and its info metadata. More...