Change src to modules and remove scripts
This commit is contained in:
parent
da477c0829
commit
770cc8be0a
15 changed files with 20 additions and 2909 deletions
|
|
@ -4,10 +4,10 @@ import traceback
|
||||||
from colorama import Fore
|
from colorama import Fore
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from src.rpgmakermvmz import handleMVMZ
|
from modules.rpgmakermvmz import handleMVMZ
|
||||||
from src.rpgmakerace import handleACE
|
from modules.rpgmakerace import handleACE
|
||||||
from src.csvtl import handleCSV
|
from modules.csvtl import handleCSV
|
||||||
from src.textfile import handleTextfile
|
from modules.textfile import handleTextfile
|
||||||
|
|
||||||
THREADS = 20
|
THREADS = 20
|
||||||
|
|
||||||
|
|
@ -40,7 +40,7 @@ LEAVE=False
|
||||||
|
|
||||||
# Flags
|
# Flags
|
||||||
CODE401 = True
|
CODE401 = True
|
||||||
CODE405 = True
|
CODE405 = False
|
||||||
CODE102 = True
|
CODE102 = True
|
||||||
CODE122 = False
|
CODE122 = False
|
||||||
CODE101 = False
|
CODE101 = False
|
||||||
|
|
@ -358,8 +358,8 @@ def searchThings(name, pbar):
|
||||||
responseList.append(translateGPT(name['name'], 'Reply with only the English translation of the RPG Item name.', False))
|
responseList.append(translateGPT(name['name'], 'Reply with only the English translation of the RPG Item name.', False))
|
||||||
responseList.append(translateGPT(name['description'], 'Reply with only the English translation of the description.', False))
|
responseList.append(translateGPT(name['description'], 'Reply with only the English translation of the description.', False))
|
||||||
|
|
||||||
# if '<quest>' in name['note']:
|
if '<SG説明:' in name['note']:
|
||||||
# tokens += translateNote(name, r'<SG説明:([\s\S]*?)\\ROC>')
|
tokens += translateNote(name, r'<SG説明:([\s\S]*?)>')
|
||||||
|
|
||||||
# Extract all our translations in a list from response
|
# Extract all our translations in a list from response
|
||||||
for i in range(len(responseList)):
|
for i in range(len(responseList)):
|
||||||
|
|
@ -460,7 +460,11 @@ def searchCodes(page, pbar):
|
||||||
oldjaString = jaString
|
oldjaString = jaString
|
||||||
jaString = jaString.replace('゙', '')
|
jaString = jaString.replace('゙', '')
|
||||||
jaString = jaString.replace('。', '.')
|
jaString = jaString.replace('。', '.')
|
||||||
# jaString = re.sub(r'([\u3000-\uffef])\1{3,}', r'\1\1\1', jaString)
|
jaString = jaString.replace('・', '.')
|
||||||
|
jaString = jaString.replace('‶', '')
|
||||||
|
jaString = jaString.replace('”', '')
|
||||||
|
jaString = jaString.replace('ー', '-')
|
||||||
|
jaString = re.sub(r'([\u3000-\uffef])\1{3,}', r'\1\1\1', jaString)
|
||||||
|
|
||||||
# Using this to keep track of 401's in a row. Throws IndexError at EndOfList (Expected Behavior)
|
# Using this to keep track of 401's in a row. Throws IndexError at EndOfList (Expected Behavior)
|
||||||
currentGroup.append(jaString)
|
currentGroup.append(jaString)
|
||||||
|
|
@ -470,7 +474,11 @@ def searchCodes(page, pbar):
|
||||||
jaString = page['list'][i]['parameters'][0]
|
jaString = page['list'][i]['parameters'][0]
|
||||||
jaString = jaString.replace('゙', '')
|
jaString = jaString.replace('゙', '')
|
||||||
jaString = jaString.replace('。', '.')
|
jaString = jaString.replace('。', '.')
|
||||||
# jaString = re.sub(r'([\u3000-\uffef])\1{3,}', r'\1\1\1', jaString)
|
jaString = jaString.replace('・', '.')
|
||||||
|
jaString = jaString.replace('‶', '')
|
||||||
|
jaString = jaString.replace('”', '')
|
||||||
|
jaString = jaString.replace('ー', '-')
|
||||||
|
jaString = re.sub(r'([\u3000-\uffef])\1{3,}', r'\1\1\1', jaString)
|
||||||
currentGroup.append(jaString)
|
currentGroup.append(jaString)
|
||||||
|
|
||||||
# Join up 401 groups for better translation.
|
# Join up 401 groups for better translation.
|
||||||
|
|
@ -488,8 +496,8 @@ def searchCodes(page, pbar):
|
||||||
finalJAString = re.sub(r'([\\]+nw\[[a-zA-Z0-9一-龠ぁ-ゔァ-ヴー\s]+\])', '', finalJAString)
|
finalJAString = re.sub(r'([\\]+nw\[[a-zA-Z0-9一-龠ぁ-ゔァ-ヴー\s]+\])', '', finalJAString)
|
||||||
|
|
||||||
# Need to remove outside code and put it back later
|
# Need to remove outside code and put it back later
|
||||||
startString = re.search(r'^[^一-龠ぁ-ゔァ-ヴー【】()「」a-zA-Z0-9A-Z0-9\\]+', finalJAString)
|
startString = re.search(r'^[^一-龠ぁ-ゔァ-ヴー【】()「」『』a-zA-Z0-9A-Z0-9\\]+', finalJAString)
|
||||||
finalJAString = re.sub(r'^[^一-龠ぁ-ゔァ-ヴー【】()「」a-zA-Z0-9A-Z0-9\\]+', '', finalJAString)
|
finalJAString = re.sub(r'^[^一-龠ぁ-ゔァ-ヴー【】()「」『』a-zA-Z0-9A-Z0-9\\]+', '', finalJAString)
|
||||||
if startString is None: startString = ''
|
if startString is None: startString = ''
|
||||||
else: startString = startString.group()
|
else: startString = startString.group()
|
||||||
|
|
||||||
17
scripts/rvdata2json-fixed/.gitattributes
vendored
17
scripts/rvdata2json-fixed/.gitattributes
vendored
|
|
@ -1,17 +0,0 @@
|
||||||
# Auto detect text files and perform LF normalization
|
|
||||||
* text=auto
|
|
||||||
|
|
||||||
# Custom for Visual Studio
|
|
||||||
*.cs diff=csharp
|
|
||||||
|
|
||||||
# Standard to msysgit
|
|
||||||
*.doc diff=astextplain
|
|
||||||
*.DOC diff=astextplain
|
|
||||||
*.docx diff=astextplain
|
|
||||||
*.DOCX diff=astextplain
|
|
||||||
*.dot diff=astextplain
|
|
||||||
*.DOT diff=astextplain
|
|
||||||
*.pdf diff=astextplain
|
|
||||||
*.PDF diff=astextplain
|
|
||||||
*.rtf diff=astextplain
|
|
||||||
*.RTF diff=astextplain
|
|
||||||
43
scripts/rvdata2json-fixed/.gitignore
vendored
43
scripts/rvdata2json-fixed/.gitignore
vendored
|
|
@ -1,43 +0,0 @@
|
||||||
# Windows image file caches
|
|
||||||
Thumbs.db
|
|
||||||
ehthumbs.db
|
|
||||||
|
|
||||||
# Folder config file
|
|
||||||
Desktop.ini
|
|
||||||
|
|
||||||
# Recycle Bin used on file shares
|
|
||||||
$RECYCLE.BIN/
|
|
||||||
|
|
||||||
# Windows Installer files
|
|
||||||
*.cab
|
|
||||||
*.msi
|
|
||||||
*.msm
|
|
||||||
*.msp
|
|
||||||
|
|
||||||
# Windows shortcuts
|
|
||||||
*.lnk
|
|
||||||
|
|
||||||
# =========================
|
|
||||||
# Operating System Files
|
|
||||||
# =========================
|
|
||||||
|
|
||||||
# OSX
|
|
||||||
# =========================
|
|
||||||
|
|
||||||
.DS_Store
|
|
||||||
.AppleDouble
|
|
||||||
.LSOverride
|
|
||||||
|
|
||||||
# Thumbnails
|
|
||||||
._*
|
|
||||||
|
|
||||||
# Files that might appear on external disk
|
|
||||||
.Spotlight-V100
|
|
||||||
.Trashes
|
|
||||||
|
|
||||||
# Directories potentially created on remote AFP share
|
|
||||||
.AppleDB
|
|
||||||
.AppleDesktop
|
|
||||||
Network Trash Folder
|
|
||||||
Temporary Items
|
|
||||||
.apdisk
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
||||||
** PLEASE TRY AT YOUR OWN RISK! **
|
|
||||||
|
|
||||||
These scripts require Jsonable:https://github.com/treeder/jsonable
|
|
||||||
|
|
||||||
for RPG Maker VX
|
|
||||||
----------------
|
|
||||||
|
|
||||||
put rgss2/to_json/to_rvdata.rb into your project folder.
|
|
||||||
|
|
||||||
### convert rvdata to json ###
|
|
||||||
|
|
||||||
ruby to_json.rb
|
|
||||||
|
|
||||||
### convert json to rvdata ###
|
|
||||||
|
|
||||||
ruby to_rvdata.rb
|
|
||||||
|
|
||||||
for RPG Maker VX Ace
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
put rgss3/to_json2/to_rvdata2.rb into your project folder.
|
|
||||||
|
|
||||||
### convert rvdata2 to json ###
|
|
||||||
|
|
||||||
ruby to_json2.rb
|
|
||||||
|
|
||||||
### convert json to rvdata2 ###
|
|
||||||
|
|
||||||
ruby to_rvdata2.rb
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1,53 +0,0 @@
|
||||||
# encoding: utf-8
|
|
||||||
# to_json.rb
|
|
||||||
# author: dice2000
|
|
||||||
# original author: aoitaku
|
|
||||||
# https://gist.github.com/aoitaku/7822424
|
|
||||||
#
|
|
||||||
# to_yaml.rbをjsonに対応させたもの
|
|
||||||
# デバッグ途中
|
|
||||||
#
|
|
||||||
# Area.rvdata, Scripts.rvdata未対応
|
|
||||||
require 'jsonable'
|
|
||||||
require 'zlib'
|
|
||||||
require_relative 'rgss2'
|
|
||||||
[
|
|
||||||
'Data/Actors.rvdata',
|
|
||||||
'Data/Animations.rvdata',
|
|
||||||
# 'Data/Areas.rvdata',
|
|
||||||
'Data/Armors.rvdata',
|
|
||||||
'Data/Classes.rvdata',
|
|
||||||
'Data/CommonEvents.rvdata',
|
|
||||||
'Data/Enemies.rvdata',
|
|
||||||
'Data/Items.rvdata',
|
|
||||||
*Dir.glob('Data/Map[0-9][0-9][0-9].rvdata'),
|
|
||||||
'Data/MapInfos.rvdata',
|
|
||||||
'Data/Skills.rvdata',
|
|
||||||
'Data/States.rvdata',
|
|
||||||
'Data/System.rvdata',
|
|
||||||
'Data/Troops.rvdata',
|
|
||||||
'Data/Weapons.rvdata'
|
|
||||||
].each do |rvdata|
|
|
||||||
data = ''
|
|
||||||
p rvdata
|
|
||||||
File.open(rvdata, 'rb') do |file|
|
|
||||||
data = Marshal.load(file.read)
|
|
||||||
if data.is_a?(Array)
|
|
||||||
data.each{ |d|
|
|
||||||
d.unpack_names if d != nil
|
|
||||||
}
|
|
||||||
elsif data.is_a?(Hash)
|
|
||||||
if data.size != 0
|
|
||||||
data.each_value{|v|
|
|
||||||
v.unpack_names
|
|
||||||
}
|
|
||||||
end
|
|
||||||
else
|
|
||||||
data.unpack_names
|
|
||||||
end
|
|
||||||
end
|
|
||||||
File.open('Data/'+File.basename(rvdata,'.rvdata')+'.json', 'w') do |file|
|
|
||||||
file.write(data.to_json)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
@ -1,51 +0,0 @@
|
||||||
# encoding: utf-8
|
|
||||||
# to_json2.rb
|
|
||||||
# author: dice2000
|
|
||||||
# original author: aoitaku
|
|
||||||
# https://gist.github.com/aoitaku/7822424
|
|
||||||
#
|
|
||||||
|
|
||||||
require 'jsonable'
|
|
||||||
require 'zlib'
|
|
||||||
require_relative 'rgss3'
|
|
||||||
[
|
|
||||||
'Data/Actors.rvdata2',
|
|
||||||
'Data/Animations.rvdata2',
|
|
||||||
# 'Data/Areas.rvdata2',
|
|
||||||
'Data/Armors.rvdata2',
|
|
||||||
'Data/Classes.rvdata2',
|
|
||||||
'Data/CommonEvents.rvdata2',
|
|
||||||
'Data/Enemies.rvdata2',
|
|
||||||
'Data/Items.rvdata2',
|
|
||||||
*Dir.glob('Data/Map[0-9][0-9][0-9].rvdata2'),
|
|
||||||
'Data/MapInfos.rvdata2',
|
|
||||||
'Data/Skills.rvdata2',
|
|
||||||
'Data/States.rvdata2',
|
|
||||||
'Data/System.rvdata2',
|
|
||||||
'Data/Tilesets.rvdata2',
|
|
||||||
'Data/Troops.rvdata2',
|
|
||||||
'Data/Weapons.rvdata2'
|
|
||||||
].each do |rvdata|
|
|
||||||
data = ''
|
|
||||||
p rvdata
|
|
||||||
File.open(rvdata, 'rb') do |file|
|
|
||||||
data = Marshal.load(file.read)
|
|
||||||
if data.is_a?(Array)
|
|
||||||
data.each{ |d|
|
|
||||||
d.unpack_names if d != nil
|
|
||||||
}
|
|
||||||
elsif data.is_a?(Hash)
|
|
||||||
if data.size != 0
|
|
||||||
data.each_value{|v|
|
|
||||||
v.unpack_names
|
|
||||||
}
|
|
||||||
end
|
|
||||||
else
|
|
||||||
data.unpack_names
|
|
||||||
end
|
|
||||||
end
|
|
||||||
File.open('Data/'+File.basename(rvdata,'.rvdata2')+'.json', 'w') do |file|
|
|
||||||
file.write(data.to_json)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
@ -1,127 +0,0 @@
|
||||||
# coding: utf-8
|
|
||||||
# to_rvdata.rb
|
|
||||||
# author: dice2000
|
|
||||||
# original author: aoitaku
|
|
||||||
# https://gist.github.com/aoitaku/7822424
|
|
||||||
#
|
|
||||||
# Area.rvdata, Scripts.rvdata未対応
|
|
||||||
require 'jsonable'
|
|
||||||
require 'zlib'
|
|
||||||
require_relative 'rgss2'
|
|
||||||
|
|
||||||
def restore_rvdata(list)
|
|
||||||
return unless list.has_key?("json_class")
|
|
||||||
obj = nil
|
|
||||||
case list["json_class"]
|
|
||||||
when "Color"
|
|
||||||
obj = Color.new([0,0,0,0])
|
|
||||||
when "Table"
|
|
||||||
obj = Table.new([1,1,0,0,1,[]])
|
|
||||||
when "Tone"
|
|
||||||
obj = Tone.new([0,0,0,0])
|
|
||||||
when "RPG::Event"
|
|
||||||
obj = RPG::Event.new(list["@x"], list["@y"])
|
|
||||||
when "RPG::EventCommand"
|
|
||||||
obj = RPG::EventCommand.new(list["@code"], list["@indent"], list["@parameters"])
|
|
||||||
when "RPG::MoveCommand"
|
|
||||||
obj = RPG::MoveCommand.new(list["@code"], list["@parameters"])
|
|
||||||
# when "RPG::BaseItem::Feature"
|
|
||||||
# obj = RPG::BaseItem::Feature.new(list["@code"], list["@data_id"], list["@value"])
|
|
||||||
# when "RPG::UsableItem::Effect"
|
|
||||||
# obj = RPG::UsableItem::Effect.new(list["@code"], list["@data_id"], list["@value1"], list["@value2"])
|
|
||||||
when "RPG::Map"
|
|
||||||
obj = RPG::Map.new(list["@width"], list["@height"])
|
|
||||||
when "RPG::BGM"
|
|
||||||
obj = RPG::BGM.new(list["@name"], list["@volume"], list["@pitch"])
|
|
||||||
when "RPG::BGS"
|
|
||||||
obj = RPG::BGS.new(list["@name"], list["@volume"], list["@pitch"])
|
|
||||||
when "RPG::ME"
|
|
||||||
obj = RPG::ME.new(list["@name"], list["@volume"], list["@pitch"])
|
|
||||||
when "RPG::SE"
|
|
||||||
obj = RPG::SE.new(list["@name"], list["@volume"], list["@pitch"])
|
|
||||||
else
|
|
||||||
str = "obj=" + list["json_class"] + ".new"
|
|
||||||
eval(str)
|
|
||||||
end
|
|
||||||
iterate_setting_value(obj, list)
|
|
||||||
return obj
|
|
||||||
end
|
|
||||||
|
|
||||||
def iterate_setting_value(target, list)
|
|
||||||
val = target.instance_variables
|
|
||||||
val.each{|d|
|
|
||||||
#マップイベントデータの場合
|
|
||||||
if d == :@events
|
|
||||||
list[d.to_s].each{|k, v|
|
|
||||||
target.events[k.to_i] = restore_rvdata(v)
|
|
||||||
}
|
|
||||||
# 値がクラスオブジェクト
|
|
||||||
elsif list[d.to_s].is_a?(Hash)
|
|
||||||
target.instance_variable_set(d, restore_rvdata(list[d.to_s]))
|
|
||||||
# 値がクラスオブジェクトの配列
|
|
||||||
elsif list[d.to_s].is_a?(Array) && list[d.to_s][0].is_a?(Hash)
|
|
||||||
data_trans = []
|
|
||||||
list[d.to_s].each{|d|
|
|
||||||
data_trans << restore_rvdata(d)
|
|
||||||
}
|
|
||||||
target.instance_variable_set(d, data_trans)
|
|
||||||
else
|
|
||||||
target.instance_variable_set(d, list[d.to_s])
|
|
||||||
end
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
[
|
|
||||||
'Data/Actors.json',
|
|
||||||
'Data/Animations.json',
|
|
||||||
# 'Data/Areas.json',
|
|
||||||
'Data/Armors.json',
|
|
||||||
'Data/Classes.json',
|
|
||||||
'Data/CommonEvents.json',
|
|
||||||
'Data/Enemies.json',
|
|
||||||
'Data/Items.json',
|
|
||||||
*Dir.glob('Data/Map[0-9][0-9][0-9].json'),
|
|
||||||
'Data/MapInfos.json',
|
|
||||||
'Data/Skills.json',
|
|
||||||
'Data/States.json',
|
|
||||||
'Data/System.json',
|
|
||||||
'Data/Troops.json',
|
|
||||||
'Data/Weapons.json'
|
|
||||||
].each do |json|
|
|
||||||
text = ''
|
|
||||||
p json
|
|
||||||
f = File.open(json, 'r:utf-8')
|
|
||||||
f.each {|line|
|
|
||||||
text += line
|
|
||||||
}
|
|
||||||
data = JSON.parse(text)
|
|
||||||
data_trans = nil
|
|
||||||
if data.is_a?(Array)
|
|
||||||
data_trans = []
|
|
||||||
data.each{ |d|
|
|
||||||
if d == nil
|
|
||||||
data_trans << d
|
|
||||||
else
|
|
||||||
data_trans << restore_rvdata(d)
|
|
||||||
end
|
|
||||||
}
|
|
||||||
#あまり賢くない方法で対処(後で考える)
|
|
||||||
elsif data.is_a?(Hash)
|
|
||||||
if json == 'Data/MapInfos.json'
|
|
||||||
data_trans = {}
|
|
||||||
data.each{|k, v|
|
|
||||||
data_trans[k.to_i] = restore_rvdata(v)
|
|
||||||
}
|
|
||||||
else
|
|
||||||
data_trans = restore_rvdata(data)
|
|
||||||
end
|
|
||||||
else
|
|
||||||
data_trans = restore_rvdata(data)
|
|
||||||
end
|
|
||||||
#p data_trans
|
|
||||||
File.open('Data/'+File.basename(json,'.json')+'.rvdata', 'wb') do |file|
|
|
||||||
file.write(Marshal.dump(data_trans))
|
|
||||||
end
|
|
||||||
f.close
|
|
||||||
end
|
|
||||||
|
|
@ -1,135 +0,0 @@
|
||||||
# coding: utf-8
|
|
||||||
require 'jsonable'
|
|
||||||
require 'zlib'
|
|
||||||
require_relative 'rgss3'
|
|
||||||
|
|
||||||
#2015/6/27
|
|
||||||
#制限事項:Areas.rvdata2とScripts.rvdata2に未対応
|
|
||||||
|
|
||||||
#↓解決済(2015/6/27)
|
|
||||||
# 既存の不具合/15.6.18
|
|
||||||
# このスクリプトで復帰させると、以降エディタ上にイベントが表示されない
|
|
||||||
# (新規作成含む)
|
|
||||||
# イベント自体は動く
|
|
||||||
|
|
||||||
#追加メソッド
|
|
||||||
def restore_rvdata2(list)
|
|
||||||
return unless list.is_a?(Hash)
|
|
||||||
return unless list.has_key?("json_class")
|
|
||||||
obj = nil
|
|
||||||
case list["json_class"]
|
|
||||||
when "Color"
|
|
||||||
obj = Color.new([0,0,0,0])
|
|
||||||
when "Table"
|
|
||||||
obj = Table.new([1,1,0,0,1,[]])
|
|
||||||
when "Tone"
|
|
||||||
obj = Tone.new([0,0,0,0])
|
|
||||||
when "RPG::Event"
|
|
||||||
obj = RPG::Event.new(list["@x"], list["@y"])
|
|
||||||
when "RPG::EventCommand"
|
|
||||||
obj = RPG::EventCommand.new(list["@code"], list["@indent"], list["@parameters"])
|
|
||||||
when "RPG::MoveCommand"
|
|
||||||
obj = RPG::MoveCommand.new(list["@code"], list["@parameters"])
|
|
||||||
when "RPG::BaseItem::Feature"
|
|
||||||
obj = RPG::BaseItem::Feature.new(list["@code"], list["@data_id"], list["@value"])
|
|
||||||
when "RPG::UsableItem::Effect"
|
|
||||||
obj = RPG::UsableItem::Effect.new(list["@code"], list["@data_id"], list["@value1"], list["@value2"])
|
|
||||||
when "RPG::Map"
|
|
||||||
obj = RPG::Map.new(list["@width"], list["@height"])
|
|
||||||
when "RPG::BGM"
|
|
||||||
obj = RPG::BGM.new(list["@name"], list["@volume"], list["@pitch"])
|
|
||||||
when "RPG::BGS"
|
|
||||||
obj = RPG::BGS.new(list["@name"], list["@volume"], list["@pitch"])
|
|
||||||
when "RPG::ME"
|
|
||||||
obj = RPG::ME.new(list["@name"], list["@volume"], list["@pitch"])
|
|
||||||
when "RPG::SE"
|
|
||||||
obj = RPG::SE.new(list["@name"], list["@volume"], list["@pitch"])
|
|
||||||
else
|
|
||||||
str = "obj=" + list["json_class"] + ".new"
|
|
||||||
eval(str)
|
|
||||||
end
|
|
||||||
iterate_setting_value(obj, list)
|
|
||||||
return obj
|
|
||||||
end
|
|
||||||
|
|
||||||
def iterate_setting_value(target, list)
|
|
||||||
val = target.instance_variables
|
|
||||||
val.each{|d|
|
|
||||||
#マップイベントデータの場合
|
|
||||||
if d == :@events
|
|
||||||
list[d.to_s].each{|k, v|
|
|
||||||
target.events[k.to_i] = restore_rvdata2(v)
|
|
||||||
}
|
|
||||||
#target.events.each_key{|key|
|
|
||||||
# p key
|
|
||||||
#}
|
|
||||||
# 値がクラスオブジェクト
|
|
||||||
elsif list[d.to_s].is_a?(Hash)
|
|
||||||
target.instance_variable_set(d, restore_rvdata2(list[d.to_s]))
|
|
||||||
# 値がクラスオブジェクトの配列
|
|
||||||
elsif list[d.to_s].is_a?(Array) && list[d.to_s][0].is_a?(Hash)
|
|
||||||
data_trans = []
|
|
||||||
list[d.to_s].each{|d|
|
|
||||||
data_trans << restore_rvdata2(d)
|
|
||||||
}
|
|
||||||
target.instance_variable_set(d, data_trans)
|
|
||||||
else
|
|
||||||
target.instance_variable_set(d, list[d.to_s])
|
|
||||||
end
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
[
|
|
||||||
'Data/Actors.json',
|
|
||||||
'Data/Animations.json',
|
|
||||||
# 'Data/Areas.json',
|
|
||||||
'Data/Armors.json',
|
|
||||||
'Data/Classes.json',
|
|
||||||
'Data/CommonEvents.json',
|
|
||||||
'Data/Enemies.json',
|
|
||||||
'Data/Items.json',
|
|
||||||
*Dir.glob('Data/Map[0-9][0-9][0-9].json'),
|
|
||||||
'Data/MapInfos.json',
|
|
||||||
'Data/Skills.json',
|
|
||||||
'Data/States.json',
|
|
||||||
'Data/System.json',
|
|
||||||
'Data/Tilesets.json',
|
|
||||||
'Data/Troops.json',
|
|
||||||
'Data/Weapons.json'
|
|
||||||
].each do |json|
|
|
||||||
text = ''
|
|
||||||
p json
|
|
||||||
f = File.open(json, 'r:utf-8')
|
|
||||||
f.each {|line|
|
|
||||||
text += line
|
|
||||||
}
|
|
||||||
data = JSON.parse(text)
|
|
||||||
data_trans = nil
|
|
||||||
if data.is_a?(Array)
|
|
||||||
data_trans = []
|
|
||||||
data.each{ |d|
|
|
||||||
if d == nil
|
|
||||||
data_trans << d
|
|
||||||
else
|
|
||||||
data_trans << restore_rvdata2(d)
|
|
||||||
end
|
|
||||||
}
|
|
||||||
#あまり賢くない方法で対処(後で考える)
|
|
||||||
elsif data.is_a?(Hash)
|
|
||||||
if json == 'Data/MapInfos.json'
|
|
||||||
data_trans = {}
|
|
||||||
data.each{|k, v|
|
|
||||||
data_trans[k.to_i] = restore_rvdata2(v)
|
|
||||||
}
|
|
||||||
else
|
|
||||||
data_trans = restore_rvdata2(data)
|
|
||||||
end
|
|
||||||
else
|
|
||||||
data_trans = restore_rvdata2(data)
|
|
||||||
end
|
|
||||||
#p data_trans
|
|
||||||
File.open('Data/'+File.basename(json,'.json')+'.rvdata2', 'wb') do |file|
|
|
||||||
file.write(Marshal.dump(data_trans))
|
|
||||||
end
|
|
||||||
f.close
|
|
||||||
end
|
|
||||||
2
start.py
2
start.py
|
|
@ -1,3 +1,3 @@
|
||||||
from src.main import main
|
from modules.main import main
|
||||||
|
|
||||||
main()
|
main()
|
||||||
Loading…
Reference in a new issue