David Vierra
392fa77900
Remove spacer below player Inventory box for now
2015-05-08 12:59:04 -10:00
David Vierra
91a0b9548d
Hide the raw ID fields for 1.8 inventories, since the only ID is the internalName
2015-05-08 12:58:57 -10:00
David Vierra
18e0563394
Select Block is no longer undoable
2015-05-08 12:58:56 -10:00
David Vierra
f12859e589
InventoryView slot buttons now highlight when clicked
2015-05-08 12:58:56 -10:00
David Vierra
13554eeeba
ItemStackRef now raises NoParentError when trying to set the internalName of a 1.7 stack or the numeric ID of a 1.8 stack.
...
A parent is needed to find the parent world's itemTypes in order to convert the ID.
2015-05-08 12:58:55 -10:00
David Vierra
b1cbaf368d
Do not try to auto-convert ItemStacks. This goes against the principle of preserving as much of the unknown parts of the save file as possible.
2015-05-08 12:58:54 -10:00
David Vierra
e5aa8724a7
NBTEditor now operates on NBTCompound/ListRefs, which will propagate the 'dirty' flag up to their containing chunk.
...
The silly editWasMade signal is now gone.
2015-05-08 12:58:54 -10:00
David Vierra
e0a7133947
Close all panels when closing EditorSession
2015-05-08 12:58:53 -10:00
David Vierra
59b1448e12
Don't make edits to the itemstack when a different stack is clicked
2015-05-08 12:58:48 -10:00
David Vierra
0dd435ce68
Itemtype list is now searchable
2015-05-07 20:04:11 -10:00
David Vierra
71366ffc39
ItemTypeList now has data roles for internal name and damage
2015-05-07 20:03:39 -10:00
David Vierra
3b6c8d38c8
Fix ItemStackRef.id comparing the tagID to the tag class instead of the ID constant
2015-05-07 20:03:03 -10:00
David Vierra
80dd2d29b4
Fix ItemType.repr trying to make None into digits
2015-05-07 20:02:22 -10:00
David Vierra
842bf33797
Inventory edits are now undoable
2015-05-07 14:28:28 -10:00
David Vierra
3a50f0752e
Don't check isinstance(value, refClass) because refClass may not be a class (???)
2015-05-06 21:38:57 -10:00
David Vierra
3a6e680212
Inventories are now editable
2015-05-06 21:38:30 -10:00
David Vierra
93be64f585
Set debug=True for the pyinstaller exe to get more info about launch failures
2015-05-05 05:52:25 -10:00
David Vierra
7e1c7b7a82
Add Item IDs from FML tag
2015-05-05 05:51:47 -10:00
David Vierra
722f7ad507
Make chests look like door-boxes for now. Chest graphics are kept as an entity model with the texture as a model sheet...
2015-05-05 05:51:31 -10:00
David Vierra
366aba874d
Inspector now has editor-widget classes registered for different tile entities
...
Add editors for Chest, Dispenser, Hopper
Add TileEntityRefs for above
Change InventoryEditor to accept a slotLayout
Move player slotLayout to player panel
Remove 'slotCount' from InventoryItemModel, which is no longer a ListModel because it freaks out when rowCount is 0
xxx move slotLayout to InventoryItemModel
2015-05-05 05:50:58 -10:00
David Vierra
460a6f1dde
BlockTypeButton is now able to respond to the editorSession's signal configuredBlocksChanged
...
Changed textureAtlas back to editorSession
2015-05-02 06:04:41 -10:00
David Vierra
c1b59f5365
Failure to load a item's block texture is no longer fatal
2015-05-02 05:58:21 -10:00
David Vierra
d694afbcf1
Show both single-player and multiplayer entries for a player, if present.
2015-05-02 05:55:52 -10:00
David Vierra
77f2e33e0e
Add explicit "return None" to getItemInSlot
2015-05-02 05:52:49 -10:00
David Vierra
948e1dab1b
Players panel now embeds an InventoryEditor for the player's inventory.
2015-05-02 05:52:28 -10:00
David Vierra
222b49c612
Rough draft of inventory editor
2015-05-02 05:50:25 -10:00
David Vierra
a6483440ad
BlockTypePixmap now accepts a size arg
2015-05-02 05:49:53 -10:00
David Vierra
4e06ac9f62
AnvilPlayerRef's Inventory is now a SlottedInventoryAttr
2015-05-02 05:49:31 -10:00
David Vierra
610225b423
AnvilPlayerRef's blockTypes aliases the adapter's
2015-05-02 05:49:04 -10:00
David Vierra
468b7fbaa4
ItemTypeSet: handle "texture" being a list, fix __str__ after copying it from BlockType, add __len__
2015-05-02 05:48:43 -10:00
David Vierra
65bc6ab9a0
Players panel now stays on top of main window
2015-05-02 05:47:04 -10:00
David Vierra
f62bca54b8
Corrections to item jsons
2015-05-02 05:46:37 -10:00
David Vierra
9a4aa12bf6
Display version info in world list
2015-04-29 09:09:24 -10:00
David Vierra
95d0d638b3
AnvilWorldAdapter auto-converts item stacks to the detected world format.
...
May be a bad idea, but I checked all of the item stacks in a well-played, heavily modded world and found nothing that this would wreck.
2015-04-29 09:06:44 -10:00
David Vierra
11ae0d61df
Make refClass mandatory for EntityListProxy
2015-04-29 09:05:21 -10:00
David Vierra
62f4855b10
Add ItemStackRef class and supporting elements to PC[Tile]EntityRef
...
EntityRefs now try to know their blockTypes. This mainly allows 1.7 worlds to return an item's internalName for its ID when accessed. With the caveat that an item created outside of a world and assigned a 1.7 ID will return a 1.7 ID until it is parented to a world. I can live with that.
2015-04-29 09:05:09 -10:00
David Vierra
66d68529ce
AnvilWorldAdapter now detects from the level.dat whether the world is in 1.7 format or 1.8
2015-04-29 03:52:05 -10:00
David Vierra
0ad4111c24
AnvilChunkData's Entities, TileEntities, and TileTicks now alias the corresponding tags in its rootTag
2015-04-29 03:51:30 -10:00
David Vierra
b5c8f7fd20
BlockTypeSet now remembers the item stack version for its world.
2015-04-29 03:49:19 -10:00
David Vierra
72e1f6c765
WorldEditor uses a proxy list to avoid creating Tile/EntityRefs for each entity up front.
...
The Ref existing needs to by definition keep the chunk alive, so the chunk can't reference them.
2015-04-29 03:48:45 -10:00
David Vierra
1cdc4381f5
Remove named and global blocktypes. Only create a new one with each new world adapter.
...
Caching the .json files offers most of the benefits of a global. Now you are forced to get the WorldEditor's blocktypes, as you should.
And comment out InvEditChest and ZipSchematic until they are redone...
2015-04-29 03:39:31 -10:00
David Vierra
a8a91cdbb9
lru_cache_object.should_decache now takes the cache key as input, for a very marginal speed gain
2015-04-29 03:34:27 -10:00
David Vierra
4e2ef9745e
Chunks that don't unload during a cache miss are treated as hits so they won't immediately be tried next time.
2015-04-29 03:34:22 -10:00
David Vierra
b0c26c1fde
Messed around with time_loadsave until I found out (duh) that the [Tile]EntityRefs are keeping the chunk alive indefinitely.
2015-04-29 03:31:13 -10:00
David Vierra
f0af0efb1f
NBTListProxy now wraps its elements in a proxy class that allows direct access to tag values, rather than to the tags themselves.
...
NBTCompoundListAttr also uses this proxy, wrapping the elements in a specified NBTCompoundRef subclass.
These allow NBTAttrs to be defined hierarchically.
2015-04-29 03:30:10 -10:00
David Vierra
664ea46639
Catch exception when loading missing/damaged resource pack
...
catch-all, eww
2015-04-29 03:26:42 -10:00
David Vierra
1023d56c85
Pin versions of pyside and numpy.
...
PySide 1.2 changed to new-style signal mechanics
NumPy 1.9.0 heavily optimized array indexing
2015-04-29 03:26:13 -10:00
David Vierra
b122cc93cc
lazyprop.py -> mceditlib/util
2015-04-29 03:02:04 -10:00
David Vierra
5608db1094
Ignore any exception while getting world info for the world list.
2015-04-27 09:36:49 -10:00
David Vierra
2fd2dd7e09
Go back to fixed far plane for camera perspective to show more of the loadable chunks area
2015-04-27 08:33:15 -10:00