1
0
mirror of https://github.com/SquidDev-CC/CC-Tweaked synced 2025-08-30 00:57:55 +00:00
Commit Graph

2365 Commits

Author SHA1 Message Date
Cloud Chagnon
967f00cd1b Merge branch 'fabric' into fabric 2021-09-30 16:26:35 -06:00
coolsa
dda5236d84 opening a terminal works, placing blocks does not. 2021-09-30 15:59:20 -06:00
Nikita Savyolov
427ca2f108 fix: turtle read write nbt 2021-10-01 00:53:32 +03:00
Nikita Savyolov
e30f2a86f0 fix: advanced turtle gui interactive and correct turtles tick calling 2021-10-01 00:02:52 +03:00
Nikita Savyolov
121ef6e976 fix: computer, monitor, disk drive and some turtle are works 2021-09-30 14:46:33 +03:00
coolsa
e4271ff6f7 IT COMPILES! but crashes when placing a block. 2021-09-30 04:06:47 -06:00
coolsa
8d3b94734d Now only need to mess with rendering... 2021-09-30 02:43:57 -06:00
Jonathan Coates
8ba20985d7 Store additional state in WiredModemPeripheral
This means wired peripherals now correctly track their current mounts
and attached state, rather than inheriting from the origin wired modem.

Closes #890
2021-09-27 22:18:32 +01:00
JackMacWindows
7bb7b5e638 Make Rednet deduplication more efficient (#925) 2021-09-26 21:15:37 +01:00
Alessandro
297426419b Fix computer IDs greater than 65535 crashing Rednet (#900) 2021-09-26 17:13:26 +01:00
Jonathan Coates
eb61c5c5d7 Add a overly-complex test harness for rednet
Allows us to run multiple "computers" in parallel and send messages
betwene them. I don't think this counts as another test framework, but
it's sure silly.
2021-09-26 16:45:23 +01:00
Jonathan Coates
cf2bc667c1 Add more tests for monitor and printout rendering 2021-09-26 11:10:41 +01:00
Jonathan Coates
c8449086ee Optimise CC:T logo 2021-09-26 10:26:42 +01:00
Jonathan Coates
662bead8be Several fixes and improvements for client tests
- Fix broken /cctest marker
 - Correctly wait for the screenshot to be taken before continuing.
 - Filter out client tests in a different place, meaning we can remove
   the /cctest runall command
 - Bump kotlin version
2021-09-26 09:48:58 +01:00
Jonathan Coates
acaa61a720 Make the monitor depth blocker slightly larger 2021-09-25 16:46:37 +01:00
coolsa
9e57150384 Merge in from upstream 2021-09-23 23:33:48 -06:00
coolsa
0dc34a7dbe Attempting to update to 1.17.
Todo: refactor rendering to avoid using direct GL calls, instead I've
read that you could use a `BufferBuilder` but need to do more looking
into that.
Also need to update some block entity things, since some calls are also
gone.
2021-09-23 23:32:06 -06:00
Jonathan Coates
5facbca2b3 Merge pull request #927 from MCJack123/patch-8
Added binary flag to websocket_message docs
2021-09-23 20:34:21 +01:00
JackMacWindows
6c6b2c2ff3 Added binary flag to websocket_message docs 2021-09-23 15:20:19 -04:00
Jonathan Coates
3eb601e554 Pass lightmap variables around various renderers
- Add lightmap parameters to the text, computer and printout renderers.

 - Printouts are always rendered using the current lightmap. When
   interacting with the GUI, we use the fullbright lightmap coordinate.

 - Pocket computers render their border using the lightmap. Terminal and
   light do not use the lightmap at all.

There's some funkiness going on here with render types - it appears the
"correct" position_color_tex_lightmap render type is actually one used
for text.

Fixes #919. This bug does occur on 1.16 too, but given how complex the
rendering changes are between 1.16 and 1.17 I do /not/ want to have to
implement this twice. Sorry.
2021-09-19 15:49:31 +01:00
Jonathan Coates
d0e79f310e Bump Forge version
Not much has changed, just some cleanup.
2021-09-19 11:57:37 +01:00
Jonathan Coates
0d6528aaf0 Merge branch 'mc-1.16.x' into mc-1.17.x 2021-09-19 11:38:25 +01:00
MAGGen-hub
647902c019 Allow using mouse in off-hand pocket computer screen (#918) 2021-09-19 11:24:55 +01:00
Jonathan Coates
2aa70b49c1 Add invisible slots to computer GUIs
This ensures inventory slots are synced while the container is open,
meaning the hotbar (which is visible underneath the GUI) correctly
updates.

Fixes #915
2021-09-19 11:18:24 +01:00
Jonathan Coates
b17ab16e05 Allow the user to opt in to client tests 2021-09-19 10:43:55 +01:00
Jonathan Coates
b447b0e308 Increase memory limit of the gradle daemon
This has been standard in the mdk for a while, but never actually had to
do this before. IntelliJ finally started hitting this limit when
decompiling.
2021-09-18 12:42:36 +01:00
Wojbie
94ad106272 Several improvements to textutils.serialise (#920)
- Handle nan and infinity, by emitting them as 0/0 and 0/1.
- Differentiate between repeated and recursive tables in the
  error message.
2021-09-17 10:30:23 +01:00
xXTurner
dc9edf26ec Fixed typo in the javadoc of CommandsAPI class (#924) 2021-09-15 19:35:32 +01:00
Jonathan Coates
048c7bda23 Allow opening pocket computers without rendering a terminal
When placed in the off hand, pocket computers now render a different
screen when opened in the off-hand, just rendering text at the top of
the screen rather than "opening" the whole computer.

This means you can view the world and computer in your hand at the
same time, effectively allowing you to emulate the
Plethora/MoarPeripherals keyboard (and much more).

This currently requires you to move the pocket computer to the other
hand to open it normally. I did look into allowing for shift+right click
to open normally, but this is awkward when you're looking at a something
like a monitor - you need to shift as otherwise you'd click the block!

Plethora hooks into onItemUseFirst instead, and this might be an option
in the future - meaning that right click would always open some computer
GUI and never the blocks. This may be something we change in the future
- let's get some feedback first!

Closes #861. Apologies for this essay, but if you got this far you were
probably interested!
2021-08-30 18:52:02 +01:00
Jonathan Coates
c9397460a4 Optimise maven repository usage
Geesh, we get a lot of 404s against this.
2021-08-29 22:23:58 +01:00
Jonathan Coates
b2273c9b29 Add back JEI integration 2021-08-29 22:20:06 +01:00
Jonathan Coates
9e82209aab Split uploaded files across multiple packets
Still not 100% sure of the correctness here, but it appears to work.
Closes #887.
2021-08-29 16:58:02 +01:00
JackMacWindows
340ade170f Add the rest of the feature introduction versions to the docs (#908) 2021-08-26 08:02:58 +01:00
ralphgod3
7cac8401e8 Uncomment remaining keys (#907) 2021-08-25 22:45:10 +01:00
Jonathan Coates
0f899357c2 Some documentation bits and bobs
More #853, closes #858
2021-08-25 22:33:55 +01:00
Jonathan Coates
3396fe2871 Make UserLevel.OWNER a little more strict
Closes #904
2021-08-25 22:09:24 +01:00
Jonathan Coates
bbf3e48763 Increase timeout of some more tests v1.17.1-1.98.2 2021-08-22 18:01:06 +01:00
Jonathan Coates
92fe1d4bc2 Merge branch 'mc-1.16.x' into mc-1.17.x 2021-08-22 17:50:33 +01:00
Jonathan Coates
9fbcbae5b3 Bump version to 1.98.2 v1.16.5-1.98.2 2021-08-22 17:39:32 +01:00
Jonathan Coates
36a779dc18 Use data generators in a few more places
As always, a massive diff which is largely just moving files between
projects. This does fix a couple of issues with advancements, but
otherwise should behave the same.

Speaking of which, should probably go and test some of these recipes...
2021-08-21 15:50:01 +01:00
Jonathan Coates
cd8b8bbc74 Bump codecov action version
This'll be deprecated next year. We've plenty of time, but worth fixing
while I'm looking at this stuff.
2021-08-20 22:33:09 +01:00
Jonathan Coates
d8319bb35c Fix coverage not being generated for in-game tests 2021-08-20 22:13:21 +01:00
Jonathan Coates
afd6adbffa npm update
The worst ecosystem
2021-08-20 21:54:44 +01:00
Jonathan Coates
4d591c600c Use clearRemoved rather than onLoad
Latter is broken on Forge right now.
2021-08-20 21:48:34 +01:00
Jonathan Coates
0a8e427c61 Merge branch 'mc-1.16.x' into mc-1.17.x 2021-08-20 21:47:55 +01:00
Jonathan Coates
d3a5d1e314 Add tests for transmitting via wired modems
It crashes on 1.17 right now, so worth checking!
2021-08-20 18:35:00 +01:00
Jonathan Coates
56010382fb Rethink how computers run tests in game
Instead of using ids for each computer each computer is spawned with id
0 but has a label which matches up to its test name. This has several
advantages:

 - No more confusing IDs: the test code now just does thenComputerOk()
   and that's it - the computer to track is inferred from the test name.
 - All files are stored on one computer, which means we can write code
   which is shared between tests.
2021-08-20 17:05:27 +01:00
Jonathan Coates
0ff6b0ca70 Client-side tests
This spins up a Minecraft instance (much like we do for the server) and
instructs the client to take screenshots at particular times. We then
compare those screenshots and assert they match (modulo some small
delta).
2021-08-20 17:05:13 +01:00
Jonathan Coates
4b33306940 Refactor the test code to be closer to 1.17
Basically mimic the actual API that Minecraft would expose if the
methods hadn't been stripped. Lots of ATs and unsafe hacks to get this
working, but thankfully the API we can expose to the user is pretty
nice. Yay for Kotlin?

Anyway, will cause some immediate pain (yay merge conflicts) but should
make keeping the two in sync much easier.
2021-08-20 17:05:13 +01:00
Jonathan Coates
4dea3dff36 Move some Forge hooks into a separate class 2021-08-20 17:05:13 +01:00