diff --git a/Data/BlockCategories.sbc b/Data/BlockCategories.sbc index 8419bd2..43cb498 100644 --- a/Data/BlockCategories.sbc +++ b/Data/BlockCategories.sbc @@ -9,21 +9,21 @@ Hull Classifiers Hull Classifiers - Beacon/GCUnlicensedHullClassifier - Beacon/GCWorkerHullClassifier - Beacon/GCFoundryHullClassifier - Beacon/GCScoutHullClassifier - Beacon/GCFighterHullClassifier - Beacon/GCGunshipHullClassifier - Beacon/GCCorvetteHullClassifier - Beacon/GCFrigateHullClassifier - Beacon/GCDestroyerHullClassifier - Beacon/GCCruiserHullClassifier - Beacon/GCHeavyCruiserHullClassifier - Beacon/GCBattleshipHullClassifier - Beacon/GCOutpostHullClassifier - Beacon/GCInstallationHullClassifier - Beacon/GCFortressHullClassifier + RadioAntenna/GCUnlicensedHullClassifier + RadioAntenna/GCWorkerHullClassifier + RadioAntenna/GCFoundryHullClassifier + RadioAntenna/GCScoutHullClassifier + RadioAntenna/GCFighterHullClassifier + RadioAntenna/GCGunshipHullClassifier + RadioAntenna/GCCorvetteHullClassifier + RadioAntenna/GCFrigateHullClassifier + RadioAntenna/GCDestroyerHullClassifier + RadioAntenna/GCCruiserHullClassifier + RadioAntenna/GCHeavyCruiserHullClassifier + RadioAntenna/GCBattleshipHullClassifier + RadioAntenna/GCOutpostHullClassifier + RadioAntenna/GCInstallationHullClassifier + RadioAntenna/GCFortressHullClassifier diff --git a/Data/CubeBlocks.sbc b/Data/CubeBlocks.sbc index 5675102..d57d258 100644 --- a/Data/CubeBlocks.sbc +++ b/Data/CubeBlocks.sbc @@ -6,11 +6,12 @@ - Beacon + RadioAntenna GCUnlicensedHullClassifier Unlicensed Hull Classifier Textures\Icons\unlicensed-1-128.dds + Utility Large TriangleMesh @@ -47,11 +48,12 @@ - Beacon + RadioAntenna GCUnlicensedHullClassifierSmall Unlicensed Hull Classifier Textures\Icons\unlicensed-1-128.dds + Utility Small TriangleMesh @@ -82,11 +84,12 @@ - Beacon + RadioAntenna GCWorkerHullClassifier Worker Hull Classifier Textures\Icons\utility-1-128.dds + Utility Large TriangleMesh @@ -124,11 +127,12 @@ - Beacon + RadioAntenna GCWorkerHullClassifierSmall Worker Hull Classifier Textures\Icons\utility-1-128.dds + Utility Small TriangleMesh @@ -156,11 +160,12 @@ - Beacon + RadioAntenna GCFoundryHullClassifier Foundry Hull Classifier Textures\Icons\utility-2-128.dds + Utility Large TriangleMesh @@ -203,11 +208,12 @@ - Beacon + RadioAntenna GCScoutHullClassifier Scout Hull Classifier Textures\Icons\strikecraft-1-128.dds + Utility Small TriangleMesh @@ -235,11 +241,12 @@ - Beacon + RadioAntenna GCFighterHullClassifier Fighter Hull Classifier Textures\Icons\strikecraft-2-128.dds + Utility Small TriangleMesh @@ -267,11 +274,12 @@ - Beacon + RadioAntenna GCGunshipHullClassifier Gunship Hull Classifier Textures\Icons\strikecraft-3-128.dds + Utility Small TriangleMesh @@ -303,11 +311,12 @@ - Beacon + RadioAntenna GCCorvetteHullClassifier Corvette Hull Classifier Textures\Icons\corvette-1-128.dds + Utility Large TriangleMesh @@ -346,11 +355,12 @@ - Beacon + RadioAntenna GCFrigateHullClassifier Frigate Hull Classifier Textures\Icons\frigate-1-128.dds + Utility Large TriangleMesh @@ -389,11 +399,12 @@ - Beacon + RadioAntenna GCDestroyerHullClassifier Destroyer Hull Classifier Textures\Icons\capital-1-128.dds + Utility Large TriangleMesh @@ -432,11 +443,12 @@ - Beacon + RadioAntenna GCCruiserHullClassifier Cruiser Hull Classifier Textures\Icons\capital-2-128.dds + Utility Large TriangleMesh @@ -475,11 +487,12 @@ - Beacon + RadioAntenna GCHeavyCruiserHullClassifier Heavy Cruiser Hull Classifier Textures\Icons\supercapital-1-128.dds + Utility Large TriangleMesh @@ -518,11 +531,12 @@ - Beacon + RadioAntenna GCBattleshipHullClassifier Battleship Hull Classifier Textures\Icons\supercapital-2-128.dds + Utility Large TriangleMesh @@ -565,11 +579,12 @@ - Beacon + RadioAntenna GCOutpostHullClassifier Outpost Hull Classifier Textures\Icons\station-1-128.dds + Utility Large TriangleMesh @@ -608,11 +623,12 @@ - Beacon + RadioAntenna GCInstallationHullClassifier Installation Hull Classifier Textures\Icons\station-2-128.dds + Utility Large TriangleMesh @@ -651,11 +667,12 @@ - Beacon + RadioAntenna GCFortressHullClassifier Fortress Hull Classifier Textures\Icons\station-3-128.dds + Utility Large TriangleMesh diff --git a/Data/Prefabs/GCSpawnShip.sbc b/Data/Prefabs/GCSpawnShip.sbc index 355cf5b..dc14ee1 100644 --- a/Data/Prefabs/GCSpawnShip.sbc +++ b/Data/Prefabs/GCSpawnShip.sbc @@ -1180,7 +1180,7 @@ people will try to kill you. 10 0 - + GCUnlicensedHullClassifier 200619511763221591 diff --git a/Data/Scripts/GardenConquest/Blocks/GridEnforcer.cs b/Data/Scripts/GardenConquest/Blocks/GridEnforcer.cs index 70e7de9..eb32cba 100644 --- a/Data/Scripts/GardenConquest/Blocks/GridEnforcer.cs +++ b/Data/Scripts/GardenConquest/Blocks/GridEnforcer.cs @@ -244,7 +244,7 @@ public override void Init(MyObjectBuilder_EntityBase objectBuilder) { } // We need to only turn on our rule checking after startup. Otherwise, if - // a beacon is destroyed and then the server restarts, all but the first + // an antenna is destroyed and then the server restarts, all but the first // 25 blocks will be deleted on startup. m_Grid.NeedsUpdate |= MyEntityUpdateEnum.EACH_100TH_FRAME; @@ -975,7 +975,7 @@ private void removeExtraClassifiers(int removeCount = 100) { /// The cleanest way to do that would be making Hull Classifiers a logic component /// so we can track isWorking there and make sure it's closed when they are /// This would require the ge to be able to find the HullClassifier component on - /// an added beacon, which seems like it might be possible, but also might not + /// an added antenna, which seems like it might be possible, but also might not /// private List findWorstClassifiers(uint removeCount = 0) { List worstClassifiers = new List(); diff --git a/Data/Scripts/GardenConquest/Blocks/HullClassifier.cs b/Data/Scripts/GardenConquest/Blocks/HullClassifier.cs index 050c1d3..d5c017e 100644 --- a/Data/Scripts/GardenConquest/Blocks/HullClassifier.cs +++ b/Data/Scripts/GardenConquest/Blocks/HullClassifier.cs @@ -63,7 +63,7 @@ private static HullClass.CLASS HullClassFromSubTypeString(String subTypeString) /// public static bool isClassifierBlock(IMySlimBlock block) { IMyCubeBlock fatblock = block.FatBlock; - if (fatblock != null && fatblock is Ingame.IMyBeacon) { + if (fatblock != null && fatblock is Ingame.IMyRadioAntenna) { String subTypeName = fatblock.BlockDefinition.SubtypeName; if (subTypeName.Contains(SHARED_SUBTYPE)) return true; diff --git a/Data/Scripts/GardenConquest/Core/CommandProcessor.cs b/Data/Scripts/GardenConquest/Core/CommandProcessor.cs index 7ab7562..fbdd565 100644 --- a/Data/Scripts/GardenConquest/Core/CommandProcessor.cs +++ b/Data/Scripts/GardenConquest/Core/CommandProcessor.cs @@ -267,7 +267,7 @@ private String helpCPsText() { "In order to control the CP, your fleet must " + "have the most ships in that area that:\n" + - "* have a powered, broadcasting Hull Classifier beacon\n" + + "* have a powered, broadcasting Hull Classifier antenna\n" + "* have a broadcast range on the classifier at least as large " + " as the ship's distance to the CP. (This is to prevent players " + "from hiding while capturing a CP. If someone stands in the " + diff --git a/Data/Scripts/GardenConquest/Messaging/RequestProcessor.cs b/Data/Scripts/GardenConquest/Messaging/RequestProcessor.cs index 5440ada..738d87d 100644 --- a/Data/Scripts/GardenConquest/Messaging/RequestProcessor.cs +++ b/Data/Scripts/GardenConquest/Messaging/RequestProcessor.cs @@ -137,7 +137,7 @@ private void processStopGridRequest(StopGridRequest req) { // Get all thrusters, spaceballs, artificial masses, and cockpits Func selectBlocks = b => - b.FatBlock != null && (b.FatBlock is IMyThrust || b.FatBlock is IMySpaceBall || b.FatBlock is InGame.IMyVirtualMass || b.FatBlock is InGame.IMyShipController); + b.FatBlock != null && (b.FatBlock is IMyThrust || b.FatBlock is IMyGyro || b.FatBlock is IMySpaceBall || b.FatBlock is InGame.IMyVirtualMass || b.FatBlock is InGame.IMyShipController); gridToStop.GetBlocks(fatBlocks, selectBlocks); // Can the player interact with this grid? If they can, stop the ship by enabling dampeners, turning off @@ -146,7 +146,14 @@ private void processStopGridRequest(StopGridRequest req) { foreach (IMySlimBlock block in fatBlocks) { // Thruster if (block.FatBlock is IMyThrust) { - Interfaces.TerminalPropertyExtensions.SetValueFloat(block.FatBlock as IMyTerminalBlock, "Override", 0); + (block.FatBlock as InGame.IMyFunctionalBlock).RequestEnable(true); + Interfaces.TerminalPropertyExtensions.SetValueFloat(block.FatBlock as IMyTerminalBlock, "Override", 0); + } + // Gyroscope + if (block.FatBlock is IMyGyro) { + (block.FatBlock as InGame.IMyFunctionalBlock).RequestEnable(true); + Interfaces.TerminalPropertyExtensions.SetValueFloat(block.FatBlock as IMyTerminalBlock, "Power", 1); + Interfaces.TerminalPropertyExtensions.SetValueBool(block.FatBlock as InGame.IMyGyro, "Override", false); } // Spaceball else if (block.FatBlock is IMySpaceBall) { diff --git a/Data/Scripts/GardenConquest/Records/ControlPoint.cs b/Data/Scripts/GardenConquest/Records/ControlPoint.cs index 0ebfa95..f493c5f 100644 --- a/Data/Scripts/GardenConquest/Records/ControlPoint.cs +++ b/Data/Scripts/GardenConquest/Records/ControlPoint.cs @@ -207,19 +207,19 @@ private Dictionary nearbySubfleets() { "nearbySubfleets", Logger.severity.ERROR); continue; } - InGame.IMyBeacon beacon = classifier.FatBlock as InGame.IMyBeacon; - if (beacon == null) { - log("Classifier could not be referenced as beacon", + InGame.IMyRadioAntenna antenna = classifier.FatBlock as InGame.IMyRadioAntenna; + if (antenna == null) { + log("Classifier could not be referenced as antenna", "nearbySubfleets", Logger.severity.ERROR); continue; } - if (!beacon.IsWorking) { - log("Classifier beacon not working but grid was classified", + if (!antenna.IsWorking) { + log("Classifier antenna not working but grid was classified", "nearbySubfleets", Logger.severity.ERROR); continue; } - if (beacon.Radius < VRageMath.Vector3.Distance(Position, grid.GetPosition())) { + if (antenna.Radius < VRageMath.Vector3.Distance(Position, grid.GetPosition())) { log("Classifier range too small, skipping", "nearbySubfleets"); // TODO notify pilot continue;