1356 Commits

Author SHA1 Message Date
David Vierra
c11fa41b52 Only add actual block IDs from FML mapping (worry about items later)
For some reason this required adding two new ID->name mappings to BlockTypeSet
2015-03-17 13:01:40 -10:00
David Vierra
53099af2c6 EditorTool is now responsible for creating its toolbar action and providing a signal for EditorSession to connect.
EditorTool weakly references EditorSession.
EditorSession does not connect loader.allChunksDone to a lambda any more
2015-03-17 11:19:50 -10:00
David Vierra
27c1fadbdd ChunkLoader weakly references its clients, so as not to keep them alive and not require them to be unregistered on destruction 2015-03-17 11:17:39 -10:00
David Vierra
cd4a8aacbf Don't set mainWindow as parent of PlayerPanel
Doing so keeps the editorSession alive as a side effect.
2015-03-16 22:09:41 -10:00
David Vierra
9390d9ecfb sessionDidChange now handles switching to a None session (no sessions open, etc)
Clears panels and tools toolbars and removes session dockwidgets.
2015-03-16 22:07:35 -10:00
David Vierra
53ab8b12bf objgraphwidget: filter common primitive types out, change showBackrefs to have more useful output 2015-03-16 21:04:29 -10:00
David Vierra
dec908d20d Block button/picker no longer needs an EditorSession, just a TextureAtlas 2015-03-16 20:02:39 -10:00
David Vierra
11a5f19f1e Destroy WorldView's renderGraph to ensure GL resources are released 2015-03-16 18:18:34 -10:00
David Vierra
b8a3512768 WorldView.viewportMoved does pass the view as its only argument, so don't pretend it doesn't. 2015-03-16 18:18:04 -10:00
David Vierra
3482baeffd objgraphwidget remembers its input field
also fix double argument in showBackrefs
2015-03-16 16:34:31 -10:00
David Vierra
6dea8642a3 weakrefprop handles setting to None 2015-03-16 15:18:33 -10:00
David Vierra
50ae15ca8a weakrefprop can auto-assign its instance variable name 2015-03-16 15:16:36 -10:00
David Vierra
4fdda2b1cb Recent worlds submenu is back in action 2015-03-16 14:15:30 -10:00
David Vierra
92de1874a1 destroyLists -> destroy, explicit None checks in scene/rendergraph 2015-03-16 14:14:36 -10:00
David Vierra
422f2c2892 objgraphwidget honors the width/depth for all graphs, handles aborted/failed graphs calmly 2015-03-16 14:13:47 -10:00
David Vierra
dbe57e9b76 Add a property descriptor for weakref'd members 2015-03-16 14:13:19 -10:00
David Vierra
80fe8f5584 Paste at current mouse position 2015-03-16 10:52:57 -10:00
David Vierra
50f333fee8 Add default maxsize for lfu_cache_object 2015-03-14 17:38:45 -10:00
David Vierra
bac501d420 Increase raycast distance to 2000, remove depth buffer read, add default distance for raycasts exceeding bounds (should it be 2000?)
I need to keep reminding myself that the depth buffer read will catch the cursor preview for brushes!
2015-03-14 17:38:29 -10:00
David Vierra
01882cbae4 Fix cursor getting stuck on edge of world bounds when looking inward from outside the bounds. 2015-03-14 17:37:22 -10:00
David Vierra
9478bdaf99 Cache recently used WorldEditorChunks in a deque. Speeds up getBlock/setBlock by at least double. 2015-03-14 14:45:53 -10:00
David Vierra
2dfe908bbd Get time_getsetblocks working again.
setBlocks accepts single values for Blocks/Data
2015-03-14 14:45:04 -10:00
David Vierra
ff1a08519d WorldEditor now uses the newly modified lru_cache_object to cache the ChunkData it gets from the world adapter. 2015-03-14 14:13:08 -10:00
David Vierra
8c0739fcb4 Modify functions in cachefunc.py for use with WorldEditor. 2015-03-14 14:08:30 -10:00
David Vierra
b059d93c4d Quick cache thrashing test 2015-03-14 09:02:23 -10:00
David Vierra
945c41b4c4 Temporarily disable lighting 2015-03-14 08:04:46 -10:00
David Vierra
11285325b6 Remove special handling for odd-shaped edge sections of odd-shaped worlds
Odd-shaped worlds will not be allowed and schematics will provide full sized sections.
2015-03-14 08:04:26 -10:00
David Vierra
251d632d55 Add a dummy syncToDisk so tests on schematics can run 2015-03-14 07:58:56 -10:00
David Vierra
d92ad6ec12 Fix blocktypes in testFill() 2015-03-14 07:43:30 -10:00
David Vierra
f0b3f79a32 Add sphinx extension to use non-underscore names in built html, so GH pages doesn't exclude them. 2015-03-13 12:57:33 -10:00
David Vierra
622dd47c58 apidoc skeletons. 2015-03-13 12:07:54 -10:00
David Vierra
640eec4cc4 entitiesOnRay checks the distance from the (displayed) entity's center instead of its lower left. Increase checking distance. 2015-03-13 09:35:01 -10:00
David Vierra
7c30807da5 NBT find/replace just barely works now. Separate NBT tab out of find_replace.ui into its own ui file. 2015-03-13 09:34:26 -10:00
David Vierra
e0e83cfa91 Make selection face hover have a thick outline, and make it cut into terrain. Change selection color to be different from unknown block.
Remove dead code.
2015-03-13 09:34:17 -10:00
David Vierra
51d8cbf1b6 BlockTypeSet accepts namePrefixes other than "minecraft:" 2015-03-10 08:51:43 -10:00
David Vierra
f5348df6b1 Correctly preserve selected blocks across searches, don't remove custom blocks 2015-03-10 08:50:56 -10:00
David Vierra
64710644e1 Several fixes to (multi-)BlockPicker
ID:meta searches are possible again, and use regex for better detection
Proxy model is used for the list of selected items on the right
Selected items correctly persist when the search box is used
Selected block(s) are displayed on the bottom using a BlockTypesItemWidget
Layout tweaks
2015-03-10 05:20:09 -10:00
David Vierra
3045d940b2 Fix BlockTypePicker init arguments 2015-03-10 02:13:16 -10:00
David Vierra
0cc3bf4802 Remove now-pointless BlockTypePicker singleton 2015-03-09 04:09:31 -10:00
David Vierra
e2c4959f51 Clean up Edit menu creation 2015-03-09 03:49:40 -10:00
David Vierra
267f77c829 Model-based blocktype list is more fully functional, uses QSortFilterProxyModel for searches 2015-03-09 03:49:40 -10:00
David Vierra
99c6a183f1 Move replace command into to new find/replace dialog, begin work on NBT find/replace
xxx FindReplaceDialog
2015-03-09 03:49:37 -10:00
David Vierra
c49db92144 Begin converting BlockTypeListWidget to use a model and delegate instead of itemWidgets. 2015-03-05 05:20:07 -10:00
David Vierra
e7b30cd096 Don't use numpy at all in cookQuads - compute array elements directly 2015-03-05 03:35:44 -10:00
David Vierra
f4c997a6ee Static defs in buildBoxQuads 2015-03-05 03:21:23 -10:00
David Vierra
ecf57c0a95 Static defs and common subexprs in BlockModels.__init__ 2015-03-05 03:17:11 -10:00
David Vierra
81f35b808b Don't uselessly create FloatBoxes, add static types in buildBoxQuads 2015-03-05 02:16:32 -10:00
David Vierra
9f1163f69e Fix incorrect face used for shading in rotated variants (e.g. stairs) 2015-03-05 02:14:29 -10:00
David Vierra
ca58a60fc6 Don't create a new ndarray for each getBlockFaceVertices call 2015-03-05 01:31:33 -10:00
David Vierra
f4124610a3 Unwrap box and uv before putting them into FaceInfo, unwrap texCoords in getBlockFaceVertices 2015-03-05 01:25:16 -10:00