87 lines
3.6 KiB
Diff
87 lines
3.6 KiB
Diff
--- commands.py
|
|
+++ commands.py
|
|
@@ -139,6 +139,8 @@
|
|
fieldnames = csvreader.fieldnames
|
|
return set(fieldnames)
|
|
|
|
+def commands_sanity_check():
|
|
+ print ' Commands patch applied successfully'
|
|
|
|
class Commands(object):
|
|
"""Contains the commands and initialisation for a full mcp run"""
|
|
@@ -918,6 +920,8 @@
|
|
binlk = {CLIENT: self.binclient, SERVER: self.binserver}
|
|
testlk = {CLIENT: self.testclient, SERVER: self.testserver}
|
|
|
|
+ if side == SERVER and not os.path.exists(os.path.join(binlk[side], os.path.normpath(testlk[side] + '.class'))):
|
|
+ return self.checkbins(CLIENT)
|
|
if not os.path.exists(os.path.join(binlk[side], os.path.normpath(testlk[side] + '.class'))):
|
|
return False
|
|
return True
|
|
@@ -1249,6 +1253,9 @@
|
|
pathbinlk = {CLIENT: self.binclient, SERVER: self.binserver}
|
|
pathsrclk = {CLIENT: self.srcclient, SERVER: self.srcserver}
|
|
pathlog = {CLIENT: self.clientrecomplog, SERVER: self.serverrecomplog}
|
|
+
|
|
+ if side == SERVER: #Warn about server because FML recombines it into client
|
|
+ self.logger.info('Server side recompiling might be skipped, this is normal, do not complain to FML/Forge team about server side.')
|
|
|
|
if not os.path.exists(pathbinlk[side]):
|
|
os.makedirs(pathbinlk[side])
|
|
@@ -1306,7 +1313,7 @@
|
|
raise
|
|
|
|
def startserver(self):
|
|
- classpath = [self.binserver] + self.cpathserver
|
|
+ classpath = [self.binclient, self.srcclient] + self.cpathserver
|
|
classpath = [os.path.join('..', p) for p in classpath]
|
|
classpath = os.pathsep.join(classpath)
|
|
os.chdir(self.dirjars)
|
|
@@ -1314,7 +1321,7 @@
|
|
self.runmc(forkcmd)
|
|
|
|
def startclient(self):
|
|
- classpath = [self.binclient] + self.cpathclient
|
|
+ classpath = [self.binclient, self.srcclient] + self.cpathclient
|
|
classpath = [os.path.join('..', p) for p in classpath]
|
|
classpath = os.pathsep.join(classpath)
|
|
natives = os.path.join('..', self.dirnatives)
|
|
@@ -1671,7 +1678,7 @@
|
|
self.runcmd(forkcmd)
|
|
return True
|
|
|
|
- def gathermd5s(self, side, reobf=False):
|
|
+ def gathermd5s(self, side, reobf=False, skip_fml=False):
|
|
if not reobf:
|
|
md5lk = {CLIENT: self.md5client, SERVER: self.md5server}
|
|
else:
|
|
@@ -1686,6 +1693,9 @@
|
|
class_path = ''
|
|
else:
|
|
class_path += '/'
|
|
+ if skip_fml:
|
|
+ if class_path.startswith('cpw/'):
|
|
+ continue
|
|
for class_file in fnmatch.filter(filelist, '*.class'):
|
|
class_name = class_path + os.path.splitext(class_file)[0]
|
|
bin_file = os.path.normpath(os.path.join(path, class_file))
|
|
@@ -1858,6 +1868,9 @@
|
|
sys.exit(1)
|
|
|
|
for entry in newfiles:
|
|
+ if 'commands.py' in entry[0]: #FML, Disable updating of Commands.py
|
|
+ print 'Update to runtime/commands.py found, but disbled due to using fml'
|
|
+ continue
|
|
if entry[3] == 'U':
|
|
self.logger.info('Retrieving file from server : %s', entry[0])
|
|
cur_file = os.path.normpath(entry[0])
|
|
@@ -1878,6 +1891,9 @@
|
|
md5reoblk = {CLIENT: self.md5reobfclient, SERVER: self.md5reobfserver}
|
|
outpathlk = {CLIENT: self.srcmodclient, SERVER: self.srcmodserver}
|
|
src = {CLIENT: self.srcclient, SERVER: self.srcserver}
|
|
+
|
|
+ if side == SERVER: #Noop out server side stuff
|
|
+ return
|
|
|
|
# HINT: We need a table for the old md5 and the new ones
|
|
md5table = {}
|