Sha256: 88bfef96e5c4567f9a71c1418c63d65b0277cf8ae673ac93c7ed49fcfaf137c2

Contents?: true

Size: 892 Bytes

Versions: 1

Compression:

Stored size: 892 Bytes

Contents

# The class whose instances represent an individual game rom (e.g. Chrono Trigger object)
class RomLoader::GameRom
  
  attr_accessor :name, :system
  attr_reader :rom_detail_url ,:download_url, :size, :file_ext, :filename

  # Create individual game rom objects from information scraped from freeroms.com, and sets the required name and rom_detail_url instance variables
  def initialize(name:, rom_detail_url:)
    @name = name
    @rom_detail_url = rom_detail_url
  end

  # Creates an array of GameRom objects from an array
  def self.create_collection(game_array)
    game_array.collect {|game_details| self.new(game_details)}    
  end

  # Sets all additional, optional rom details
  def set_rom_details(download_url: nil, size: nil, file_ext: nil, filename: nil)
    @download_url = download_url
    @size = size
    @file_ext = file_ext
    @filename = filename
    nil
  end
  
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
romloader-1.0.0 lib/romloader/game_rom.rb