示例#1
0
        // Function from file: radiation_storm.dm
        public override bool start(  )
        {
            Mob_Living_Carbon C    = null;
            dynamic           T    = null;
            bool              skip = false;
            dynamic           a    = null;
            Mob_Living_Carbon H    = null;
            Mob_Living_Carbon M    = null;


            foreach (dynamic _b in Lang13.Enumerate(GlobalVars.living_mob_list, typeof(Mob_Living_Carbon)))
            {
                C = _b;

                T = GlobalFuncs.get_turf(C);

                if (!Lang13.Bool(T))
                {
                    continue;
                }

                if (Lang13.Bool(T.z) != true)
                {
                    continue;
                }
                skip = false;

                foreach (dynamic _a in Lang13.Enumerate(this.protected_areas))
                {
                    a = _a;


                    if (Lang13.Bool(a.IsInstanceOfType(T.loc)))
                    {
                        skip = true;
                        continue;
                    }
                }

                if (skip)
                {
                    continue;
                }

                if (Lang13.Bool(Lang13.FindIn(typeof(Obj_Machinery_Power_Apc), T)))
                {
                    continue;
                }

                if (C is Mob_Living_Carbon_Human)
                {
                    H = C;

                    if (Rand13.PercentChance(5))
                    {
                        H.rad_act(Rand13.Int(100, 160));
                    }
                    else
                    {
                        H.rad_act(Rand13.Int(15, 75));
                    }

                    if (Rand13.PercentChance(25))
                    {
                        if (Rand13.PercentChance(75))
                        {
                            GlobalFuncs.randmutb(H);
                        }
                        else
                        {
                            GlobalFuncs.randmutg(H);
                        }
                        H.domutcheck();
                    }
                }
                else if (C is Mob_Living_Carbon_Monkey)
                {
                    M = C;
                    M.rad_act(Rand13.Int(15, 75));
                }
            }
            return(false);
        }