Skip to content

Commit a361b16

Browse files
authored
Merge pull request #63 from MrClock8163/dev
v2.3.5
2 parents 0d1e0aa + 2ec0fa0 commit a361b16

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+500
-230
lines changed

.gitattributes

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
* text=auto
22

3-
*.py text eol=lf
3+
* text eol=lf

.gitignore

Lines changed: 154 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,156 @@
1-
*.blend1
1+
*.blend*
22
*.bat
33
*.zip
4+
5+
# Byte-compiled / optimized / DLL files
6+
__pycache__/
7+
*.py[cod]
8+
*$py.class
9+
10+
# C extensions
11+
*.so
12+
13+
# Distribution / packaging
14+
.Python
15+
build/
16+
develop-eggs/
17+
dist/
18+
downloads/
19+
eggs/
20+
.eggs/
21+
lib/
22+
lib64/
23+
parts/
24+
sdist/
25+
var/
26+
wheels/
27+
share/python-wheels/
28+
*.egg-info/
29+
.installed.cfg
30+
*.egg
31+
MANIFEST
32+
33+
# PyInstaller
34+
# Usually these files are written by a python script from a template
35+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
36+
*.manifest
37+
*.spec
38+
39+
# Installer logs
40+
pip-log.txt
41+
pip-delete-this-directory.txt
42+
43+
# Unit test / coverage reports
44+
htmlcov/
45+
.tox/
46+
.nox/
47+
.coverage
48+
.coverage.*
49+
.cache
50+
nosetests.xml
51+
coverage.xml
52+
*.cover
53+
*.py,cover
54+
.hypothesis/
55+
.pytest_cache/
56+
cover/
57+
58+
# Translations
59+
*.mo
60+
*.pot
61+
62+
# Django stuff:
63+
*.log
64+
local_settings.py
65+
db.sqlite3
66+
db.sqlite3-journal
67+
68+
# Flask stuff:
69+
instance/
70+
.webassets-cache
71+
72+
# Scrapy stuff:
73+
.scrapy
74+
75+
# Sphinx documentation
76+
docs/_build/
77+
78+
# PyBuilder
79+
.pybuilder/
80+
target/
81+
82+
# Jupyter Notebook
83+
.ipynb_checkpoints
84+
85+
# IPython
86+
profile_default/
87+
ipython_config.py
88+
89+
# pyenv
90+
# For a library or package, you might want to ignore these files since the code is
91+
# intended to run in multiple environments; otherwise, check them in:
92+
# .python-version
93+
94+
# pipenv
95+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
96+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
97+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
98+
# install all needed dependencies.
99+
#Pipfile.lock
100+
101+
# poetry
102+
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
103+
# This is especially recommended for binary packages to ensure reproducibility, and is more
104+
# commonly ignored for libraries.
105+
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
106+
#poetry.lock
107+
108+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
109+
__pypackages__/
110+
111+
# Celery stuff
112+
celerybeat-schedule
113+
celerybeat.pid
114+
115+
# SageMath parsed files
116+
*.sage.py
117+
118+
# Environments
119+
.env
120+
.venv
121+
env/
122+
venv/
123+
ENV/
124+
env.bak/
125+
venv.bak/
126+
127+
# Spyder project settings
128+
.spyderproject
129+
.spyproject
130+
131+
# Rope project settings
132+
.ropeproject
133+
134+
# mkdocs documentation
135+
/site
136+
137+
# mypy
138+
.mypy_cache/
139+
.dmypy.json
140+
dmypy.json
141+
142+
# Pyre type checker
143+
.pyre/
144+
145+
# pytype static type analyzer
146+
.pytype/
147+
148+
# Cython debug symbols
149+
cython_debug/
150+
151+
# PyCharm
152+
# JetBrains specific template is maintainted in a separate JetBrains.gitignore that can
153+
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
154+
# and can be added to the global gitignore or merged into this file. For a more nuclear
155+
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
156+
#.idea/

Arma3ObjectBuilder/CHANGELOG.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,26 @@
11
# Changelog
22

3+
## [v2.3.5](https://github.com/MrClock8163/Arma3ObjectBuilder/releases/tag/v2.3.5) (Blender 2.90 -> 4.2)
4+
5+
### Added
6+
7+
- autocomplete suggestions for LOD named properties (Blender 3.3 and above)
8+
9+
### Fixed
10+
11+
- sharp edges data block is no longer exported if no actual sharp edges are detected
12+
- `Driver: offroad` common proxy had incorrect path
13+
14+
## v2.3.4 (Blender 2.90 -> 4.2)
15+
16+
### Added
17+
18+
- extension manifest `blender_manifest.toml`
19+
20+
### Changed
21+
22+
- updated internal references for compatibility with **Blender 4.2**+
23+
324
## [v2.3.3](https://github.com/MrClock8163/Arma3ObjectBuilder/releases/tag/v2.3.3) (Blender 2.90 -> 4.1)
425

526
### Fixed

Arma3ObjectBuilder/__init__.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
"name": "Arma 3 Object Builder",
33
"description": "Collection of tools for editing Arma 3 content",
44
"author": "MrClock (present add-on), Hans-Joerg \"Alwarren\" Frieden (original ArmaToolbox add-on)",
5-
"version": (2, 3, 3),
5+
"version": (2, 3, 5),
66
"blender": (2, 90, 0),
77
"location": "Object Builder panels",
88
"warning": "",
99
"doc_url": "https://mrcmodding.gitbook.io/arma-3-object-builder/home",
1010
"tracker_url": "https://github.com/MrClock8163/Arma3ObjectBuilder/issues",
11-
"category": "3D View"
11+
"category": "Import-Export"
1212
}
1313

