예제 #1
0
        // Function from file: emitter.dm
        public override void RefreshParts(  )
        {
            double max_firedelay = 0;
            double firedelay     = 0;
            double min_firedelay = 0;
            double power_usage   = 0;
            Obj_Item_Weapon_StockParts_MicroLaser  L = null;
            Obj_Item_Weapon_StockParts_Manipulator M = null;

            max_firedelay = 120;
            firedelay     = 120;
            min_firedelay = 24;
            power_usage   = 350;

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                L = _a;

                max_firedelay -= Convert.ToDouble(L.rating * 20);
                min_firedelay -= Convert.ToDouble(L.rating * 4);
                firedelay     -= Convert.ToDouble(L.rating * 20);
            }
            this.maximum_fire_delay = max_firedelay;
            this.minimum_fire_delay = min_firedelay;
            this.fire_delay         = firedelay;

            foreach (dynamic _b in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_Manipulator)))
            {
                M = _b;

                power_usage -= Convert.ToDouble(M.rating * 50);
            }
            this.active_power_usage = power_usage;
            return;
        }
        // Function from file: experimentor.dm
        public override void RefreshParts(  )
        {
            Obj_Item_Weapon_StockParts_Manipulator    M  = null;
            Obj_Item_Weapon_StockParts_ScanningModule M2 = null;
            Obj_Item_Weapon_StockParts_MicroLaser     M3 = null;


            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_Manipulator)))
            {
                M = _a;


                if (this.resetTime > 0 && this.resetTime - Convert.ToDouble(M.rating) >= 1)
                {
                    this.resetTime -= Convert.ToDouble(M.rating);
                }
            }

            foreach (dynamic _b in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_ScanningModule)))
            {
                M2 = _b;

                this.badThingCoeff += Convert.ToDouble(M2.rating * 2);
            }

            foreach (dynamic _c in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                M3 = _c;

                this.badThingCoeff += Convert.ToDouble(M3.rating);
            }
            return;
        }
예제 #3
0
        // Function from file: microwave.dm
        public override void RefreshParts(  )
        {
            dynamic E         = null;
            dynamic max_items = null;
            Obj_Item_Weapon_StockParts_MicroLaser M  = null;
            Obj_Item_Weapon_StockParts_MatterBin  M2 = null;

            max_items = 10;

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                M = _a;

                E += M.rating;
            }

            foreach (dynamic _b in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MatterBin)))
            {
                M2 = _b;

                max_items = M2.rating * 10;
            }
            this.efficiency     = Lang13.BoolNullable(E);
            this.max_n_of_items = max_items;
            return;
        }
예제 #4
0
        // Function from file: spaceheater.dm
        public override void RefreshParts(  )
        {
            double laser = 0;
            double cap   = 0;
            Obj_Item_Weapon_StockParts_MicroLaser M  = null;
            Obj_Item_Weapon_StockParts_Capacitor  M2 = null;

            laser = 0;
            cap   = 0;

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                M = _a;

                laser += Convert.ToDouble(M.rating);
            }

            foreach (dynamic _b in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_Capacitor)))
            {
                M2 = _b;

                cap += Convert.ToDouble(M2.rating);
            }
            this.heatingPower             = laser * 40000;
            this.settableTemperatureRange = cap * 30;
            this.efficiency        = (cap + 1) * 10000;
            this.targetTemperature = Num13.MaxInt(Num13.MaxInt(((int)(this.settableTemperatureMedian - this.settableTemperatureRange)), ((int)(2.7))), Num13.MinInt(((int)(this.targetTemperature)), ((int)(this.settableTemperatureMedian + this.settableTemperatureRange))));
            return;
        }
예제 #5
0
        // Function from file: dna_scanner.dm
        public override void RefreshParts(  )
        {
            Obj_Item_Weapon_StockParts_ScanningModule P  = null;
            Obj_Item_Weapon_StockParts_Manipulator    P2 = null;
            Obj_Item_Weapon_StockParts_MicroLaser     P3 = null;

            this.scan_level      = 0;
            this.damage_coeff    = 0;
            this.precision_coeff = 0;

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_ScanningModule)))
            {
                P = _a;

                this.scan_level += Convert.ToDouble(P.rating);
            }

            foreach (dynamic _b in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_Manipulator)))
            {
                P2 = _b;

                this.precision_coeff = P2.rating;
            }

            foreach (dynamic _c in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                P3 = _c;

                this.damage_coeff = P3.rating;
            }
            return;
        }
