Open davidsonbr opened 9 years ago
Thanks for giving me weeks worth of work ^^
Be prepared for lots of restructuring now we can interject with design choices and decisions.
Any time :D
@EpicG Still on-going? Thanks to @Jazzelhawk for reminding me of this monster.
@awilliamson Partially. There were a few issues that I needed to resolve, but I have not looked at it in a while so I kinda forgot what they were...
@awilliamson Did a little bit of a refresher on my code, realized that the issues I was having was with my panel library. Looking through this appears to be fine, it will just have to be updated to work with the changes made to libraries.
No worries, we can discuss more about it now that you're reacquainted with the work. Make sure that the justification for some of those changes still holds true, or whether requirements have changed slightly. This might tie in nicely with some of the things I've been looking into for reworking the core and streamlining the model.
DO NOT ACCEPT YET
I am just putting this here for suggestions
Okay now that that is out of the way this would literally break every SF addon.
Things that were changed:
lua/starfall/libraries/$libname
where$libname
is the name of the library.library.json
This JSON file defines the library, it can have the following keys:name
This is the name of the library, defaults to the name of the directory that it was loaded fromdescription
This is the description of the library, defaults to""
dependencies
This is a table of other libraries that this library depends on.version
This will hopefully be used for documentation generation, if our version of doc differs from the server then we will be able to get the correct version. Can be any unique identifier.client.lua
server.lua
shared.lua
permissions.json
This JSON file will define all permission nodes of the library.permissions.lua
This file requires a permissions.json file to be defined.player, node, ...
player
being the player that the query is fornode
being the full name of the node i.e.entities.setColor
...
being any additional arguments that are passed to `SF.Permissions.check.permissions.json
true
,false
, or"owner"
libA/libB/shared.lua
will only be loaded if libB is also loaded.client.lua
,server.lua
, orshared.lua
files are loaded from this directoryThis is all I can think of right now, I will for sure update this if I can think of anything else