ForgePatch/install/install.py

50 lines
1.8 KiB
Python
Raw Normal View History

2012-08-01 23:35:35 +00:00
import os, os.path, sys
import urllib, zipfile
import shutil, glob, fnmatch
import subprocess, logging
from optparse import OptionParser
2012-08-01 23:35:35 +00:00
forge_dir = os.path.dirname(os.path.abspath(__file__))
fml_dir = os.path.join(forge_dir, 'fml')
2012-08-01 23:35:35 +00:00
sys.path.append(fml_dir)
from forge import apply_forge_patches
from fml import setup_fml, finish_setup_fml, apply_fml_patches, setup_mcp, reset_logger
2012-08-01 23:35:35 +00:00
def main(mcp_dir):
src_dir = os.path.join(mcp_dir, 'src')
print '================ Forge ModLoader Setup Start ==================='
setup_mcp(fml_dir, mcp_dir, True)
setup_fml(fml_dir, mcp_dir)
apply_fml_patches(fml_dir, mcp_dir, os.path.join(mcp_dir, 'src'))
finish_setup_fml(fml_dir, mcp_dir)
print '================ Forge ModLoader Setup End ==================='
sys.path.append(mcp_dir)
from runtime.updatenames import updatenames
from runtime.updatemd5 import updatemd5
print '=============================== Minecraft Forge Setup Start ====================================='
2012-08-01 23:35:35 +00:00
print 'Applying forge patches'
2012-08-10 01:48:20 +00:00
apply_forge_patches(os.path.join(forge_dir, 'fml'), mcp_dir, forge_dir, src_dir, True)
2012-08-01 23:35:35 +00:00
os.chdir(mcp_dir)
updatenames(None, True, True, False)
2012-08-01 23:35:35 +00:00
reset_logger()
updatemd5(None, True, True, False)
2012-08-01 23:35:35 +00:00
reset_logger()
os.chdir(forge_dir)
print '=============================== Minecraft Forge Setup Finished ================================='
2012-08-01 23:35:35 +00:00
if __name__ == '__main__':
parser = OptionParser()
2012-12-10 23:43:40 +00:00
parser.add_option('-m', '--mcp-dir', action='store', dest='mcp_dir', help='Path to download/extract MCP to', default=None)
options, _ = parser.parse_args()
if not options.mcp_dir is None:
main(os.path.abspath(options.mcp_dir))
elif os.path.isfile(os.path.join('..', 'runtime', 'commands.py')):
main(os.path.abspath('..'))
else:
main(os.path.abspath('mcp'))