Class: VanillaLegacyVersionList

Inherits:
BaseVersionList show all
Defined in:
lib/wonko_the_sane/versionlists/vanilla_legacy_version_list.rb

Instance Attribute Summary

Attributes inherited from BaseVersionList

#artifact, #lastError, #processed

Instance Method Summary collapse

Methods inherited from BaseVersionList

#cache_file, #get_json, #get_json_cached, #invalidate, #last_modified, #logger, #refresh, #write_cache_file

Constructor Details

#initializeVanillaLegacyVersionList

Returns a new instance of VanillaLegacyVersionList.



4
5
6
# File 'lib/wonko_the_sane/versionlists/vanilla_legacy_version_list.rb', line 4

def initialize
  super('net.minecraft')
end

Instance Method Details

#get_version(id) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/wonko_the_sane/versionlists/vanilla_legacy_version_list.rb', line 12

def get_version(id)
  data = id[1]
  file = WonkoVersion.new
  file.uid = 'net.minecraft'
  file.version = data[:id]
  file.time = data[:releaseTime]
  file.type = data[:type]
  file.client.traits = data[:'+traits']
  file.client.extra[:processArguments] = data[:processArguments]
  file.client.mainClass = data[:mainClass] if data.has_key? :mainClass
  file.client.appletClass = data[:appletClass] if data.has_key? :appletClass
  mainLib = VersionLibrary.new
  mainLib.name = 'net.minecraft:minecraft:' + file.version
  mainLib.url = 'http://s3.amazonaws.com/Minecraft.Download/versions/' + file.version + '/' + file.version + '.jar'
  file.client.downloads = [ mainLib ]

  file.client.folders['minecraft/screenshots'] = ['general.screenshots']
  file.client.folders['minecraft/resourcepackks'] = ['mc.resourcepacks'] if file.time >= 1372430921
  file.client.folders['minecraft/texturepacks'] = ['mc.texturepacks'] if file.time < 1372430921
  file.client.folders['minecraft/saves'] = ['mc.saves.anvil'] if file.time >= 1330552800
  file.client.folders['minecraft/saves'] = ['mc.saves.region'] if file.time >= 1298325600 and file.time < 1330552800
  file.client.folders['minecraft/saves'] = ['mc.saves.infdev'] if file.time >= 1291327200 and file.time < 1298325600
  file.client.traits.delete 'texturepacks' if file.client.traits
  file.client.traits.delete 'no-resourcepacks' if file.client.traits

  BaseSanitizer.sanitize file, MojangProcessArgumentsSanitizer
end

#get_versionsObject



8
9
10
# File 'lib/wonko_the_sane/versionlists/vanilla_legacy_version_list.rb', line 8

def get_versions
  WonkoTheSane.data_json('minecraft.json')[:versions].map do |obj| [obj[:id], obj] end
end