Random tweaks for permissions

This commit is contained in:
Steven Scott 2012-05-11 16:24:29 -07:00
parent b3e84ae958
commit b9ba01031e
3 changed files with 16 additions and 4 deletions

5
README
View File

@ -28,6 +28,7 @@ stargate.option -- Allow use of all options
stargate.option.backwards -- Allow use of 'B'ackwards
stargate.option.show -- Allow use of 'S'how
stargate.option.nonetwork -- Allow use of 'N'oNetwork
stargate.option.random -- Allow use of 'Random' gates
stargate.create -- Allow creating gates on any network (Override all create permissions)
stargate.create.personal -- Allow creating gates on network {playername}
@ -83,6 +84,7 @@ Sign Layout:
'B' is for a backwards facing gate (You will exit the back)
'S' is for showing an always-on gate in the network list
'N' is for hiding the network name
'R' is for random gates. These follow standard permissions of gates, but have a random exit location every time a player enters.
Options:
The options are the single letter, not the word. So to make a private hidden gate, your 4th line would be 'PH'.
@ -205,6 +207,9 @@ createConflict=Gate conflicts with existing gate
=============
Changes
=============
[Version 0.7.7.1]
- Permission checking for 'R'andom gates.
- Random now implies AlwaysOn
[Version 0.7.7.0]
- Added 'R'andom option - This still follows the permission rules defined for normal gate usage
- Added a bit more debug output

View File

@ -137,8 +137,8 @@ public class Portal {
}
if (this.random && !this.isAlwaysOn()) {
this.random = false;
Stargate.debug("Portal", "Can not create a random gate that is not always on");
this.alwaysOn = true;
Stargate.debug("Portal", "Gate marked as random, set to always-on");
}
if (verified) {
@ -883,9 +883,10 @@ public class Portal {
if (backwards && !Stargate.canOption(player, "backwards")) backwards = false;
if (show && !Stargate.canOption(player, "show")) show = false;
if (noNetwork && !Stargate.canOption(player, "nonetwork")) noNetwork = false;
if (random && !Stargate.canOption(player, "random")) random = false;
// Can not create a non-fixed always-on gate.
if (alwaysOn && destName.length() == 0 && !random) {
if (alwaysOn && destName.length() == 0) {
alwaysOn = false;
}
@ -894,6 +895,12 @@ public class Portal {
show = false;
}
// Random gates are always on and can't be shown
if (random) {
alwaysOn = true;
show = false;
}
// Moved the layout check so as to avoid invalid messages when not making a gate
int modX = 0;
int modZ = 0;

View File

@ -1,6 +1,6 @@
name: Stargate
main: net.TheDgtl.Stargate.Stargate
version: 0.7.7.0
version: 0.7.7.1
description: Stargate mod for Bukkit
author: Drakia
website: http://www.thedgtl.net