Пример #1
0
        // Function from file: ert.dm
        public override void post_equip(Mob H = null, int?visualsOnly = null)
        {
            visualsOnly = visualsOnly ?? GlobalVars.FALSE;

            Obj_Item_Weapon_Implant_Loyalty L = null;
            Obj_Item_Device_Radio           R = null;
            Obj_Item_Weapon_Card_Id         W = null;


            if (Lang13.Bool(visualsOnly))
            {
                return;
            }
            L           = new Obj_Item_Weapon_Implant_Loyalty(H);
            L.imp_in    = H;
            L.implanted = 1;
            ((dynamic)H).sec_hud_set_implants();
            R = ((dynamic)H).ears;
            R.set_frequency(GlobalVars.CENTCOM_FREQ);
            R.freqlock        = true;
            W                 = ((dynamic)H).wear_id;
            W.registered_name = H.real_name;
            W.update_label(W.registered_name, W.assignment);
            return;
        }
Пример #2
0
        // Function from file: job.dm
        public override void post_equip(Mob H = null, int?visualsOnly = null)
        {
            visualsOnly = visualsOnly ?? GlobalVars.FALSE;

            Obj_Item_Weapon_Card_Id C = null;
            Job     J   = null;
            dynamic PDA = null;


            if (Lang13.Bool(visualsOnly))
            {
                return;
            }
            C = ((dynamic)H).wear_id;

            if (C is Obj_Item_Weapon_Card_Id)
            {
                J                 = GlobalVars.SSjob.GetJob(H.job);
                C.access          = J.get_access();
                C.registered_name = H.real_name;
                C.assignment      = H.job;
                C.update_label();
                ((Mob_Living_Carbon_Human)H).sec_hud_set_ID();
            }
            PDA = H.get_item_by_slot(this.pda_slot);

            if (PDA is Obj_Item_Device_Pda)
            {
                PDA.owner  = H.real_name;
                PDA.ownjob = H.job;
                PDA.update_label();
            }
            return;
        }
Пример #3
0
        // Function from file: ert.dm
        public override void post_equip(Mob H = null, int?visualsOnly = null)
        {
            visualsOnly = visualsOnly ?? GlobalVars.FALSE;

            Obj_Item_Device_Pda     pda = null;
            Obj_Item_Weapon_Card_Id W   = null;


            if (Lang13.Bool(visualsOnly))
            {
                return;
            }
            pda        = ((dynamic)H).r_store;
            pda.owner  = H.real_name;
            pda.ownjob = "Centcom Official";
            pda.update_label();
            W                 = ((dynamic)H).wear_id;
            W.icon_state      = "centcom";
            W.access          = GlobalFuncs.get_centcom_access("Centcom Official");
            W.access         += GlobalVars.access_weapons;
            W.assignment      = "Centcom Official";
            W.registered_name = H.real_name;
            W.update_label();
            return;
        }
