Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
ziqian zhang
Grasscutter
Commits
e2cfe94b
Commit
e2cfe94b
authored
Jun 21, 2022
by
KingRainbow44
Browse files
Add `loadAfter` plugin setting
parent
63b6b805
Changes
2
Hide whitespace changes
Inline
Side-by-side
plugin-schema.json
View file @
e2cfe94b
{
"$schema"
:
"http://json-schema.org/draft-07/schema#"
,
"title"
:
"JSON schema for a Grasscutter Plugin"
,
"type"
:
"object"
,
"additionalProperties"
:
true
,
"definitions"
:
{
"plugin-name"
:
{
"type"
:
"string"
,
"pattern"
:
"^[A-Za-z
\\
d_.-]+$"
}
},
"required"
:
[
"name"
,
"description"
,
"mainClass"
],
"properties"
:
{
"name"
:
{
"description"
:
"The unique name of plugin."
,
"$ref"
:
"#/definitions/plugin-name"
},
"mainClass"
:
{
"description"
:
"The plugin's initial class file."
,
"type"
:
"string"
,
"pattern"
:
"^(?!org
\\
.bukkit
\\
.)([a-zA-Z_$][a-zA-Z
\\
d_$]*
\\
.)*[a-zA-Z_$][a-zA-Z
\\
d_$]*$"
},
"version"
:
{
"description"
:
"A plugin revision identifier."
,
"type"
:
[
"string"
,
"number"
]
},
"description"
:
{
"description"
:
"Human readable plugin summary."
,
"type"
:
"string"
},
"author"
:
{
"description"
:
"The plugin author."
,
"type"
:
"string"
},
"authors"
:
{
"description"
:
"The plugin contributors."
,
"type"
:
"array"
,
"items"
:
{
"type"
:
"string"
}
"$schema"
:
"http://json-schema.org/draft-07/schema#"
,
"title"
:
"JSON schema for a Grasscutter Plugin"
,
"type"
:
"object"
,
"additionalProperties"
:
true
,
"definitions"
:
{
"plugin-name"
:
{
"type"
:
"string"
,
"pattern"
:
"^[A-Za-z
\\
d_.-]+$"
}
},
"website"
:
{
"title"
:
"Website"
,
"description"
:
"The URL to the plugin's site"
,
"type"
:
"string"
,
"format"
:
"uri"
"required"
:
[
"name"
,
"description"
,
"mainClass"
],
"properties"
:
{
"name"
:
{
"description"
:
"The unique name of plugin."
,
"$ref"
:
"#/definitions/plugin-name"
},
"mainClass"
:
{
"description"
:
"The plugin's initial class file."
,
"type"
:
"string"
,
"pattern"
:
"^(?!org
\\
.bukkit
\\
.)([a-zA-Z_$][a-zA-Z
\\
d_$]*
\\
.)*[a-zA-Z_$][a-zA-Z
\\
d_$]*$"
},
"version"
:
{
"description"
:
"A plugin revision identifier."
,
"type"
:
[
"string"
,
"number"
]
},
"description"
:
{
"description"
:
"Human readable plugin summary."
,
"type"
:
"string"
},
"author"
:
{
"description"
:
"The plugin author."
,
"type"
:
"string"
},
"authors"
:
{
"description"
:
"The plugin contributors."
,
"type"
:
"array"
,
"items"
:
{
"type"
:
"string"
}
},
"website"
:
{
"title"
:
"Website"
,
"description"
:
"The URL to the plugin's site"
,
"type"
:
"string"
,
"format"
:
"uri"
},
"loadAfter"
:
{
"description"
:
"Plugins to load before this plugin."
,
"type"
:
"array"
,
"items"
:
{
"type"
:
"string"
}
}
}
}
}
\ No newline at end of file
src/main/java/emu/grasscutter/plugin/PluginConfig.java
View file @
e2cfe94b
...
...
@@ -7,11 +7,13 @@ public final class PluginConfig {
public
String
name
,
description
,
version
;
public
String
mainClass
;
public
String
[]
authors
;
public
String
[]
loadAfter
;
/**
* Attempts to validate this config instance.
* @return True if the config is valid, false otherwise.
*/
@SuppressWarnings
(
"BooleanMethodIsAlwaysInverted"
)
public
boolean
validate
()
{
return
name
!=
null
&&
description
!=
null
&&
mainClass
!=
null
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment