Commit Graph

188 Commits (921649b17b492865568fd99eff84d3f94ba66021)

Author SHA1 Message Date
Auri 921649b17b Add some debug GUI back, fix CLion folder configuration. 2021-08-29 20:38:22 -07:00
Auri 9aec996b74 More Lua GuiElement functionality. 2021-08-24 01:48:53 -07:00
Auri 1c58797480 Connect Scene, Error Scene, stability, bugfixes 2021-08-23 23:31:29 -07:00
Auri 7285ba71f4 CallbackGroup madness 2021-08-22 11:58:52 -07:00
Auri 5bf82c4963 Lua parsing of Gui Elements!!! 2021-08-20 22:48:38 -07:00
Auri 1ec7598ac0 Expression Parsing 2021-08-20 16:19:10 -07:00
Auri d8dac4d74e BACKGROUND_HOVER style, hover events. 2021-08-19 20:45:39 -07:00
Auri e41459090f New GUI Wip with old style getters. 2021-08-19 13:33:08 -07:00
Auri f8a3889f6d Optimize the MeshVertex format. 2021-08-04 22:17:40 -07:00
Auri e9d7fd0ee9 Performance Improvements, better MeshChunk. 2021-08-03 16:02:34 -07:00
Auri 4519147c84 Fix server diffing chunks to send 2021-07-07 15:39:04 -07:00
Auri 38bec3ab25 Fixed connection & many network packets. 2021-06-22 18:13:39 -07:00
Auri 4487997b92 Supercharged Serialization, Fixed Size types
- Serialization classes can now handle **all** trivially copyable types, all vectors / arrays of trivially copyable types, strings (and vectors / arrays of strings), and enums.
- Serialization classes are way shorter and more readable.
- FIXED SIZE integrs, floating points, and vecs
- Shorthands for pointers, vectors, and arrays
- More efficient use of memory in many places
- A lot of network stuff is using fixed-size integers now.
2021-06-21 22:09:35 -07:00
Auri 4b28437b80 Chunk Refactor
- compressed and decompressed chunks
- remove Lockable from chunk, chunks should be cloned across threads
- Benchmarks in Main, not ready for build
2021-06-20 17:50:45 -07:00
Auri d4c9a431f2 Redo NetField, entity serialization & adjustments.
- NetField now has explicitly declared indexes to allow for easier debugging.
- Better serialization algorithm for ServerLuaEntity that allows for NetField::ALL
- better deserialization algorithm for LocalDimension and LocalPlayer that warns on unhandled Netfields.
- Documentation for usertype/Entity & ent/Entity & some subclasses.
- Partial setDimension implementation in LuaEntity
- Velocity in LuaEntity
- Collides and gravity properties in LuaEntity (yet unused)
- General cleanup and reorganization
2020-12-04 23:14:35 -08:00
Auri a53f627acd Server side messaging, fix right click in inventory. 2020-12-03 16:26:57 -08:00
Auri eda8fe4a37 new structure format which is kinda broke. 2020-11-28 17:40:10 -08:00
Auri e49ab18617 Apply new Code Styling to all files. 2020-11-08 22:57:34 -08:00
Auri 0879ae5493 PER DIMENSION MAPGEN!
* Per-MapGen Voronoi.
* More generalized Voronoi3D.
* Biome tags.
2020-11-08 18:49:17 -08:00
Auri fb27da49cb Remove unused CreateBlockModel class. 2020-11-08 18:14:51 -08:00
Auri 6d715546d8 Immediate mode Item registration, docs for Register(Block / Item) 2020-11-08 17:12:45 -08:00
Auri 54b3cd072f Immediate mode for block instantiation. 2020-11-08 16:43:12 -08:00
Auri 5419d0a5f6 Bounds helper class, prioritize nearby existing chunks when sending to client. 2020-11-07 16:34:47 -08:00
Auri a9a12a89d9 Removed ClientState entirely and restructured client data passing.
* Updated the fenv polyfill.
* Added a fromString helper to Address.
* Added documentation comments to some classes. More to come!
* Configured CLion code style settings.
2020-11-03 23:29:30 -08:00
Nicole Collings 31cdfbdaa8 reorganize ALL THE THINGS!! 2020-08-13 00:55:18 -07:00
Nicole Collings 71cbe034dd Added thread safety to chunks & dimensions, reimplemented animations.
* Fixed air becoming invalid when placed with lua.
* Reimplemented client-side animations.
* Update AnimationManager Usertype to new format.
* Updated AnimationState & segment to be less icky.
* Updated some entity textures, added Mouse model and textures.
2020-08-06 16:15:23 -07:00
Nicole Collings 5d46a12077 Reimplement server entities, generic LuaEntity baseclass. 2020-08-05 15:26:15 -07:00
Nicole Collings 06cdc7b2df Re-implement block breaking & interactions. Move PacketChannel & Type.
* Segfault when accessing player in release.
2020-08-03 11:34:35 -07:00
Nicole Collings b312193969 Covariant Ptr type 2020-08-02 17:16:40 -07:00
Nicole Collings 6a90bb4875 BIG BOI REFACTOR FOR MULTIDIMENSIONS - Doesn't segfault so i'm commit~ 2020-07-30 22:07:00 -07:00
Nicole Collings 38b75c212b Synchronize block interaction callbacks, wieldlists, etc. Breaking broke 2020-07-28 14:11:11 -07:00
Nicole Collings ad029752ef Reorganize filesystem. 2020-07-26 19:59:03 -07:00
Nicole Collings e45baf8901 Remove exit(1)s, fix main menu error handler. 2020-07-26 18:21:33 -07:00
Nicole Collings ca3f99fdc7 Tweak Game class, rename to Subgame class, refactor more of the lua API. 2020-07-25 20:19:18 -07:00
Nicole Collings 3de0c561e2 Generalize Game class for use with Lua Api Modules
In the future, I would like to split item and block defs in two arrays,
and put all definitions inside a `defs` class.
2020-07-25 11:55:48 -07:00
Nicole Collings d56d6f890a Update to sol3, vec3 customization, C++ 17 now required. 2020-07-23 18:54:11 -07:00
Nicole Collings a5e57716ee Rewrite inventory networking, player networking, tools.
+ Made wield and hand lists.
+ Made tool props & block defenses.
+ Crazyblocks mod to test various API features.
2020-07-21 19:33:26 -07:00
Nicole Collings b3c52031c4 Optimizations, Asynchronous MapGen packets. 2020-07-16 19:38:25 -07:00
Nicole Collings 3c560c8ca2 MapGen rewrite pt. 1 - has DensityBehavior code. 2020-07-15 23:25:39 -07:00
Nicole Collings 4b3a3b36bc Move src/util/net to src/net, src/server to src/net/server. 2020-07-06 20:00:00 -07:00
Nicole Collings 4ed852255d Optimize *all* of the imports across *every single file*.. damn. 2020-07-06 18:34:59 -07:00
Nicole Collings 2380c7ea31 Add a mutex to Chunk, safeguard all existing reads/writes.
* Clean up more imports.
* Create FileManipulator class.
2020-07-06 14:00:46 -07:00
Nicole Collings 7cdd9bc270 Clean up BlockChunk 2020-06-21 12:52:13 -07:00
Nicole Collings d38b81705f Added Vector functionality, remove venus parser, add new blocks.
- Add colored lights to default for testing
- Add vector divide function
- Remove Venus Parser
2020-06-20 23:36:13 -07:00
Nicole Collings 0bfe269308 Split lighting functionality and block functionality 2020-05-26 17:16:56 -07:00
Nicole Collings 83dc74004e Refactor LuaKeybindHandler, Error catching on keybinds and callbacks.
* Hotwheel implementation pt 1
2020-05-07 17:21:56 -07:00
Nicole Collings b9b3db77fd Fix client-side segfault with uninitialized values. 2020-04-16 22:59:30 -07:00
Nicole Collings 49d9ad73ae Remove SerialGuiElement, use LuaGuiElement in GuiBuilder 2020-04-13 18:10:39 -07:00
Nicole Collings afa1b5621d LocalGuiElement 2020-04-13 16:33:15 -07:00
Nicole Collings a59e1d2a82 Various shit. 2020-04-06 17:18:57 -07:00