1414

@@ -52,7 +52,7 @@ def execute(self, context):
5252
from winreg import OpenKey, QueryValueEx, HKEY_CURRENT_USER
5353
key = OpenKey(HKEY_CURRENT_USER, r"software\bohemia interactive\arma 3 tools")
5454
value, _type = QueryValueEx(key, "path")
55-
prefs = context.preferences.addons["Arma3ObjectBuilder"].preferences
55+
prefs = context.preferences.addons[__package__].preferences
5656
prefs.a3_tools = value
5757

5858
except Exception:
@@ -123,13 +123,13 @@ def poll(cls, context):
123123
return True
124124

125125
def invoke(self, context, event):
126-
prefs = context.preferences.addons["Arma3ObjectBuilder"].preferences
126+
prefs = context.preferences.addons[__package__].preferences
127127
flagutils.set_flag_vertex(self, prefs.flag_vertex)
128128

129129
return context.window_manager.invoke_props_dialog(self)
130130

131131
def execute(self, context):
132-
prefs = context.preferences.addons["Arma3ObjectBuilder"].preferences
132+
prefs = context.preferences.addons[__package__].preferences
133133
prefs.flag_vertex = flagutils.get_flag_vertex(self)
134134

135135
return {'FINISHED'}
@@ -175,20 +175,20 @@ def poll(cls, context):
175175
return True
176176

177177
def invoke(self, context, event):
178-
prefs = context.preferences.addons["Arma3ObjectBuilder"].preferences
178+
prefs = context.preferences.addons[__package__].preferences
179179
flagutils.set_flag_face(self, prefs.flag_face)
180180

181181
return context.window_manager.invoke_props_dialog(self)
182182

183183
def execute(self, context):
184-
prefs = context.preferences.addons["Arma3ObjectBuilder"].preferences
184+
prefs = context.preferences.addons[__package__].preferences
185185
prefs.flag_face = flagutils.get_flag_face(self)
186186

187187
return {'FINISHED'}
188188

189189

190190
class A3OB_AT_preferences(bpy.types.AddonPreferences):
191-
bl_idname = __name__
191+
bl_idname = __package__
192192

193193
tabs: bpy.props.EnumProperty(
194194
name = "Tabs",
@@ -348,7 +348,7 @@ def register():
348348
from bpy.utils import register_class
349349
from .utilities import generic
350350

351-
print("Registering Arma 3 Object Builder ( '" + __name__ + "' )")
351+
print("Registering Arma 3 Object Builder ( '" + __package__ + "' )")
352352

353353
for cls in classes:
354354
register_class(cls)
@@ -365,7 +365,7 @@ def unregister():
365365
from bpy.utils import unregister_class
366366
from .utilities import generic
367367

368-
print("Unregistering Arma 3 Object Builder ( '" + __name__ + "' )")
368+
print("Unregistering Arma 3 Object Builder ( '" + __package__ + "' )")
369369

370370
generic.unregister_icons()
371371

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
schema_version = "1.0.0"
2+
3+
maintainer = "MrClock"
4+
type = "add-on"
5+
id = "Arma3ObjectBuilder"
6+
name = "Arma 3 Object Builder"
7+
tagline = "Comprehensive add-on for modding Arma 3"
8+
version = "2.3.5"
9+
blender_version_min = "4.2.0"
10+
website = "https://mrcmodding.gitbook.io/arma-3-object-builder/home"
11+
tags = ["Import-Export", "Game Engine", "Object"]
12+
license = ["SPDX:GPL-3.0-or-later"]
13+
14+
[permissions]
15+
files = "Import/export operations on supported file formats"

Arma3ObjectBuilder/io/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,4 @@
1111
from . import import_asc
1212
from . import import_mcfg
1313
from . import import_p3d
14-
from . import import_rtm
14+
from . import import_rtm

Arma3ObjectBuilder/io/binary_handler.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,4 +166,4 @@ def write_lascii(file, value):
166166
if length > 255:
167167
raise ValueError("LASCII string cannot be longer than 255 characters")
168168

169-
file.write(struct.pack('B%ds' % length, length, value.encode('ascii')))
169+
file.write(struct.pack('B%ds' % length, length, value.encode('ascii')))

Arma3ObjectBuilder/io/data_rap.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -430,4 +430,4 @@ def read_file(cls, filepath):
430430
except:
431431
output = None
432432

433-
return output
433+
return output

Arma3ObjectBuilder/io/data_rtm.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -466,4 +466,4 @@ def read_rtm_universal(file):
466466
elif signature == b"RTM_":
467467
return RTM_File.read(file)
468468
else:
469-
raise ValueError("File is not a valid RTM file.")
469+
raise ValueError("File is not a valid RTM file.")

Arma3ObjectBuilder/io/export_asc.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,4 +113,4 @@ def write_file(operator, context, file, obj):
113113
raster.write(file)
114114

115115
logger.level_down()
116-
logger.step("ASC export finished in %f sec" % (time.time() - time_start))
116+
logger.step("ASC export finished in %f sec" % (time.time() - time_start))

0 commit comments

Comments
 (0)