Class: AdventureRL::FileGroup

Inherits:
Object
  • Object
show all
Includes:
Helpers::Error
Defined in:
lib/AdventureRL/FileGroup.rb

Overview

This is an abstract class, which is inherited by

  • Clip

  • Audio

Direct Known Subclasses

Audio, Clip

Constant Summary

Constants included from Helpers::Error

Helpers::Error::PADDING, Helpers::Error::STACK_TRACE_PADDING, Helpers::Error::STACK_TRACE_SIZE

Instance Method Summary collapse

Methods included from Helpers::Error

directory_exists?, error, error_no_directory, error_no_file, file_exists?

Constructor Details

#initialize(settings_arg) ⇒ FileGroup

Initialize with either a path to a YAML settings file as a String, or a Hash containing your settings.



10
11
12
13
14
15
16
17
# File 'lib/AdventureRL/FileGroup.rb', line 10

def initialize settings_arg
  settings   = Settings.new settings_arg
  @settings  = get_settings_with settings
  @name      = @settings.get :name
  @directory = get_directory_from_settings @settings
  validate_directory @directory
  @files     = get_file_paths
end

Instance Method Details

#get_file(index) ⇒ Object

Returns the filepath at index index.



38
39
40
# File 'lib/AdventureRL/FileGroup.rb', line 38

def get_file index
  return @files[index]
end

#get_file_directoryObject Also known as: get_directory

Returns the set directory of files.



43
44
45
# File 'lib/AdventureRL/FileGroup.rb', line 43

def get_file_directory
  return @directory
end

#get_filesObject

Returns an Array of the filepaths.



33
34
35
# File 'lib/AdventureRL/FileGroup.rb', line 33

def get_files
  return @files
end

#get_nameObject

Returns the Clip’s name.



28
29
30
# File 'lib/AdventureRL/FileGroup.rb', line 28

def get_name
  return @name
end

#get_settings(*keys) ⇒ Object

Returns the settings as AdventureRL::Settings, unless *keys are given, then it returns the value of @settings.get(*keys).



22
23
24
25
# File 'lib/AdventureRL/FileGroup.rb', line 22

def get_settings *keys
  return @settings  if (keys.empty?)
  return @settings.get(*keys)
end

#has_file_index?(index) ⇒ Boolean Also known as: has_index?

Returns true if index file exists.

Returns:

  • (Boolean)


49
50
51
# File 'lib/AdventureRL/FileGroup.rb', line 49

def has_file_index? index
  return index < @files.size && index >= 0
end