1
0
mirror of https://github.com/SquidDev-CC/CC-Tweaked synced 2024-06-25 22:53:22 +00:00
CC-Tweaked/projects/common/src/main/java/dan200/computercraft/shared
Jonathan Coates b3738a7a63
Use permission APIs for the /computercraft command
- Add a generic PermissionRegistry interface. This behaves similarly to
   our ShaderMod interface, searching all providers until it finds a
   compatible one.

   We could just make this part of the platform code instead, but this
   allows us to support multiple systems on Fabric, where things are
   less standardised.

   This interface behaves like a registry, rather than a straight
   `getPermission(node, player)` method, as Forge requires us to list
   our nodes up-front.

 - Add Forge (using the built-in system) and Fabric (using
   fabric-permissions-api) implementations of the above interface.

 - Register permission nodes for our commands, and use those
   instead. This does mean that the permissions check for the root
   /computercraft command now requires enumerating all child
   commands (and so potential does 7 permission lookups), but hopefully
   this isn't too bad in practice.

 - Remove UserLevel.OWNER - we never used this anywhere, and I can't
   imagine we'll want to in the future.
2023-08-27 12:22:40 +01:00
..
command Use permission APIs for the /computercraft command 2023-08-27 12:22:40 +01:00
common License CC:T according to the REUSE specification (#1351) 2023-03-15 21:52:13 +00:00
computer Use standard Markdown link syntax for references 2023-08-24 11:23:33 +01:00
config Fix address rules reading the wrong config key 2023-08-23 18:04:22 +01:00
container Add support for codecs to our data generator system 2023-06-17 10:37:19 +01:00
data License CC:T according to the REUSE specification (#1351) 2023-03-15 21:52:13 +00:00
details Deprecate itemGroups field 2023-06-08 20:33:31 +01:00
integration Use permission APIs for the /computercraft command 2023-08-27 12:22:40 +01:00
media License CC:T according to the REUSE specification (#1351) 2023-03-15 21:52:13 +00:00
network Small improvements to packet reading/writing improvements 2023-08-23 10:05:56 +01:00
peripheral Use standard Markdown link syntax for references 2023-08-24 11:23:33 +01:00
platform Small improvements to packet reading/writing improvements 2023-08-23 10:05:56 +01:00
pocket Allow upgrades to read/write upgrade data from ItemStacks (#1465) 2023-07-02 10:55:55 +01:00
turtle Use standard Markdown link syntax for references 2023-08-24 11:23:33 +01:00
util Render enchanted upgrades with a glint (#1532) 2023-07-23 10:18:22 +00:00
CommonHooks.java License CC:T according to the REUSE specification (#1351) 2023-03-15 21:52:13 +00:00
ModRegistry.java Use permission APIs for the /computercraft command 2023-08-27 12:22:40 +01:00