1
0
Fork 0
Commit Graph

54 Commits

Author SHA1 Message Date
12xx12 243083e01a
Adding basic Banner functionality (#4806)
+ Added item and block for banners

Co-authored-by: 12xx12 <12xx12100@gmail.com>
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2021-03-15 02:47:55 +00:00
Tiger Wang 868cd94ee9
Prepare ChunkData for BlockState storage (#5105)
* Rename ChunkData Creatable test

* Add missing Y-check in RedstoneWireHandler

* Remove ChunkDef.h dependency in Scoreboard

* Prepare ChunkData for BlockState storage

+ Split chunk block, meta, block & sky light storage
+ Load the height map from disk
- Reduce duplicated code in ChunkData
- Remove saving MCSBiomes, there aren't any
- Remove the allocation pool, ref #4315, #3864

* fixed build

* fixed test

* fixed the debug compile

Co-authored-by: 12xx12 <44411062+12xx12@users.noreply.github.com>
2021-03-05 14:03:55 +01:00
Tiger Wang eeb63b8901
zlib -> libdeflate (#5085)
+ Use libdeflate
+ Use std::byte
* Fix passing temporary to string_view
+ Emulate make_unique_for_overwrite
2021-01-11 16:39:43 +00:00
12xx12 e35519ec8a
Adding new monster types to enum and saving/loading for easier future implementation (#4941)
* added new monster types to enum
added string <-> enum conversion in namespace serializer
added loading functions
added to saving

* renamed zombie pigman to zombified piglins in enum

Co-authored-by: 12xx12 <12xx12100@gmail.com>
Co-authored-by: Tiger Wang <ziwei.tiger@outlook.com>
2020-11-22 23:41:13 +00:00
12xx12 f8de67aace Added end portal and enchanting table block entities 2020-09-20 01:40:20 +01:00
Tiger Wang be121f9e80 Save enderchest block entities to storage
+ Add EnderChest saving, as Vanilla does
- Remove CreateBlockEntities. Storage should save & load everything so looping over chunk data is not needed
2020-08-28 21:40:40 +01:00
Mattes D 9ee47e5999 Using Super. 2020-04-16 20:07:48 +00:00
Bond-009 8438def87e
Add Zombie Villagers 2020-04-10 00:50:45 +01:00
Mat 60bcc06f43
Implement wither skeletons (#4563) 2020-04-04 13:44:17 +02:00
peterbell10 aac592f985
Manage block entity lifetime with unique_ptr (#4080) 2020-04-03 23:23:38 +02:00
Mattes D 01b8ed5295
Pulled the BlockID and BlockInfo headers from Globals.h. (#4591)
The BlockID.h file was removed from Globals.h and renamed to BlockType.h (main change)
The BlockInfo.h file was removed from Globals.h (main change)
The ENUM_BLOCK_ID and ENUM_ITEM_ID enum names were replaced with ENUM_BLOCK_TYPE and ENUM_ITEM_TYPE (cosmetics)
The various enums, such as eDimension, eDamageType and eExplosionSource were moved from BlockType.h to Defines.h, together with the helper functions for converting between them and strings (StringToDimension et al.) (minor)
Many inline functions were moved from headers to their respective cpp files, so that BlockType.h could be included only into the cpp file, rather than the header.
That broke our tests a bit, since they pick bits and pieces out of the main code and provide stubs for the rest; they had to be re-stubbed and re-verified.
eMonsterType values are no longer tied to E_ITEM_SPAWN_EGG_META_* values
2020-04-03 08:57:01 +02:00
Mattes D 365cbc6e1c
Refactored more of Entities and BlockEntities to use Vector3. (#4403) 2019-09-29 14:59:24 +02:00
peterbell10 f4f2fc7c3d Add cUUID class (#3871) 2017-08-25 13:43:18 +01:00
Pablo Beltrán b18f6637b6 Fully implemented leashes (#3798) 2017-08-21 10:46:41 +02:00
Lukas Pioch 743a50014a Replaced includes with forward declarations 2017-08-13 12:31:10 +01:00
Lukas Pioch 0397535fa7 Removed unused forward declarations (#3888) 2017-08-03 15:10:29 +02:00
Bond-009 6a19841121 Added basic ocelot behavior (#3829) 2017-07-12 12:42:02 +02:00
Lukas Pioch 885d828712 Added bed entity (#3823)
* Added bed entity

* Export cBedEntity to lua
* Set color of bed through item damage value
* Added bed entity to APIDoc
* NBT: Added loading and saving
* Crafting recipes for the colored beds
2017-07-07 09:31:45 +02:00
Lukas Pioch cc3a67b9df Load entities from old and new names 2017-06-23 18:32:51 +02:00
Mattes D 99b4c2bd09 Anvil storage: load block entities from both old and new name-styles. (#3784)
* WSSAnvil: Load the sign text from JSON, too.
2017-06-21 07:47:26 +02:00
Mattes D 0dd1cd750b BlockEntities: Support cloning self. 2017-06-16 14:11:28 +02:00
peterbell10 8a890cf945 Store cChunk::m_BlockEntities in a map (#3717)
* Store block entities in a map from block index
* Cleanup ForEachBlockEntity
* Cleanup DoWithBlockEntityAt
2017-05-22 22:27:55 +02:00
Lukas Pioch e35ac1bfb9 Clang 5.0 fixes
- Added override keyword
- Removed inherited member variables
2017-05-21 12:19:06 +02:00
LogicParrot ca6ef58b1e Bulk clearing of whitespace 2016-02-05 23:50:18 +02:00
Lukas Pioch 9749c3aac9 Implemented brewing 2015-11-03 18:00:55 +01:00
Mattes D d2a0c85764 Chunks that fail to load are offloaded to extra files.
Ref.: #1970
2015-07-31 08:49:23 +02:00
Tiger Wang 3d398baf35 cPainting saving implemented
Additionally, it now inherits from cHangingEntity.
2015-03-13 23:05:06 +00:00
Masy98 6e8e1c6d8d Added Rabbits 2014-12-20 10:31:34 +01:00
Masy98 c836b52dd1 Added Entity Guardian 2014-12-18 19:30:32 +01:00
planetx a1da0e7205 Added timestamp to new files WSSAnvil 2014-12-08 08:22:40 -08:00
planetx 8f5e861674 Added Timestamp info to chunks in WSSAnvil 2014-12-07 14:44:08 -08:00
Howaner 8b028c5c78 Finished mob spawner implementation. 2014-11-18 15:33:41 +01:00
Tiger Wang a26541a7c3 En masse NULL -> nullptr replace 2014-10-22 20:12:49 -07:00
Mattes D 22e3bbd0db Rewritten block entity loading.
Block entities are now loaded based on the blocktype at the coords they specify; before loading, their type ("id" NBT tag) is checked.
The chunk now expects that all block entities given to it via cChunk::SetAllData() have their valid blocktype; asserts if they don't.
Fixes #1354.
2014-08-29 19:19:47 +03:00
madmaxoft 3136fc6246 Wolf uses UUID for owner.
Fixes #1277.
2014-08-03 22:04:52 +02:00
Howaner dcd226d904 Added beacon load/save. 2014-07-30 22:50:34 +02:00
madmaxoft 00c524519e Fixed style: spaces after commas. 2014-07-19 14:53:41 +02:00
madmaxoft 8e946da8ac Merge branch 'master' into potions 2014-07-15 09:01:32 +02:00
archshift 8cbd43e043 Added splash potions to NBT serialization and retrieval 2014-07-11 18:58:11 -07:00
Tiger Wang 9e44b0aae1 Implemented trapped chests & others
+ Added trapped chests
* Fixed a bunch of bugs in the redstone simulator concerning wires and
repeaters
* Other potential bugfixes
2014-07-06 23:50:22 +01:00
Mattes D d67ea97a26 More size_t fixes. 2014-05-09 19:57:59 +02:00
Mattes D 5b54dc3eac Build fixes after the last size_t batch. 2014-05-09 19:33:22 +02:00
andrew 2e28c09770 Ender crystals 2014-03-25 20:59:33 +02:00
Howaner 7ac7304c91 Add item frame saving. 2014-03-15 02:45:25 +01:00
Howaner 28898f710b Add ExpOrb saving. 2014-03-15 00:32:49 +01:00
Howaner f5e374be41 Add TNT Save/Load and add Netbeans projects to .gitignore 2014-03-08 10:25:46 +01:00
Howaner 787a71929c Add Flower Pots 2014-03-07 01:30:34 +01:00
TheJumper 2cc597372a Fixed Formatting, Added DropChances and CanPickUpLoot attributes to Monsters 2014-02-23 19:50:51 +01:00
Howaner 1f726b7d9d Rename SkullEntity to MobHeadEntity 2014-02-23 19:50:50 +01:00
Howaner ab2eba17ec Add Skulls/Heads 2014-02-23 19:50:50 +01:00