Пример #4
0
        // Function from file: standard.dm
        public override void post_equip(Mob H = null, int?visualsOnly = null)
        {
            visualsOnly = visualsOnly ?? GlobalVars.FALSE;

            Obj_Item_Clothing_Under U              = null;
            dynamic                 sec_briefcase  = null;
            Obj_Item                briefcase_item = null;
            int?                    i              = null;
            Obj_Item_Device_Pda     pda            = null;
            Obj_Item_Weapon_Card_Id W              = null;

            U = ((dynamic)H).w_uniform;
            U.attachTie(new Obj_Item_Clothing_Tie_Waistcoat(H));

            if (Lang13.Bool(visualsOnly))
            {
                return;
            }
            sec_briefcase = H.l_hand;

            foreach (dynamic _a in Lang13.Enumerate(sec_briefcase, typeof(Obj_Item)))
            {
                briefcase_item = _a;

                GlobalFuncs.qdel(briefcase_item);
            }
            i = null;
            i = 3;

            while ((i ?? 0) > 0)
            {
                ((Obj_Item_Weapon_Storage)sec_briefcase).handle_item_insertion(new Obj_Item_Stack_Spacecash_C1000(), true);
                i--;
            }
            ((Obj_Item_Weapon_Storage)sec_briefcase).handle_item_insertion(new Obj_Item_Weapon_Gun_Energy_KineticAccelerator_Crossbow(), true);
            ((Obj_Item_Weapon_Storage)sec_briefcase).handle_item_insertion(new Obj_Item_Weapon_Gun_Projectile_Revolver_Mateba(), true);
            ((Obj_Item_Weapon_Storage)sec_briefcase).handle_item_insertion(new Obj_Item_AmmoBox_A357(), true);
            ((Obj_Item_Weapon_Storage)sec_briefcase).handle_item_insertion(new Obj_Item_Weapon_C4(), true);
            pda        = ((dynamic)H).belt;
            pda.owner  = H.real_name;
            pda.ownjob = "Reaper";
            pda.update_label();
            W                 = ((dynamic)H).wear_id;
            W.access          = GlobalFuncs.get_all_accesses();
            W.assignment      = "Reaper";
            W.registered_name = H.real_name;
            W.update_label(H.real_name);
            return;
        }
Пример #5
0
        // Function from file: standard.dm
        public override void post_equip(Mob H = null, int?visualsOnly = null)
        {
            visualsOnly = visualsOnly ?? GlobalVars.FALSE;

            Obj_Item_Weapon_Card_Id W = null;


            if (Lang13.Bool(visualsOnly))
            {
                return;
            }
            W                 = ((dynamic)H).wear_id;
            W.assignment      = "Assistant";
            W.registered_name = H.real_name;
            W.update_label();
            return;
        }
Пример #6
0
        // Function from file: standard.dm
        public override void post_equip(Mob H = null, int?visualsOnly = null)
        {
            visualsOnly = visualsOnly ?? GlobalVars.FALSE;

            Obj_Item_Weapon_Card_Id W = null;


            if (Lang13.Bool(visualsOnly))
            {
                return;
            }
            W                 = ((dynamic)H).wear_id;
            W.access          = GlobalFuncs.get_all_accesses();
            W.assignment      = "Tunnel Clown!";
            W.registered_name = H.real_name;
            W.update_label(H.real_name);
            return;
        }
        // Function from file: wallets.dm
        public override bool remove_from_storage(dynamic W = null, dynamic new_location = null, bool?burn = null)
        {
            bool _default = false;

            _default = base.remove_from_storage((object)(W), (object)(new_location), burn);

            if (_default)
            {
                if (W is Obj_Item_Weapon_Card_Id)
                {
                    if (W == this.front_id)
                    {
                        this.front_id = null;
                    }
                    this.refreshID();
                    this.update_icon();
                }
            }
            return(_default);
        }
        // Function from file: wallets.dm
        public void refreshID(  )
        {
            Obj_Item_Weapon_Card_Id I = null;

            this.combined_access.Cut();

            foreach (dynamic _a in Lang13.Enumerate(this.contents, typeof(Obj_Item_Weapon_Card_Id)))
            {
                I = _a;


                if (!(this.front_id != null))
                {
                    this.front_id = I;
                    this.update_icon();
                }
                this.combined_access.Or(I.access);
            }
            return;
        }
Пример #9
0
        // Function from file: standard.dm
        public override void post_equip(Mob H = null, int?visualsOnly = null)
        {
            visualsOnly = visualsOnly ?? GlobalVars.FALSE;

            Obj_Item_Weapon_Card_Id W = null;


            if (Lang13.Bool(visualsOnly))
            {
                return;
            }
            W                 = ((dynamic)H).wear_id;
            W.icon_state      = "centcom";
            W.access          = GlobalFuncs.get_all_accesses();
            W.access         += GlobalFuncs.get_centcom_access("Centcom Commander");
            W.assignment      = "Centcom Commander";
            W.registered_name = H.real_name;
            W.update_label();
            return;
        }
