Skip to content

Commit d595bdf

Browse files
BIG UPDATE!
1) Full code refactoring in both GUI and script managing class. 2) Normal tests in main. 3) Big optimization for mes script management. 4) Many mistakes, such as incorrect bytes or incorrect string returning, fixed. 5) Added directory management option. 6) Added some convenient functionality in GUI. For example, auto guessing name of other file after choosing one. 7) Now use threading system, so no locking GUI (well, almost... it can be for a very little time in case of directory management). 8) Completely new installation script. 9) More data in .exe. 10) Help data updated. 11) Now support more scripts and gives more correct output to some arguments due to implementing new argument parsing system (close to that in SLGScrptTool). 12) Fixed very rare case then header contain one more section. 13) Some new commands were named. 14) Now work with LIBLARY.LIB like with any mes script.
1 parent df50d74 commit d595bdf

File tree

4 files changed

+1297
-19
lines changed

4 files changed

+1297
-19
lines changed

main.py

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,36 @@
1-
from GUI import GUI
1+
from silky_mes_gui import SilkyMesGUI
2+
3+
debug = False
4+
5+
6+
def test(mode: str):
7+
# diss, ass, diss_for_hack...
8+
from silky_mes import SilkyMesScript
9+
10+
script_mes = "LIBLARY.LIB"
11+
file_txt = "LIBLARY.txt"
12+
13+
if mode == "diss":
14+
new_script = SilkyMesScript(script_mes, file_txt, verbose=True, debug=False)
15+
new_script.disassemble()
16+
del new_script
17+
elif mode == "ass":
18+
new_script = SilkyMesScript(script_mes, file_txt, verbose=True, debug=False)
19+
new_script.assemble()
20+
del new_script
21+
elif mode == "diss_for_hack":
22+
new_script = SilkyMesScript(script_mes, file_txt, verbose=True, debug=True, hackerman_mode=True)
23+
new_script.disassemble()
24+
del new_script
25+
226

327
def main():
4-
#mesFile = 'S0001.MES'
5-
#txtFile = 'S0001.txt'
6-
#ScriptMes = SilkyMes(mesFile, txtFile)
7-
##ScriptMes.dissasemble()
8-
#ScriptMes.assemble()
9-
#del ScriptMes
10-
toGui = GUI()
28+
gui = SilkyMesGUI()
1129
return True
1230

31+
1332
if __name__ == '__main__':
14-
main()
33+
if debug:
34+
test("diss")
35+
else:
36+
main()

setup.py

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,21 @@
1-
import cx_Freeze
21
import sys
3-
import os
4-
import struct
2+
import cx_Freeze
53

6-
base = None
4+
base = None
75

8-
if sys.platform=='win32':
6+
if (sys.platform == 'win32'):
97
base = "Win32GUI"
108

119

12-
executables = [cx_Freeze.Executable("main.py")]
10+
executables = [cx_Freeze.Executable("main.py",
11+
shortcut_name="mesScriptAsseAndDisassembler",
12+
shortcut_dir="mesScriptAsseAndDisassembler")]
1313

1414
cx_Freeze.setup(
15-
name = "Name",
16-
options = {"build_exe":{"packages":["os", "struct"]}},
17-
version="1",
18-
executables=executables)
15+
name="mesScriptAsseAndDisassembler",
16+
version="1.2",
17+
description="Dual languaged (rus+eng) tool for packing and unpacking mes scripts of Silky Engine.\n"
18+
"Двухязычное средство (рус+англ) для распаковки и запаковки скриптов mes Silky Engine.",
19+
options={"build_exe": {"packages": []}},
20+
executables=executables
21+
)

0 commit comments

Comments
 (0)