@@ -54,6 +54,9 @@ public class Essentials : IPlugin, IChatEventHandler, IPlayerEventHandler, ICube
5454 #endregion
5555
5656 #region Properties
57+
58+ public static bool StableBuild = false ;
59+
5760 public static string PluginPath
5861 {
5962 get { return _pluginPath ; }
@@ -648,8 +651,25 @@ public bool DynamicConcealPirates
648651 PluginSettings . Instance . DynamicConcealPirates = value ;
649652 }
650653 }
651-
652654
655+ /*
656+ [Category("Dynamic Entity Management")]
657+ [DisplayName("ConcealPhysics")]
658+ [Description("Setting this option will turn off physics on concealed grids.")]
659+ [Browsable(true)]
660+ [ReadOnly(false)]
661+ public bool DynamicConcealPhysics
662+ {
663+ get
664+ {
665+ return PluginSettings.Instance.DynamicConcealPhysics;
666+ }
667+ set
668+ {
669+ PluginSettings.Instance.DynamicConcealPhysics = value;
670+ }
671+ }
672+ */
653673 [ Category ( "Dynamic Entity Management" ) ]
654674 [ DisplayName ( "Conceal Distance" ) ]
655675 [ Description ( "The distance a player must be from a grid for it to be revealed due to distance. The smaller this value is, the longer a grid will be hidden from sight. Default is 8000m (max view distance)" ) ]
@@ -672,7 +692,16 @@ public bool DynamicConcealIncludeLargeGrids
672692 set { PluginSettings . Instance . ConcealIncludeLargeGrids = value ; }
673693 }
674694
675-
695+ [ Category ( "Dynamic Entity Management" ) ]
696+ [ DisplayName ( "Include Stations" ) ]
697+ [ Description ( "Enable / Disable management of stations, independent of other large block grids." ) ]
698+ [ Browsable ( true ) ]
699+ [ ReadOnly ( false ) ]
700+ public bool DynamicConcealIncludeStations
701+ {
702+ get { return PluginSettings . Instance . ConcealIncludeStations ; }
703+ set { PluginSettings . Instance . ConcealIncludeStations = value ; }
704+ }
676705
677706 [ Category ( "Dynamic Entity Management" ) ]
678707 [ DisplayName ( "Block Subtype Ignore List" ) ]
@@ -698,14 +727,14 @@ public bool DynamicConcealIncludeMedBays
698727
699728
700729 [ Category ( "Dynamic Entity Management" ) ]
701- [ DisplayName ( "Update Speed " ) ]
702- [ Description ( "" ) ]
730+ [ DisplayName ( "Include Active Production " ) ]
731+ [ Description ( "Ships with active production blocks will be concealed. " ) ]
703732 [ Browsable ( true ) ]
704733 [ ReadOnly ( false ) ]
705- public int DynamicConcealUpdateSoeed
734+ public bool DynamicConcealProduction
706735 {
707- get { return PluginSettings . Instance . DynamicConcealUpdateSpeed ; }
708- set { PluginSettings . Instance . DynamicConcealUpdateSpeed = value ; }
736+ get { return PluginSettings . Instance . DynamicConcealProduction ; }
737+ set { PluginSettings . Instance . DynamicConcealProduction = value ; }
709738 }
710739
711740 [ Category ( "Dynamic Entity Management" ) ]
@@ -1115,6 +1144,23 @@ public float AtmosphericCargoShipSpawnTime {
11151144 PluginSettings . Instance . AtmosphericCargoShipSpawnTime = value ;
11161145 }
11171146 }
1147+
1148+ [ Category ( "Programmable Block Blacklist" ) ]
1149+ [ Description ( "Types and members in this list will be unavailable to all programmable blocks. Ask on the KSH forum if you're unsure how to use this!!" ) ]
1150+ [ Browsable ( true ) ]
1151+ [ ReadOnly ( false ) ]
1152+ public MTObservableCollection < BlacklistItem > BlacklistItems
1153+ {
1154+ get
1155+ {
1156+ return PluginSettings . Instance . BlacklistItems ;
1157+ }
1158+ set
1159+ {
1160+ PluginSettings . Instance . BlacklistItems = value ;
1161+ }
1162+ }
1163+
11181164 /*
11191165 [Category("Game Modes")]
11201166 [Description("Conquest Game Mode - This mode tracks asteroid owners by counting owned blocks near an asteroid to determine the owner. Includes a leaderboard")]
@@ -1285,12 +1331,13 @@ private void DoInit( string path )
12851331 MyAPIGateway . Entities . OnEntityAdd += OnEntityAdd ;
12861332 MyAPIGateway . Entities . OnEntityRemove += OnEntityRemove ;
12871333
1288- Protection . Init ( ) ;
1334+ Protection . Instance . Init ( ) ;
12891335 ProcessReservedSlots . Init ( ) ;
12901336 PlayerBlockEnforcement . Init ( ) ;
12911337
12921338 MyAPIGateway . Multiplayer . RegisterMessageHandler ( 9005 , Communication . ReceiveMessageParts ) ;
12931339 MyAPIGateway . Multiplayer . RegisterMessageHandler ( 9007 , Communication . HandleAddConcealExempt ) ;
1340+ BlacklistManager . Instance . UpdateBlacklist ( ) ;
12941341 Log . Info ( "Plugin '{0}' initialized. (Version: {1} ID: {2})" , Name , Version , Id ) ;
12951342 }
12961343
0 commit comments