예제 #6
0
        // Function from file: chem_heater.dm
        public override void RefreshParts(  )
        {
            Obj_Item_Weapon_StockParts_MicroLaser M = null;

            this.heater_coefficient = 0.1;

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                M = _a;

                this.heater_coefficient *= Convert.ToDouble(M.rating);
            }
            return;
        }
        // Function from file: thermomachine.dm
        public override void RefreshParts(  )
        {
            dynamic L = null;
            Obj_Item_Weapon_StockParts_MicroLaser M = null;

            base.RefreshParts();

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                M = _a;

                L += M.rating;
            }
            this.max_temperature = Lang13.Initial(this, "max_temperature") * L + 293.41;
            return;
        }
        // Function from file: thermomachine.dm
        public override void RefreshParts(  )
        {
            double L = 0;             //null -Pdan
            Obj_Item_Weapon_StockParts_MicroLaser M = null;

            base.RefreshParts();

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                M = _a;

                L += M.rating;
            }

            // still not sure wtf is going on here
            this.min_temperature = Num13.Max(273.41 - (initial_min_temp + L * 15), 2.7);
            return;
        }
예제 #9
0
        // Function from file: equipment_locker.dm
        public override void RefreshParts(  )
        {
            dynamic ore_pickup_rate_temp             = null;
            dynamic point_upgrade_temp               = null;
            dynamic sheet_per_ore_temp               = null;
            Obj_Item_Weapon_StockParts_MatterBin   B = null;
            Obj_Item_Weapon_StockParts_Manipulator M = null;
            Obj_Item_Weapon_StockParts_MicroLaser  L = null;

            ore_pickup_rate_temp = 15;
            point_upgrade_temp   = 1;
            sheet_per_ore_temp   = 1;

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MatterBin)))
            {
                B = _a;

                sheet_per_ore_temp = B.rating;
            }

            foreach (dynamic _b in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_Manipulator)))
            {
                M = _b;

                ore_pickup_rate_temp = M.rating * 15;
            }

            foreach (dynamic _c in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                L = _c;

                point_upgrade_temp = L.rating;
            }
            this.ore_pickup_rate = ore_pickup_rate_temp;
            this.point_upgrade   = point_upgrade_temp;
            this.sheet_per_ore   = sheet_per_ore_temp;
            return;
        }
        // Function from file: mech_fabricator.dm
        public override void RefreshParts(  )
        {
            double T = 0;
            Obj_Item_Weapon_StockParts_MatterBin   M  = null;
            Obj_Item_Weapon_StockParts_MicroLaser  Ma = null;
            Obj_Item_Weapon_StockParts_Manipulator Ml = null;

            T = 0;

            foreach (dynamic _a in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MatterBin)))
            {
                M = _a;

                T += Convert.ToDouble(M.rating);
            }
            this.res_max_amount = T * 37500 + 187000;
            T = -1;

            foreach (dynamic _b in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_MicroLaser)))
            {
                Ma = _b;

                T += Convert.ToDouble(Ma.rating);
            }
            this.resource_coeff = Num13.Round(Convert.ToDouble(Lang13.Initial(this, "resource_coeff") - Lang13.Initial(this, "resource_coeff") * T / 8), 0.01);
            T = -1;

            foreach (dynamic _c in Lang13.Enumerate(this.component_parts, typeof(Obj_Item_Weapon_StockParts_Manipulator)))
            {
                Ml = _c;

                T += Convert.ToDouble(Ml.rating);
            }
            this.time_coeff = Num13.Round(Convert.ToDouble(Lang13.Initial(this, "time_coeff") - Lang13.Initial(this, "time_coeff") * T / 5), 0.01);
            return;
        }