src/main | ||
.gitignore | ||
pom.xml | ||
README.md |
Paid signs
The paid-signs plugin is a plugin that lets you add costs for creating plugin signs. This allows restricting usage of signs such as CraftBook's gate/lift and other signs while still allowing every player to use the signs.
Limitations
As this plugin only listens to sign change events, there are some limitations:
- The plugin is not aware of whether the creation of a sign is successful
- It is assumed that any protection plugins run before this plugin, but it's not guaranteed
- Plugins changing the lines on signs when successful might create confusion and mismatches
Commands
- /addpaidsign [permission] [ignore case] [ignore color]
- /addpaidsigncondition <name (of a paid sign)> [executeRegEx] [ignoreCase]
ignoreColor]
- /listpaidsigns [name (of a paid sign)] [line number]
- /removepaidsigncondition <name (of a paid sign)>
- /removepaidsign <name (of a paid sign)>
- /reload
Command explanation
/addpaidsign
This command adds a new paid sign that does nothing until a condition is added.
- name - A recognizable name only used to differentiate between registered paid signs
- cost - The cost a player need to pay to create any sign matching the paid sign
- permission - If the paid sign is used to represent a plugin sign, the permission should be the permission necessary for creating the plugin sign. This is used to decide if the plugin sign was created, or the player was denied.
- ignore case - Whether any conditions of the paid sign should ignore case by default, when matching against text ( default uses the config file value).
- ignore color - Whether any condition of the paid sign should ignore color by default, when matching against text ( default uses the config file value).
/addpaidsigncondition
This adds a condition to a paid sign which is used to decide if a sign created by a player matches the paid sign. Adding a paid sign condition to a line that already has one will replace the previous condition.
- name - The name of the paid sign to add the condition to
- line number - The line on the sign (1-4) to search for any matches
- string to match - The string or regular expression to look for on a sign
- executeRegEx - Whether to use a regular expression match instead of looking for the exact string
- ignoreCase - Whether this condition should ignore case when trying to match the string (default uses the "parent" sign's value)
- ignoreColor - Whether this condition should ignore color when trying to match the string (default uses the "parent" sign's value)
/listpaidsigns
This lists registered paid signs and paid sign conditions. No arguments will print a list of paid signs
- name - The name of the paid sign to see information about
- line number - The line number of the condition to see information about
/removepaidsigncondition
Removes a paid sign condition from a sign
- name - The name of the paid sign to remove the condition from
- line number - The line the condition is associated with
/removepaidsign
Removes a registered paid sign
- name - The name of the paid sign to remove
Permissions
- paidsigns.* - Grants all paid signs permissions
- paidsigns.manage - Grants the permission to add/remove a paid sign
- paidsigns.reload - Grants the permissions to reload the plugin
- paidsigns.paymentexempt - Makes this player exempt from the cost of paid signs