Пример #1
0
            public static bool IsAutoclosedDoor(IMyTerminalBlock door)
            {
                var myDoor = door as IMyDoor;

                if (myDoor == null)
                {
                    return(false);
                }
                return(myDoor.Status == DoorStatus.Open && Parse(door.CustomData, $@"{MarkerWord}.*?").Success);
            }
        public void appendCustomInfo(Sandbox.ModAPI.IMyTerminalBlock block, StringBuilder info)
        {
            info.Clear();
            info.AppendLine("Type: " + cubeBlock.DefinitionDisplayNameText);
            info.AppendLine("Required Input: " + powerConsumption.ToString("N") + "MW");
            info.AppendLine("Maximum Input: " + pulseWeaponInfo.powerUsage.ToString("N") + "MW");
            info.AppendLine(" ");

            if (pulseWeaponInfo.classes > 1)
            {
                info.AppendLine("Class: " + "Class " + (damageUpgrades + 1) + " Pulse Weapon");
            }
        }
        public override void Init(MyObjectBuilder_EntityBase objectBuilder)
        {
            base.Init(objectBuilder);
            this.objectBuilder = objectBuilder;

            Entity.NeedsUpdate |= MyEntityUpdateEnum.BEFORE_NEXT_FRAME | MyEntityUpdateEnum.EACH_FRAME;

            functionalBlock = Entity as Sandbox.ModAPI.IMyFunctionalBlock;
            cubeBlock       = Entity as IMyCubeBlock;
            terminalBlock   = Entity as Sandbox.ModAPI.IMyTerminalBlock;

            subtypeName = functionalBlock.BlockDefinition.SubtypeName;

            getPulseWeaponInfo(subtypeName);
            initCharges();

            terminalBlock.AppendingCustomInfo += appendCustomInfo;
            cubeBlock.AddUpgradeValue("PowerEfficiency", 1.0f);
        }