fusionpacker 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/RPG.rb ADDED
@@ -0,0 +1,57 @@
1
+ require 'RGSS'
2
+ module RPG
3
+ class System
4
+ include RGSS::BasicCoder
5
+ HASHED_VARS = ['variables', 'switches']
6
+ end
7
+
8
+ def self.array_to_hash(arr, &block)
9
+ h = {}
10
+ arr.each_with_index do |val, index|
11
+ r = block_given? ? block.call(val) : val
12
+ h[index] = r unless r.nil?
13
+ end
14
+ if arr.length > 0
15
+ last = arr.length - 1
16
+ h[last] = nil unless h.has_key?(last)
17
+ end
18
+ return h
19
+ end
20
+
21
+ def encode(name, value)
22
+ if HASHED_VARS.include?(name)
23
+ return array_to_hash(value) {|val| reduce_string(val)}
24
+ elsif name == 'version_id'
25
+ return map_version(value)
26
+ else
27
+ return value
28
+ end
29
+ end
30
+
31
+ def decode(name, value)
32
+ if HASHED_VARS.include?(name)
33
+ return hash_to_array(value)
34
+ else
35
+ return value
36
+ end
37
+ end
38
+
39
+ class EventCommand
40
+ def encode_with(coder)
41
+ raise 'Unexpected number of instance variables' if instance_variables.length != 3
42
+ clean
43
+
44
+ case @code
45
+ when MOVE_LIST_CODE # move list
46
+ coder.style = Psych::Nodes::Mapping::BLOCK
47
+ else
48
+ coder.style = Psych::Nodes::Mapping::FLOW
49
+ end
50
+ coder['i'], coder['c'], coder['p'] = @indent, @code, @parameters
51
+ end
52
+
53
+ def init_with(coder)
54
+ @indent, @code, @parameters = coder['i'], coder['c'], coder['p']
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,3 @@
1
+ module Fusionpacker
2
+ VERSION = "0.1.1"
3
+ end
metadata ADDED
@@ -0,0 +1,145 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: fusionpacker
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.1
5
+ platform: ruby
6
+ authors:
7
+ - Howard Jeng
8
+ - Andrew Kesterson
9
+ - Solistra
10
+ - eddperpich
11
+ autorequire:
12
+ bindir: bin
13
+ cert_chain: []
14
+ date: 2023-10-03 00:00:00.000000000 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: bundler
18
+ requirement: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - "~>"
21
+ - !ruby/object:Gem::Version
22
+ version: '2.4'
23
+ type: :development
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '2.4'
30
+ - !ruby/object:Gem::Dependency
31
+ name: rake
32
+ requirement: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: '0'
37
+ type: :development
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ - !ruby/object:Gem::Dependency
45
+ name: optimist
46
+ requirement: !ruby/object:Gem::Requirement
47
+ requirements:
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: '0'
51
+ type: :runtime
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: '0'
58
+ - !ruby/object:Gem::Dependency
59
+ name: scanf
60
+ requirement: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - ">="
63
+ - !ruby/object:Gem::Version
64
+ version: '0'
65
+ type: :runtime
66
+ prerelease: false
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ version: '0'
72
+ - !ruby/object:Gem::Dependency
73
+ name: psych
74
+ requirement: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - '='
77
+ - !ruby/object:Gem::Version
78
+ version: 2.0.0
79
+ type: :runtime
80
+ prerelease: false
81
+ version_requirements: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - '='
84
+ - !ruby/object:Gem::Version
85
+ version: 2.0.0
86
+ - !ruby/object:Gem::Dependency
87
+ name: formatador
88
+ requirement: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: '0'
93
+ type: :runtime
94
+ prerelease: false
95
+ version_requirements: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ version: '0'
100
+ description:
101
+ email:
102
+ - eddperpich@gmail.com
103
+ executables:
104
+ - fusionpacker
105
+ extensions: []
106
+ extra_rdoc_files: []
107
+ files:
108
+ - ".github/workflows/gem-push.yml"
109
+ - ".gitignore"
110
+ - Gemfile
111
+ - LICENSE
112
+ - README.md
113
+ - Rakefile
114
+ - bin/fusionpacker
115
+ - fusionpacker.gemspec
116
+ - lib/RGSS.rb
117
+ - lib/RGSS/BasicCoder.rb
118
+ - lib/RGSS/psych_mods.rb
119
+ - lib/RGSS/serialize.rb
120
+ - lib/RPG.rb
121
+ - lib/fusionpacker/version.rb
122
+ homepage: https://github.com/homie-estate/fusionpacker
123
+ licenses:
124
+ - MIT
125
+ metadata: {}
126
+ post_install_message:
127
+ rdoc_options: []
128
+ require_paths:
129
+ - lib
130
+ required_ruby_version: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
135
+ required_rubygems_version: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
140
+ requirements: []
141
+ rubygems_version: 3.2.5
142
+ signing_key:
143
+ specification_version: 4
144
+ summary: Pack and unpack RPG Maker data files, for use on pokemon infinite fusion
145
+ test_files: []