Commit graph

68 commits

Author SHA1 Message Date
Norbi Peti f295f712b6 Merge branch 'master' into customblocks
# Conflicts:
#	GamecraftModdingAPI/Tests/GamecraftModdingAPIPluginTest.cs
2020-09-17 19:18:00 +02:00
NGnius (Graham) aae2057972 Convert relevant blocks to wireable blocks and fix wire connect during block init 2020-08-23 09:59:13 -04:00
Norbi Peti cfdc5e8c26 Fixes, block IDs, cluster & chunk health support 2020-08-22 09:24:18 -04:00
NGnius (Graham) fd97194903 Fix build issues for latest Gamecraft preview version 2020-08-22 09:23:59 -04:00
NGnius (Graham) 8354123169 Cache additional info to avoid entity queries 2020-08-07 12:05:49 -04:00
NGnius (Graham) e56871f5ef Fix wire entity queries when its not submitted yet 2020-08-03 13:24:35 -04:00
NGnius (Graham) 708dbdd81d Add wiring API and improve signal support 2020-08-03 12:45:38 -04:00
NGnius (Graham) b81562ea58 Fix sfx block test default value 2020-07-25 12:12:48 -04:00
Norbi Peti 057a030c20 Update music block and attempt to fix test 2020-07-24 11:11:53 -04:00
Norbi Peti 15485481a2 Add some info and prev. value for setters 2020-07-24 11:11:53 -04:00
Norbi Peti 5264d98ce7 Test fixes, block event Block property
Fixed Assert.Equal()
Changed tests to reflect changes
Added Block property to the block event args
Completely removed sync things
2020-07-24 11:11:53 -04:00
Norbi Peti 5e335e78ff Implement init for position and rotation 2020-07-24 11:11:52 -04:00
Norbi Peti 7336fe8353 Add support for initializing blocks with properties
Newly created blocks use the initializer to set properties, allowing the user to set per-block properties
2020-07-24 11:11:52 -04:00
Norbi Peti 89d32956d9 Automatically invoke the correct block constructor
And store delegates of dynamic methods invoking constructors
Tested with the automated tests
2020-07-24 11:11:52 -04:00
NGnius (Graham) 926d968eed Add sfx block support 2020-07-24 11:11:48 -04:00
Norbi Peti aa0aefd41b Find block when group is unknown 2020-07-11 02:26:36 +02:00
Norbi Peti f403feb298 Update to Gamecraft 2020.06.17.08.41 (preview)
Removed BlockIdentifiers.OWNED_BLOCKS as the original got replaced with an array
Added the correct group for each supported functional block
Removed EntityFactory property from IEntitySerializer as it is provided on deserialization
2020-07-11 00:30:58 +02:00
NGnius (Graham) 6f589f1744 Create Player tests 2020-07-01 13:43:56 -04:00
NGnius (Graham) b376133d28 Create some test cases for blocks 2020-06-30 20:43:45 -04:00
Norbi Peti 9b1e2548d1 Attempts to create custom block types
It can load certain assets (a Cube from a sample) but fails because of missing shaders
My own Cube doesn't even get that far
2020-06-14 21:40:47 +02:00
Norbi Peti ae1f53e119 Add new blocks 2020-06-13 00:48:13 +02:00
Norbi Peti 62318b0843 Update to Gamecraft 2020.06.11.18.50
Removed some inputs from FakeInput
2020-06-12 17:27:36 +02:00
Norbi Peti 448cf3af48 Expose the simulation-time object IDs
They are useful
2020-06-05 00:57:22 +02:00
Norbi Peti cae626197f Implement Equals for the OOPs & fix Player properties
Fixed setting player properties
Changed player rotation to float3
Added constructor for BlockColor with an index param
Improved Player.Exists() ~~hopefully~~
2020-06-05 00:20:35 +02:00
Norbi Peti f62211309e Added WaitForNextFrame() and fixed block scaling
A bit hacky, but it works
2020-06-04 01:42:13 +02:00
NGnius (Graham) 6a137472c1 Fix Block type exception on unsynced Specialize<T>() 2020-06-02 20:38:35 -04:00
Norbi Peti 5660bfc28d
Fix connected blocks not being detected in prefabs
Apparently they're processed, unlike in my save
2020-06-03 01:49:54 +02:00
Norbi Peti dba7c0a46f
Added 2 block events and removed BDNEException
Added an event for placing and removing blocks
Added a class to wrap event calls in a try-catch
Removed BlockDoesNotExistException
Made Block.GetSimBody() return null if block doesn't exist
2020-06-02 03:15:32 +02:00
Norbi Peti 0b8491cecf Move Sync() to properties and improve Block doc 2020-05-27 17:20:53 +02:00
Norbi Peti 269d30b0db Add support for connected bodies
Added center of mass
Removed delta velocities
2020-05-24 21:55:49 +02:00
Norbi Peti ab7c5805fe Add object ID block and label support 2020-05-24 19:29:02 +02:00
Norbi Peti dca6fe4c1b Fixes, added SimBody class 2020-05-23 00:06:49 +02:00
Norbi Peti 084cbb40c4 Added AsyncUtils and Block.PlaceNewAsync() 2020-05-22 03:00:33 +02:00
NGnius (Graham) 4e08acf44c Reduce potentially unnecessary calls to Sync() by always forcing Sync() for new blocks 2020-05-21 20:00:31 -04:00
NGnius (Graham) 8326d70cbf Integrate tweak and signal functionality into Blocks 2020-05-21 15:04:55 -04:00
NGnius (Graham) fb841b6542 Add Timer and spawn point block properties 2020-05-20 20:42:02 -04:00
Norbi Peti 3ff98f29bb Improve GetBlockInfo(), block colors
Made GetBlockInfo() always return a reference without needing it as a parameter
Fixed Color property
Added CustomColor property for temporarily setting any color
2020-05-20 00:08:02 +02:00
NGnius (Graham) 97de5e606b Add first block children ConsoleBlock and TextBlock, I hope they're not bullied at school for those names 2020-05-17 23:36:11 -04:00
Norbi Peti 6dce87fb66 Documentation, added invalid block ID, error handling 2020-05-17 23:46:55 +02:00
Norbi Peti 1c5ce37fce Add debug interface API and improve block API
Added API for adding more information on the debug display (not object-oriented yet)
Removed the setter for block type to ensure stability
Made the block API return defaults if the block no longer exists
Added property to check if the block exists
Made a struct for the block's color property
Added missing block IDs
2020-05-17 23:46:31 +02:00
Norbi Peti 6f8241554d Add block type and color properties 2020-05-15 17:42:04 -04:00
Norbi Peti ff57a16565 Create Block class with existing functionality
Placement, movement, rotation, removal
Block looked at (in Player class), connected blocks
2020-05-15 17:42:04 -04:00
NGnius (Graham) 42b21bc16d Rework engine inheritance structure 2020-05-15 17:42:04 -04:00
NGnius (Graham) 1f35b2a434 Upgrade to Harmony v2.0.0 2020-05-15 17:42:04 -04:00
NGnius (Graham) 934b542ea1 Fix build errors from GC update 2020-05-14 12:42:48 -04:00
Norbi Peti 83427b806e
Update to Gamecraft 2020.04.27.14.21 2020-04-28 15:59:22 +02:00
Norbi Peti 9609187cff
Created a BlockUtility class, changed PlaceBlock return type
Removed GameState methods from block APIs
Created a BlockUtility class to get the block the player is looking at
Changed the return type of PlaceBlock, returning the ID of the newly placed block or null
2020-04-13 02:21:36 +02:00
Norbi Peti 81f2f613f7
Add API to remove blocks 2020-04-13 01:31:06 +02:00
Norbi Peti f231ea9f6d
Fix placement engine for latest GC and add block IDs 2020-04-09 01:14:21 +02:00
NGnius d1c0556b9c Update to Gamecraft 2020.04.06.14.50 2020-04-07 13:05:00 -04:00