David Vierra
0984ff8efc
Create a ResourceLoader for an EditorSession using its associated installation or instance
...
EditorApp creates the ResourceLoader for an EditorSession before creating it.
EditorApp finds the install or instance and calls getResourceLoader on it
MMCInstance now has getResourceLoader
MMCInstance's getResourceLoader returns a loader with all installed mods in its search path. Not sure whether they should go before or after the MC jar(s). (todo: add installed mods for vanilla installs, for homecooked mod packs/installs?)
MultiMCInstall now has versions.
MCInstallGroup is now responsible for finding a v1.8 jar, and searches all installs and MMC installs for one.
ensureValidInstall checks for v1.8 and displays an appropriate dialog if it isn't found.
All of this will make it easier to hook in a "Minecraft Assets Pack" as a separate download, and makes it possible to load assets from any installed mods
2015-04-15 22:20:00 -10:00
David Vierra
be2db03b8c
Don't spam "Could not get blockstates resource" except for Vanilla blocks.
2015-04-15 01:45:08 -10:00
David Vierra
4c86ec59cf
Add 'unknown' flag to BlockType attributes and set it to True for FML-loaded types. Add unknownBlocks() to EditorSession
2015-04-15 00:33:04 -10:00
David Vierra
03eb0081a4
Add function to ResourceLoader for listing all block models
...
xxx only lists Vanilla models. haven't looked at mods with models yet.
2015-04-15 00:31:56 -10:00
David Vierra
c0910ddfd0
Remove missing files from the recent files list when scanning it for world info. xxxx maybe not the right place for this...
2015-04-15 00:31:19 -10:00
David Vierra
3c4336e487
Catch missing texture errors when creating pixmaps for textures (e.g. for blocktype list/picker)
2015-04-15 00:30:39 -10:00
David Vierra
9c9198507c
Catch errors while loading the texture atlas for the debug widget that shows the atlas image.
2015-04-15 00:29:56 -10:00
David Vierra
8b0d42646f
Make the editor app available as 'self' for the -eval argument
2015-04-15 00:29:24 -10:00
David Vierra
58748189f1
Cook quads after loading atlas textures, not immediately before using block models
...
xxx get the order of initialization right. TextureAtlas needs a GL context to get the maximum texture size. WorldView wants a texture atlas in its constructor for no apparent reason. We'll need to make WorldView have changeable TextureAtlases so get that out of the constructor.
2015-04-15 00:29:00 -10:00
David Vierra
a1699c53ef
Change BlockModels/ModelMesh/TextureAtlas to use full paths to texture files
2015-04-15 00:27:23 -10:00
David Vierra
d12b09a0a9
Change ResourceLoader.openStream to use a full path
...
Anticipating textures loaded from mods
2015-04-14 23:45:21 -10:00
David Vierra
ee5665a477
Begin working on Configure Blocks/Items dialog
2015-04-14 16:06:34 -10:00
David Vierra
53606be7e5
Add removeEntities to WorldEditor and use it in RemoveEntitiesOperation
...
Fixes a problem where EntityRefs were removed from a WorldEditorChunk without removing the underlying tags in the AnvilChunk[Data]
2015-04-14 16:06:10 -10:00
David Vierra
a726923196
Make raycast ignore non-air blocks found before the first air block.
...
Gives more sensible behavior when the camera is inside solid blocks.
2015-04-14 16:05:23 -10:00
David Vierra
a7d582eeda
Don't show [tile]entities behind walls, to reduce clutter.
...
xxx relative polygon offsets, how?
2015-04-14 15:16:12 -10:00
David Vierra
8d0310bf10
Open the world starting in the single-player's current dimension, like in MCEdit 1
2015-04-14 14:00:19 -10:00
David Vierra
0020362383
Fix rendering bug where chunks don't appear to fully update after undo.
...
Make a copy of chunkNode.children to iterate while removing children.
This SHOULD have raised an error related to modifying a list while iterating it.
2015-04-13 14:34:05 -10:00
David Vierra
19b0fdeb6d
Camera view distance and perspective options are saved.
2015-04-13 13:32:48 -10:00
David Vierra
4d39928a77
Add convenience function to MCESettingsOption to connect a callback and immediately call it.
2015-04-13 13:32:30 -10:00
David Vierra
a43b41aba3
Enable only the Blocks layer for MinimapWorldView
...
This was hairy. Find a better way to control visible layers.
2015-04-13 13:32:03 -10:00
David Vierra
3b71c93a3b
Add chunk coords to pos on status bar
2015-04-13 13:31:32 -10:00
David Vierra
3b430d7135
Remove ChunkNode.layers. Match layers using the ChunkNode's children's .layerName
2015-04-13 13:18:31 -10:00
David Vierra
4e6e074360
ChunkRenderInfo -> chunkupdate.py
2015-04-12 15:50:57 -10:00
David Vierra
9bf9a9c4e3
Add Options menu, implement "Enable Lighting Updates" setting, leave Preferences and Configure Blocks/Items unfinished.
2015-04-12 15:48:29 -10:00
David Vierra
510e5d731e
Remove nonstandard short array from tag types menu.
2015-04-10 11:13:19 -10:00
David Vierra
a2b1858eeb
Fix NameError in import dialog, set file type for export dialog.
...
Add more export commands for different export formats? Via plugins?
2015-04-10 11:13:05 -10:00
David Vierra
0328b807c7
WorldList is non-modal and does not block closing MCEdit.
2015-04-10 11:12:27 -10:00
David Vierra
1a6aeed110
WorldView keeps its overlayNode through dimension changes
...
Ugh, tools need to connect to dimensionChanged and reset their overlays...
2015-04-10 11:12:05 -10:00
David Vierra
0b6bf64ab9
Get version number from git or _version.py (created by build system)
...
Display version number in title bar and about box.
2015-04-10 11:11:31 -10:00
David Vierra
c487fc7bdf
Fix blockpicker selecting multiple blocks while searching in single select mode
...
Need to figure out the lag when searching by ID
2015-04-03 16:24:21 -10:00
David Vierra
1b7e709e9e
Dimension changing is barely working.
...
Still need to connect a few things to dimensionChanged, such as the inspector, and figure out what's wrong with the minimap
2015-04-03 16:23:44 -10:00
David Vierra
bb87a8740d
Catch ValueError when getting string form of LastPlayed time, to catch times before 1970
2015-04-03 07:51:37 -10:00
David Vierra
49f7ce5f6e
Restore "indiscriminate" option to flood fill
...
xxx add an API for telling flood fill that two block IDs are the same block in indiscriminate mode (e.g. grass and dirt)
2015-04-03 04:58:12 -10:00
David Vierra
554137d591
Fix copy-paste(?) bug in revisionhistory.copyToFolder
2015-04-03 04:57:25 -10:00
David Vierra
ff4424f743
Deque does not support slice assignment
...
too much numpy...
2015-04-03 04:56:52 -10:00
David Vierra
0053f7e94a
Fix KeyError in region position cache, add set() as default value
2015-04-03 04:50:50 -10:00
David Vierra
5cbdd3a735
ResourceLoader wraps BadZipfile in an IOError so the try/catch around editor creation can catch it
...
I'm so bad at error handling.
2015-04-02 11:39:32 -10:00
David Vierra
d184ff07c1
Basic MultiMC integration
...
MultiMC installs can be configured in the same window as MC installs.
Saves folders of instances from all MMC installs are added to the "Folder" popup.
Also, the StackedWidget uses a blank widget to hide error messages and/or white GL widgets during world changes
2015-04-02 11:38:44 -10:00
David Vierra
c1d5d0befa
lru_cache: Fix key being added to queue even when user_function raises an exception
...
Also change try/catch to get(key, sentinel) because exceptions are more expensive and misses are common for my use-case
2015-04-01 22:14:01 -10:00
David Vierra
694e39b0c9
lru_cache: Fix key being added to queue even when user_function raises an exception
...
Also change try/catch to get(key, sentinel) because exceptions are more expensive and misses are common for my use-case
2015-04-01 17:17:56 -10:00
David Vierra
c7a744d5ca
Some fixes to MCInstallDialog after previous work
...
MCInstallGroup gains addInstall and removeInstall
Use the new "json" option type for options
2015-04-01 01:42:09 -10:00
David Vierra
b592cc4a3f
Show progress dialog while opening a world.
2015-04-01 00:56:02 -10:00
David Vierra
2001e8e656
Fix duplicate items in version and resource pack lists after configuring installs
2015-04-01 00:28:00 -10:00
David Vierra
187949945c
Move minecraftinstall.py globals into a singleton
2015-03-31 23:24:40 -10:00
David Vierra
4ef93f0641
Dumped map colors for all block states. Shows colors of wool and stained clay in minimap correctly.
2015-03-30 17:04:55 -10:00
David Vierra
43e73ae9b8
cachefuncs now iterate their keys instead of values
2015-03-30 15:57:52 -10:00
David Vierra
11d1301f32
invalidLayers is a set. Don't replace it with something else.
2015-03-30 15:55:35 -10:00
David Vierra
3c72a69679
cachefuncs now do nothing if asked to decache a non-cached key
2015-03-30 15:55:09 -10:00
David Vierra
9a73b1395b
Chunk meshes now return SceneNodes instead of VertexArrayBuffers
...
This will allow them to return their own rendering commands instead of being limited to using VertexNodes.
2015-03-30 13:33:00 -10:00
David Vierra
ae7a9e1b84
Restore TileTicks accessor and renderer
2015-03-30 11:40:56 -10:00