Пример #10
0
        // Function from file: standard.dm
        public override void post_equip(Mob H = null, int?visualsOnly = null)
        {
            visualsOnly = visualsOnly ?? GlobalVars.FALSE;

            Obj_Item_Weapon_Card_Id W = null;
            Obj_Item_Device_Radio   R = null;


            if (Lang13.Bool(visualsOnly))
            {
                return;
            }
            W                 = ((dynamic)H).wear_id;
            W.icon_state      = "centcom";
            W.access          = GlobalFuncs.get_all_accesses();
            W.access         += GlobalFuncs.get_centcom_access("Special Ops Officer");
            W.assignment      = "Special Ops Officer";
            W.registered_name = H.real_name;
            W.update_label();
            R = ((dynamic)H).ears;
            R.set_frequency(GlobalVars.CENTCOM_FREQ);
            R.freqlock = true;
            return;
        }
        // Function from file: interactive.dm
        public Mob_Living_Carbon_Human_Interactive(dynamic loc = null) : base((object)(loc))
        {
            dynamic             R    = null;
            dynamic             L    = null;
            dynamic             R2   = null;
            dynamic             L2   = null;
            dynamic             R3   = null;
            dynamic             L3   = null;
            Obj_Item_Organ_Limb LIMB = null;

            // Warning: Super call was HERE! If anything above HERE is needed by the super call, it might break!;
            this.random();
            this.MYID                 = new Obj_Item_Weapon_Card_Id(this);
            this.MYID.name            = "" + this.real_name + "'s ID Card (" + this.myjob.title + ")";
            this.MYID.assignment      = "" + this.myjob.title;
            this.MYID.registered_name = this.real_name;
            this.MYID.access          = this.myjob.access;
            this.equip_to_slot_or_del(this.MYID, 7);
            this.MYPDA        = new Obj_Item_Device_Pda(this);
            this.MYPDA.owner  = this.real_name;
            this.MYPDA.ownjob = "Crew";
            this.MYPDA.name   = "PDA-" + this.real_name + " (" + this.myjob.title + ")";
            this.equip_to_slot_or_del(this.MYPDA, 6);
            this.zone_selected = "chest";

            if (Rand13.PercentChance(10))
            {
                if (Rand13.PercentChance(((int)(67.5))))
                {
                    R = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_RArm), this.organs);
                    GlobalFuncs.qdel(R);
                    this.organs.Add(new Obj_Item_Organ_Limb_Robot_RArm());
                }
                else
                {
                    L = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_LArm), this.organs);
                    GlobalFuncs.qdel(L);
                    this.organs.Add(new Obj_Item_Organ_Limb_Robot_LArm());
                }

                if (Rand13.PercentChance(((int)(67.5))))
                {
                    R2 = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_RLeg), this.organs);
                    GlobalFuncs.qdel(R2);
                    this.organs.Add(new Obj_Item_Organ_Limb_Robot_RLeg());
                }
                else
                {
                    L2 = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_LLeg), this.organs);
                    GlobalFuncs.qdel(L2);
                    this.organs.Add(new Obj_Item_Organ_Limb_Robot_LLeg());
                }

                if (Rand13.PercentChance(((int)(67.5))))
                {
                    R3 = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_Chest), this.organs);
                    GlobalFuncs.qdel(R3);
                    this.organs.Add(new Obj_Item_Organ_Limb_Robot_Chest());
                }
                else
                {
                    L3 = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_Head), this.organs);
                    GlobalFuncs.qdel(L3);
                    this.organs.Add(new Obj_Item_Organ_Limb_Robot_Head());
                }

                foreach (dynamic _a in Lang13.Enumerate(this.organs, typeof(Obj_Item_Organ_Limb)))
                {
                    LIMB = _a;

                    LIMB.owner = this;
                }
            }
            this.update_icons();
            this.update_damage_overlays(  );
            this.update_augments();
            this.hand = false;

            if ((this.TRAITS & 2) != 0)
            {
                this.robustness = 75;
            }
            else if ((this.TRAITS & 4) != 0)
            {
                this.robustness = 25;
            }

            if ((this.TRAITS & 8) != 0)
            {
                this.smartness = 25;
            }
            else if ((this.TRAITS & 16) != 0)
            {
                this.disabilities |= 256;
                this.smartness     = 75;
            }

            if ((this.TRAITS & 32) != 0)
            {
                this.attitude = 75;
            }
            else if ((this.TRAITS & 64) != 0)
            {
                this.attitude = 1;
            }

            if ((this.TRAITS & 128) != 0)
            {
                this.slyness = 75;
            }
            GlobalVars.SSnpc.insertBot(this);
            return;
        }
Пример #12
0
        // Function from file: corpse.dm
        public virtual void createCorpse(bool death = false, string ckey = null)
        {
            Mob_Living_Carbon_Human M = null;
            Obj_Item_Weapon_Card_Id W = null;
            dynamic jobdatum          = null;
            dynamic jobtype           = null;
            dynamic J = null;
            dynamic I = null;
            dynamic X = null;

            M = new Mob_Living_Carbon_Human(this.loc);

            if (this.mobname != "default")
            {
                M.real_name = this.mobname;
            }
            else
            {
                M.real_name = this.name;
            }
            M.gender = this.mobgender;

            if (this.mob_species != null)
            {
                M.set_species(this.mob_species);
            }

            if (death)
            {
                M.death(true);

                if (Lang13.Bool(this.corpsehusk))
                {
                    M.Drain();
                }
            }

            if (Lang13.Bool(this.faction))
            {
                M.faction = new ByTable(new object [] { this.faction });
            }
            M.adjustBruteLoss(this.corpsebrute);
            M.adjustOxyLoss(this.corpseoxy);

            if (this.corpseuniform != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseuniform, M), 14);
            }

            if (this.corpsesuit != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsesuit, M), 13);
            }

            if (this.corpseshoes != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseshoes, M), 12);
            }

            if (this.corpsegloves != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsegloves, M), 10);
            }

            if (this.corpseradio != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseradio, M), 8);
            }

            if (this.corpseglasses != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseglasses, M), 9);
            }

            if (this.corpsemask != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsemask, M), 2);
            }

            if (this.corpsehelmet != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsehelmet, M), 11);
            }

            if (this.corpsebelt != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsebelt, M), 6);
            }

            if (this.corpsepocket1 != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsepocket1, M), 16);
            }

            if (this.corpsepocket2 != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsepocket2, M), 15);
            }

            if (this.corpseback != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseback, M), 1);
            }

            if (this.corpseid)
            {
                W = new Obj_Item_Weapon_Card_Id(M);

                foreach (dynamic _a in Lang13.Enumerate(Lang13.GetTypes(typeof(Job))))
                {
                    jobtype = _a;

                    J = Lang13.Call(jobtype);

                    if (J.title == this.corpseidaccess)
                    {
                        jobdatum = J;
                        break;
                    }
                }

                if (Lang13.Bool(this.corpseidicon))
                {
                    W.icon_state = this.corpseidicon;
                }

                if (Lang13.Bool(this.corpseidaccess))
                {
                    if (Lang13.Bool(jobdatum))
                    {
                        W.access = ((Job)jobdatum).get_access();
                    }
                    else
                    {
                        W.access = new ByTable();
                    }
                }

                if (Lang13.Bool(this.corpseidjob))
                {
                    W.assignment = this.corpseidjob;
                }
                W.registered_name = M.real_name;
                W.update_label();
                M.equip_to_slot_or_del(W, 7);
            }

            foreach (dynamic _b in Lang13.Enumerate(this.implants))
            {
                I = _b;

                X = Lang13.Call(I);
                X.implant(M);
            }

            if (Lang13.Bool(ckey))
            {
                M.ckey = ckey;
                M.WriteMsg("" + this.flavour_text);
            }
            GlobalFuncs.qdel(this);
            return;
        }
Пример #13
0
        // Function from file: artefact.dm
        public void equip_copy(Mob_Living_Carbon_Human M = null)
        {
            Obj_Item_Weapon_Multisword sword = null;
            dynamic  randomize        = null;
            dynamic  hat              = null;
            dynamic  C                = null;
            dynamic  R                = null;
            dynamic  L                = null;
            dynamic  LL               = null;
            dynamic  RL               = null;
            Obj_Item carried_item     = null;
            Obj_Item_Weapon_Card_Id W = null;

            sword          = new Obj_Item_Weapon_Multisword();
            sword.assigned = this.assigned;
            sword.faction  = new ByTable(new object [] { "" + this.assigned });
            sword.evil     = this.evil;
            randomize      = Rand13.Pick(new object [] { "mobster", "roman", "wizard", "cyborg", "syndicate", "assistant", "animu", "cultist", "highlander", "clown", "killer", "pirate", "soviet", "officer", "gladiator" });

            dynamic _b = randomize;             // Was a switch-case, sorry for the mess.

            if (_b == "mobster")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Fedora(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Laceup(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Gloves_Color_Black(M), 10);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Glasses_Sunglasses(M), 9);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_SuitJacket_ReallyBlack(M), 14);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "roman")
            {
                hat = Rand13.Pick(new object [] { typeof(Obj_Item_Clothing_Head_Helmet_Roman), typeof(Obj_Item_Clothing_Head_Helmet_Roman_Legionaire) });
                M.equip_to_slot_or_del(Lang13.Call(hat, M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Roman(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Roman(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Weapon_Shield_Riot_Roman(M), 4);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "wizard")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Color_Lightpurple(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Suit_Wizrobe_Red(M), 13);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Sandal(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Wizard_Red(M), 11);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "cyborg")
            {
                C = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_Chest), M.organs);
                GlobalFuncs.qdel(C);
                M.organs.Add(new Obj_Item_Organ_Limb_Robot_Chest());
                R = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_RArm), M.organs);
                GlobalFuncs.qdel(R);
                M.organs.Add(new Obj_Item_Organ_Limb_Robot_RArm());
                L = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_LArm), M.organs);
                GlobalFuncs.qdel(L);
                M.organs.Add(new Obj_Item_Organ_Limb_Robot_LArm());
                LL = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_LLeg), M.organs);
                GlobalFuncs.qdel(LL);
                M.organs.Add(new Obj_Item_Organ_Limb_Robot_LLeg());
                RL = Lang13.FindIn(typeof(Obj_Item_Organ_Limb_RLeg), M.organs);
                GlobalFuncs.qdel(RL);
                M.organs.Add(new Obj_Item_Organ_Limb_Robot_RLeg());
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Glasses_Thermal_Eyepatch(M), 9);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "syndicate")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Syndicate(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Combat(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Gloves_Combat(M), 10);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Helmet_Swat(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Suit_Armor_Vest(M), 13);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Mask_Gas(M), 2);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "assistant")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Color_Grey(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Sneakers_Black(M), 12);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "animu")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Sandal(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Kitty(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Schoolgirl_Red(M), 14);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "cultist")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Culthood_Alt(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Suit_Cultrobes_Alt(M), 13);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Cult(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "highlander")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Kilt(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Beret(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Combat(M), 12);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "clown")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Rank_Clown(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_ClownShoes(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Mask_Gas_ClownHat(M), 2);
                M.equip_to_slot_or_del(new Obj_Item_Weapon_Bikehorn(M), 15);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "killer")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Overalls(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Sneakers_White(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Gloves_Color_Latex(M), 10);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Mask_Surgical(M), 2);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Welding(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Suit_Apron(M), 13);
                M.equip_to_slot_or_del(new Obj_Item_Weapon_Kitchen_Knife(M), 15);
                M.equip_to_slot_or_del(new Obj_Item_Weapon_Scalpel(M), 16);
                M.equip_to_slot_or_del(sword, 5);

                foreach (dynamic _a in Lang13.Enumerate(M.contents, typeof(Obj_Item)))
                {
                    carried_item = _a;


                    if (!(carried_item is Obj_Item_Weapon_Implant))
                    {
                        carried_item.add_blood(M);
                    }
                }
            }
            else if (_b == "pirate")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Pirate(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Sneakers_Brown(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Bandana(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Glasses_Eyepatch(M), 9);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "soviet")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Hgpiratecap(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Combat(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Gloves_Combat(M), 10);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Suit_Hgpirate(M), 13);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Soviet(M), 14);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "officer")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Helmet_Space_Beret(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Combat(M), 12);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Gloves_Combat(M), 10);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Mask_Cigarette_Cigar_Havana(M), 2);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Suit_Jacket_Miljacket(M), 13);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Syndicate(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Glasses_Eyepatch(M), 9);
                M.equip_to_slot_or_del(sword, 5);
            }
            else if (_b == "gladiator")
            {
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Head_Helmet_Gladiator(M), 11);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Under_Gladiator(M), 14);
                M.equip_to_slot_or_del(new Obj_Item_Device_Radio_Headset(M), 8);
                M.equip_to_slot_or_del(new Obj_Item_Clothing_Shoes_Sandal(M), 12);
                M.equip_to_slot_or_del(sword, 5);
            }
            else
            {
                return;
            }
            M.update_icons();
            M.update_augments();
            W                 = new Obj_Item_Weapon_Card_Id();
            W.icon_state      = "centcom";
            W.access         += GlobalVars.access_maint_tunnels;
            W.assignment      = "Multiverse Traveller";
            W.registered_name = M.real_name;
            W.update_label(M.real_name);
            M.equip_to_slot_or_del(W, 7);
            return;
        }
        // Function from file: corpse.dm
        public void createCorpse(  )
        {
            Mob_Living_Carbon_Human M = null;
            Obj_Item_Weapon_Card_Id W = null;
            dynamic jobdatum          = null;
            dynamic jobtype           = null;
            dynamic J = null;

            M           = new Mob_Living_Carbon_Human(this.loc);
            M.real_name = this.name;
            M.death();

            if (this.corpseuniform != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseuniform, M), 14);
            }

            if (this.corpsesuit != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsesuit, M), 13);
            }

            if (this.corpseshoes != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseshoes, M), 12);
            }

            if (this.corpsegloves != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsegloves, M), 10);
            }

            if (this.corpseradio != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseradio, M), 8);
            }

            if (this.corpseglasses != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseglasses, M), 9);
            }

            if (this.corpsemask != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsemask, M), 2);
            }

            if (this.corpsehelmet != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsehelmet, M), 11);
            }

            if (Lang13.Bool(this.corpsebelt))
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsebelt, M), 6);
            }

            if (this.corpsepocket1 != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsepocket1, M), 16);
            }

            if (Lang13.Bool(this.corpsepocket2))
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpsepocket2, M), 15);
            }

            if (this.corpseback != null)
            {
                M.equip_to_slot_or_del(Lang13.Call(this.corpseback, M), 1);
            }

            if (this.corpseid)
            {
                W = new Obj_Item_Weapon_Card_Id(M);

                foreach (dynamic _a in Lang13.Enumerate(Lang13.GetTypes(typeof(Job))))
                {
                    jobtype = _a;

                    J = Lang13.Call(jobtype);

                    if (J.title == this.corpseidaccess)
                    {
                        jobdatum = J;
                        break;
                    }
                }

                if (Lang13.Bool(this.corpseidicon))
                {
                    W.icon_state = this.corpseidicon;
                }

                if (Lang13.Bool(this.corpseidaccess))
                {
                    if (Lang13.Bool(jobdatum))
                    {
                        W.access = ((Job)jobdatum).get_access();
                    }
                    else
                    {
                        W.access = new ByTable();
                    }
                }

                if (Lang13.Bool(this.corpseidjob))
                {
                    W.assignment = this.corpseidjob;
                }
                W.registered_name = M.real_name;
                W.update_label();
                M.equip_to_slot_or_del(W, 7);
            }
            GlobalFuncs.qdel(this);
            return;
        }