Exemplo n.º 1
1
 // Some functions below - Might move to seperate file? (functions.cs)
 public void KickPlayer(Entity player)
 {
     player.AfterDelay(100, entity =>
     {
         Call("kick", player.Call<int>("getentitynumber"));
     });
 }
Exemplo n.º 2
0
        public override void OnPlayerKilled(Entity player, Entity inflictor, Entity attacker, int damage, string mod, string weapon, Vector3 dir, string hitLoc)
        {
            // update the own score
            if (attacker.HasField("bohud_created"))
            {
                attacker.AfterDelay(10, entity =>
                {
                    var scoreText = entity.GetField<HudElem[]>("bohud_messageText")[1];
                    scoreText.SetText(entity.GetField<int>("score").ToString());
                });
            }

            // update all players' ranking
            UpdateScores();
        }
Exemplo n.º 3
0
 public void OnPlayerSpawend(Entity player)
 {
     player.AfterDelay(0, delegate (Entity ent)
     {
         if ((((player != null) && player.IsPlayer) && player.IsAlive) && (player.GetField<string>("sessionteam") != "allies"))
         {
             foreach (string str in this.fixWeapons)
             {
                 if (player.CurrentWeapon.Contains(str) && (player.CurrentWeapon.Contains("tactical") || player.CurrentWeapon == "iw5_usp45_mp"))
                 {
                     player.Call("setweaponammoclip", new Parameter[] { player.CurrentWeapon, 0 });
                     player.Call("setweaponammostock", new Parameter[] { player.CurrentWeapon, 0 });
                     break;
                 }
             }
         }
     });
 }
Exemplo n.º 4
0
 private void usedDoor(Entity door, Entity player)
 {
     if (!player.IsAlive) return;
     // has repair weapon. do repair door
     if (player.CurrentWeapon.Equals("defaultweapon_mp"))
     {
         repairDoor(door, player);
         return;
     }
     if (door.GetField<int>("hp") > 0)
     {
         if (Unitily.GetPlayerTeam(player) == "allies")
         {
             if (door.GetField<string>("state") == "open")
             {
                 door.Call(33399, new Parameter(door.GetField<Vector3>("close")), 1); // moveto
                 AfterDelay(300, () =>
                 {
                     door.SetField("state", "close");
                 });
             }
             else if (door.GetField<string>("state") == "close")
             {
                 door.Call(33399, new Parameter(door.GetField<Vector3>("open")), 1); // moveto
                 AfterDelay(300, () =>
                 {
                     door.SetField("state", "open");
                 });
             }
         }
         else
         {
             if (door.GetField<string>("state") == "close")
             {
                 if (player.GetField<int>("attackeddoor") == 0)
                 {
                     int hitchance = 0;
                     switch (player.Call<string>("getstance"))
                     {
                         case "prone":
                             hitchance = 20;
                             break;
                         case "couch":
                             hitchance = 45;
                             break;
                         case "stand":
                             hitchance = 90;
                             break;
                         default:
                             break;
                     }
                     if (_rng.Next(100) < hitchance)
                     {
                         door.SetField("hp", door.GetField<int>("hp") - 1);
                         player.Call("iprintlnbold", "HIT: " + door.GetField<int>("hp") + "/" + door.GetField<int>("maxhp"));
                     }
                     else
                     {
                         player.Call("iprintlnbold", "^1MISS");
                     }
                     player.SetField("attackeddoor", 1);
                     player.AfterDelay(1000, (e) => player.SetField("attackeddoor", 0));
                 }
             }
         }
     }
     else if (door.GetField<int>("hp") == 0 && door.GetField<string>("state") != "broken")
     {
         if (door.GetField<string>("state") == "close")
             door.Call(33399, new Parameter(door.GetField<Vector3>("open")), 1f); // moveto
         door.SetField("state", "broken");
     }
 }
Exemplo n.º 5
0
 public void usedZipline(Entity box, Entity player)
 {
     Action<Entity> function = null;
     if (player.IsAlive && box.GetField<string>("state") != "using")
     {
         Vector3 startorigin = box.Origin;
         box.SetField("state", "using");
         box.Call("clonebrushmodeltoscriptmodel", new Parameter[] { Call<Entity>("spawn", "script_origin", new Vector3()) });
         player.Call("playerlinkto", new Parameter[] { box });
         box.Call("moveto", new Parameter[] { box.GetField<Vector3>("endorigin"), 5 });
         box.AfterDelay(5000, delegate (Entity ent)
         {
             if (player.Call<int>("islinked", new Parameter[0]) != 0)
             {
                 player.Call("unlink", new Parameter[0]);
                 player.Call("setorigin", new Parameter[] { box.GetField<Vector3>("endorigin") });
             }
             box.Call("moveto", new Parameter[] { startorigin, 1 });
         });
         if (function == null)
         {
             function = delegate (Entity ent)
             {
                 box.Call("clonebrushmodeltoscriptmodel", new Parameter[] { _airdropCollision });
                 box.SetField("state", "idle");
             };
         }
         box.AfterDelay(6100, function);
     }
 }
Exemplo n.º 6
0
 public void usedZipline(Entity box, Entity player)
 {
     if (!player.IsAlive)
         return;
     /*if (this.Call<int>("getdvarint", new Parameter[1]
       {
     (Parameter) "power"
       }) != 1 || box.GetField<string>("state") == "using")
         return;*/
     Vector3 startorigin = box.Origin;
     box.SetField("state", (Parameter)"using");
     box.Call("clonebrushmodeltoscriptmodel", new Parameter[1]
       {
     (Parameter) this._nullCollision
       });
     player.Call("playerlinkto", new Parameter[1]
       {
     (Parameter) box
       });
     box.Call("moveto", (Parameter)box.GetField<Vector3>("endorigin"), (Parameter)5);
     box.AfterDelay(5000, (Action<Entity>)(ent =>
     {
         if (player.Call<int>("islinked") != 0)
         {
             player.Call("unlink");
             player.Call("setorigin", new Parameter[1]
       {
     (Parameter) box.GetField<Vector3>("endorigin")
       });
         }
         box.Call("moveto", (Parameter)startorigin, (Parameter)1);
     }));
     box.AfterDelay(6100, (Action<Entity>)(ent =>
     {
         box.Call("clonebrushmodeltoscriptmodel", new Parameter[1]
     {
       (Parameter) this._airdropCollision
     });
         box.SetField("state", (Parameter)"idle");
     }));
 }
Exemplo n.º 7
0
        public void HandleUseables(Entity player)
        {
            foreach (Entity ent in usables)
            {
                if (player.Origin.DistanceTo(ent.Origin) < ent.GetField<int>("range"))
                {
                    string team = player.GetField<string>("sessionteam");

                    switch (ent.GetField<string>("usabletype"))
                    {
                        case "door":
                            usedDoor(ent, player);
                            break;
                        case "zipline":
                            this.usedZipline(ent, player);
                            break;
                        case "ammobag":
                            if (team == "allies")
                            {
                                this.usedAmmo(ent, player);
                            }
                            break;
                        case "turret":
                            if (team == "axis")
                            {
                                player.AfterDelay(100, entity =>
                                {
                                    player.Call("iprintlnbold", "^1 just for humans.");
                                    player.Call("suicide");
                                });
                            }
                            continue;
                        default:
                            break;
                    }
                }
            }
        }
Exemplo n.º 8
0
 public void DoRandom(Entity player)
 {
     int? roll = new Random().Next(NumOfRolls);
     var rollname = "";
     switch (roll)
     {
         case 0:
             rollname = "None";
             break;
         case 1:
             rollname = "^2One Ammo XM25";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("xm25_mp");
             player.Call("setweaponammoclip", "xm25_mp", 1);
             player.Call("setweaponammostock", "xm25_mp", 0);
             AfterDelay(300, () => player.SwitchToWeaponImmediate("xm25_mp"));
             break;
         case 2:
             rollname = "^2Extra Speed";
             OnInterval(100, () => Speed(player, 1.5));
             break;
         case 3:
             rollname = "^1You are a one hit kill";
             player.SetField("maxhealth", 1);
             player.Health = 1;
             break;
         case 4:
             rollname = "^2Juggernaut";
             player.SetField("maxhealth", player.Health * 3);
             player.Health = player.Health * 3;
             player.Call("setmodel", "mp_fullbody_opforce_juggernaut");
             player.Call("setviewmodel", "viewhands_juggernaut_opforce");
             break;
         case 5:
             rollname = "^2Juggernaut";
             player.SetField("maxhealth", player.Health * 3);
             player.Health = player.Health * 3;
             player.Call("setmodel", "mp_fullbody_opforce_juggernaut");
             player.Call("setviewmodel", "viewhands_juggernaut_opforce");
             break;
         case 6:
             rollname = "^1You are a one hit kill";
             player.SetField("maxhealth", 1);
             player.Health = 1;
             break;
         case 7:
             rollname = "^2SMAW";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("iw5_smaw_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("iw5_smaw_mp"));
             break;
         case 8:
             rollname = "^1Stinger";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("stinger_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("stinger_mp"));
             break;
         case 9:
             rollname = "^2Extra Speed";
             OnInterval(100, () => Speed(player, 1.5));
             break;
         case 10:
             rollname = "^2Extra Speed";
             OnInterval(100, () => Speed(player, 1.5));
             break;
         case 11:
             rollname = "^2Juggernaut";
             player.SetField("maxhealth", player.Health * 3);
             player.Health = player.Health * 3;
             player.Call("setmodel", "mp_fullbody_opforce_juggernaut");
             player.Call("setviewmodel", "viewhands_juggernaut_opforce");
             break;
         case 12:
             rollname = "^2AA12";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("iw5_aa12_mp_xmags_camo11");
             player.Call("setweaponammostock", "iw5_aa12_mp_xmags_camo11", 0);
             AfterDelay(300, () => player.SwitchToWeaponImmediate("iw5_aa12_mp_xmags_camo11"));
             break;
         case 13:
             rollname = "^2Juggernaut";
             player.SetField("maxhealth", player.Health * 3);
             player.Health = player.Health * 3;
             player.Call("setmodel", "mp_fullbody_opforce_juggernaut");
             player.Call("setviewmodel", "viewhands_juggernaut_opforce");
             break;
         case 14:
             rollname = "^1You are a one hit kill";
             player.SetField("maxhealth", 1);
             player.Health = 1;
             break;
         case 15:
             rollname = "^1Turtle";
             OnInterval(100, () => Speed(player, 0.4f));
             break;
         case 16:
             rollname = "^1Turtle";
             OnInterval(100, () => Speed(player, 0.4f));
             break;
         case 17:
             rollname = "^2Javelin";
             player.GiveWeapon("javelin_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("javelin_mp"));
             break;
         case 18:
             rollname = "^2Flash Bang";
             player.GiveWeapon("flash_grenade_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("flash_grenade_mp"));
             break;
         case 19:
             rollname = "^1You are a one hit kill";
             player.SetField("maxhealth", 1);
             player.Health = 1;
             break;
         case 20:
             rollname = "^2One Ammo RSASS";
             string weapon = Utilities.BuildWeaponName("iw5_rsass", "none", "none", 0, 0);
             player.GiveWeapon(weapon);
             player.Call("setweaponammoclip", weapon, 1);
             player.Call("setweaponammostock", weapon, 0);
             AfterDelay(300, () => player.SwitchToWeaponImmediate(weapon));
             break;
         case 21:
             rollname = "^2Juggernaut";
             player.SetField("maxhealth", player.Health * 3);
             player.Health = player.Health * 3;
             player.Call("setmodel", "mp_fullbody_opforce_juggernaut");
             player.Call("setviewmodel", "viewhands_juggernaut_opforce");
             break;
         case 22:
             rollname = "^2SMAW";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("iw5_smaw_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("iw5_smaw_mp"));
             break;
         case 23:
             rollname = "^1Can't Jump";
             player.Call("allowjump", false);
             break;
         case 24:
             rollname = "^3Riotshield Juggernaut";
             player.SetField("maxhealth", player.Health * 3);
             player.Health = player.Health * 3;
             player.Call("setmodel", "mp_fullbody_opforce_juggernaut");
             player.Call("setviewmodel", "viewhands_juggernaut_opforce");
             player.SetPerk("specialty_fastermelee", true, true);
             player.SetPerk("specialty_lightweight", true, true);
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("riotshield_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("riotshield_mp"));
             player.AfterDelay(150,
                               entity =>
                               player.Call("attachshieldmodel", "weapon_riot_shield_mp", "tag_shield_back"));
             break;
         case 25:
             rollname = "^2Riotshield";
             player.SetPerk("specialty_fastermelee", true, true);
             player.SetPerk("specialty_lightweight", true, true);
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("riotshield_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("riotshield_mp"));
             player.AfterDelay(150,
                               entity =>
                               player.Call("attachshieldmodel", "weapon_riot_shield_mp", "tag_shield_back"));
             break;
         case 26:
             rollname = "^2C4";
             player.GiveWeapon("c4_mp");
             player.Call("givemaxammo", "c4_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("c4_mp"));
             break;
         case 27:
             rollname = "^2Juggernaut";
             player.SetField("maxhealth", player.Health * 3);
             player.Health = player.Health * 3;
             player.Call("setmodel", "mp_fullbody_opforce_juggernaut");
             player.Call("setviewmodel", "viewhands_juggernaut_opforce");
             break;
         case 28:
             rollname = "^2Riotshield";
             player.SetPerk("specialty_fastermelee", true, true);
             player.SetPerk("specialty_lightweight", true, true);
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("riotshield_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("riotshield_mp"));
             player.AfterDelay(150,
                               entity =>
                               player.Call("attachshieldmodel", "weapon_riot_shield_mp", "tag_shield_back"));
             break;
         case 29:
             rollname = "^3Riotshield Juggernaut";
             player.SetField("maxhealth", player.Health * 3);
             player.Health = player.Health * 3;
             player.Call("setmodel", "mp_fullbody_opforce_juggernaut");
             player.Call("setviewmodel", "viewhands_juggernaut_opforce");
             player.SetPerk("specialty_fastermelee", true, true);
             player.SetPerk("specialty_lightweight", true, true);
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("riotshield_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("riotshield_mp"));
             player.AfterDelay(150,
                               entity =>
                               player.Call("attachshieldmodel", "weapon_riot_shield_mp", "tag_shield_back"));
             break;
         case 30:
             rollname = "^2USP45 Akimbo";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("iw5_usp45_mp_akimbo");
             player.Call("setweaponammostock", "iw5_usp45_mp_akimbo", 0);
             AfterDelay(300, () => player.SwitchToWeaponImmediate("iw5_usp45_mp_akimbo"));
             break;
         case 31:
             rollname = "None";
             break;
         case 32:
             rollname = "^1Stinger";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("stinger_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("stinger_mp"));
             break;
         case 33:
             rollname = "^2Smoke";
             player.GiveWeapon("smoke_grenade_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("smoke_grenade_mp"));
             break;
         case 34:
             rollname = "None";
             break;
         case 35:
             rollname = "None";
             break;
         case 36:
             rollname = "^2Riotshield";
             player.SetPerk("specialty_fastermelee", true, true);
             player.SetPerk("specialty_lightweight", true, true);
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("riotshield_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("riotshield_mp"));
             player.AfterDelay(150,
                               entity =>
                               player.Call("attachshieldmodel", "weapon_riot_shield_mp", "tag_shield_back"));
             break;
         case 37:
             rollname = "None";
             break;
         case 38:
             rollname = "^2Desert Eagle";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("iw5_deserteagle_mp");
             player.Call("setweaponammostock", "iw5_deserteagle_mp", 0);
             AfterDelay(300, () => player.SwitchToWeaponImmediate("iw5_deserteagle_mp"));
             break;
         case 39:
             rollname = "^2Riotshield";
             player.SetPerk("specialty_fastermelee", true, true);
             player.SetPerk("specialty_lightweight", true, true);
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("riotshield_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("riotshield_mp"));
             player.AfterDelay(150,
                               entity =>
                               player.Call("attachshieldmodel", "weapon_riot_shield_mp", "tag_shield_back"));
             break;
         case 40:
             rollname = "^2Concussion Grenade";
             player.GiveWeapon("concussion_grenade_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("concussion_grenade_mp"));
             break;
         case 41:
             rollname = "^2Throwing Knife";
             player.GiveWeapon("throwingknife_mp");
             player.SwitchToWeaponImmediate("throwingknife_mp");
             break;
         case 42:
             rollname = "^2EMP Grenade";
             player.GiveWeapon("emp_grenade_mp");
             AfterDelay(300, () => player.SwitchToWeaponImmediate("emp_grenade_mp"));
             break;
         case 43:
             rollname = "None";
             break;
         case 44:
             rollname = "None";
             break;
         case 45:
             rollname = "^1You Die After 3 Second";
             player.SetField("rtd_canroll", 1);
             AfterDelay(3000, () => player.Call("suicide"));
             break;
         case 46:
             rollname = "None";
             break;
         case 47:
             rollname = "^3Godmode for 3 second";
             player.Health = -1;
             AfterDelay(3000, () => player.Health = player.GetField<int>("maxhealth"));
             break;
         case 48:
             rollname = "^2M320";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("m320_mp");
             player.Call("setweaponammoclip", "m320_mp", 1);
             player.Call("setweaponammostock", "m320_mp", 0);
             AfterDelay(300, () => player.SwitchToWeaponImmediate("m320_mp"));
             break;
         case 49:
             rollname = "^2One Ammo MK14";
             string weapon2 = "iw5_mk14_mp";
             player.GiveWeapon(weapon2);
             player.Call("setweaponammoclip", weapon2, 1);
             player.Call("setweaponammostock", weapon2, 0);
             AfterDelay(300, () => player.SwitchToWeaponImmediate(weapon2));
             break;
         case 50:
             rollname = "^2One Ammo SVD";
             string weapon3 = Utilities.BuildWeaponName("iw5_dragunov", "none", "none", 0, 0);
             player.GiveWeapon(weapon3);
             player.Call("setweaponammoclip", weapon3, 1);
             player.Call("setweaponammostock", weapon3, 0);
             AfterDelay(300, () => player.SwitchToWeaponImmediate(weapon3));
             break;
         case 51:
             rollname = "^2Unlimited Grenades";
             OnInterval(100, () => Nades(player, 99));
             break;
         case 52:
             rollname = "^2RPG";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("rpg_mp");
             player.Call("setweaponammoclip", "rpg_mp", 1);
             player.Call("setweaponammostock", "rpg_mp", 1);
             AfterDelay(300, () => player.SwitchToWeaponImmediate("rpg_mp"));
             break;
         case 53:
             rollname = "^2Unlimited Grenades";
             OnInterval(100, () => Nades(player, 99));
             break;
         case 54:
             rollname = "^3Extra Speed and AA12";
             player.TakeWeapon(player.CurrentWeapon);
             player.GiveWeapon("iw5_aa12_mp_xmags_camo11");
             player.Call("setweaponammostock", "iw5_aa12_mp_xmags_camo11", 0);
             AfterDelay(300, () => player.SwitchToWeaponImmediate("iw5_aa12_mp_xmags_camo11"));
             OnInterval(100, () => Speed(player, 1.5));
             break;
         case 55:
             rollname = "^2Unlimited Grenades";
             OnInterval(100, () => Nades(player, 99));
             break;
         case 56:
             rollname = "^1Zombie Incantation";
             player.SetField("zombie_incantation", 1);
             break;
         case 57:
             rollname = "None";
             break;
         case 58:
             rollname = "^1Zombie Incantation";
             player.SetField("zombie_incantation", 1);
             break;
         case 59:
             rollname = "^1Zombie Incantation";
             player.SetField("zombie_incantation", 1);
             break;
     }
     PrintRollNames(player, rollname, 0, roll);
 }
Exemplo n.º 9
0
        public static string upgradeWeapon(Entity player)
        {
            string weapon = player.CurrentWeapon;
            string basenewweapon = "";
            string basename = WeaponUtils.weapon_getBasename(weapon);
            int camo = player.GetField<int>("camo");
            int reticle = player.GetField<int>("reticle");

            if (weapon.StartsWith("iw5_pp90m1"))
            {
                player.Call("iprintlnbold", "^3IS SMG");
                player.TakeWeapon(weapon);
                basenewweapon = WeaponUtils.getRandomAR(camo, reticle);
            }

            if (Array.IndexOf(WeaponUtils._smgList, basename) > 0)
            {
                player.TakeWeapon(weapon);
                player.Call("iprintlnbold", "^3IS SMG");
                basenewweapon = WeaponUtils.getRandomAR(camo, reticle);
            }

            else if (Array.IndexOf(WeaponUtils._arList, basename) > 0)
            {
                player.TakeWeapon(weapon);
                basenewweapon = WeaponUtils.getRandomLMG(camo, reticle);
            }
            else if (Array.IndexOf(WeaponUtils._pistolList, basename) > 0)
            {
                player.TakeWeapon(weapon);
                basenewweapon = WeaponUtils.getRandomAutoPistol(camo, reticle);
            }
            else
            {
                return "You cannot upgrade this weapon!";
            }

            string[] newattach = WeaponUtils.weapon_getAttachments(weapon);
            string newweapon = WeaponUtils.weapon_getWeaponName(basenewweapon, newattach, player.GetField<int>("camo"), player.GetField<int>("reticle"));
            player.GiveWeapon(newweapon);

            player.AfterDelay(100, entity =>
            {
                player.SwitchToWeaponImmediate(newweapon);
                player.Call("iprintlnbold", "Upgraded Weapon!");
            });

            return "";
        }
Exemplo n.º 10
0
 public void DoRandom(Entity player, int? desiredNumber)
 {
     int? roll = new Random().Next(NumOfRolls);
     if (desiredNumber != null)
         roll = desiredNumber;
     var rollname = "";
     switch (roll)
     {
         case 0:
             rollname = "^2Extra Speed";
             OnInterval(100, () => Speed(player, 1.5));
             break;
         case 1:
             rollname = "^2Unlimited XM25";
             OnInterval(100, () => Stock(player, 99));
             OnInterval(100, () => Weapon(player, "xm25_mp", "", null));
             break;
         case 2:
             rollname = "^2No Recoil";
             OnInterval(100, () => Recoil(player, 0f));
             break;
         case 3:
             rollname = "^1You are a one hit kill";
             player.SetField("maxhealth", 1);
             player.Health = 1;
             break;
         case 4:
             rollname = "^1No ADS";
             player.Call("allowads", false);
             break;
         case 5:
             rollname = "^2Triple HP";
             player.SetField("maxhealth", player.Health*3);
             player.Health = player.Health*3;
             break;
         case 6:
             rollname = "^2All Perks";
             player.SetPerk("specialty_longersprint", true, false);
             player.SetPerk("specialty_fastreload", true, false);
             player.SetPerk("specialty_scavenger", true, false);
             player.SetPerk("specialty_blindeye", true, false);
             player.SetPerk("specialty_paint", true, false);
             player.SetPerk("specialty_hardline", true, false);
             player.SetPerk("specialty_coldblooded", true, false);
             player.SetPerk("specialty_quickdraw", true, false);
             player.SetPerk("specialty_twoprimaries", true, false);
             player.SetPerk("specialty_assists", true, false);
             player.SetPerk("_specialty_blastshield", true, false);
             player.SetPerk("specialty_detectexplosive", true, false);
             player.SetPerk("specialty_autospot", true, false);
             player.SetPerk("specialty_bulletaccuracy", true, false);
             player.SetPerk("specialty_quieter", true, false);
             player.SetPerk("specialty_stalker", true, false);
             break;
         case 7:
             rollname = "^2Unlimited Grenades";
             OnInterval(100, () => Nades(player, 99));
             break;
         case 8:
             rollname = "^2Go Get 'em Makarov";
             OnInterval(100, () => Weapon(player, "iw5_mg36_mp_grip_xmags", "", null));
             OnInterval(100, () => Stock(player, 999));
             break;
         case 9:
             rollname = "^1Darkness";
             OnInterval(100, () => Vision(player, "cheat_chaplinnight", false));
             break;
         case 10:
             rollname = "^2Thermal Vision";
             OnInterval(100, () => Vision(player, "ac130_thermal_mp", true));
             break;
         case 11:
             rollname = "^2Barrett Roll";
             OnInterval(100, () => Recoil(player, 0f));
             OnInterval(100, () => Stock(player, 99));
             OnInterval(100, () => Weapon(player, "iw5_barrett_mp_xmags", "", null));
             break;
         case 12:
             rollname = "^1Negative";
             OnInterval(100, () => Vision(player, "cheat_invert_contrast", false));
             break;
         case 13:
             rollname = "^2Knife Runner";
             player.Call(33395);
             player.SetPerk("specialty_longersprint", true, true);
             player.SetPerk("specialty_lightweight", true, true);
             player.SetPerk("specialty_fastermelee", true, true);
             OnInterval(100, () => Weapon(player, "iw5_44magnum_mp_tactical", "", null));
             OnInterval(100, () => Speed(player, 1.2f));
             OnInterval(100, () => Ammo(player, 0));
             OnInterval(100, () => Stock(player, 0));
             break;
         case 14:
             rollname = "^1Turtle";
             OnInterval(100, () => Speed(player, 0.4f));
             break;
         case 15:
             rollname = "^1Supermodel 1887";
             player.Call(33395);
             player.SetPerk("specialty_bulletaccuracy", true, true);
             OnInterval(100, () => Weapon(player, "iw5_1887_mp", "", null));
             break;
         case 16:
             rollname = "^1Fallout";
             OnInterval(100, () => Vision(player, "mpnuke", false));
             break;
         case 17:
             rollname = "^2Unlimited Ammo";
             OnInterval(100, () => Ammo(player, 99));
             OnInterval(100, () => Stock(player, 99));
             break;
         case 18:
             rollname = "^2Wallhack for 40 seconds";
             player.Call("thermalvisionfofoverlayon");
             player.AfterDelay(40000, entity =>
                                           {
                                              player.Call("thermalvisionfofoverlayoff");
                                              player.Call("iprintlnbold", "Wallhack Off");
                                          });
             break;
         case 19:
             rollname = "^2Double HP and roll again!";
             player.SetField("maxhealth", player.Health*2);
             player.Health = player.Health*2;
             player.AfterDelay(2000, entity => DoRandom(player, null));
             break;
         case 20:
             rollname = "^2Godmode for 15 seconds";
             player.Health = -1;
             player.AfterDelay(15000, entity =>
                                          {
                                              player.Call("iprintlnbold", "Godmode Off");
                                              player.Health = player.GetField<int>("maxhealth");
                                              player.AfterDelay(1000, entity2 => DoRandom(player, null));
                                          });
             break;
         case 21:
             rollname = "^1Bullseye";
             OnInterval(100, () => Weapon(player, "throwingknife_mp", "", null));
             OnInterval(100, () => Nades(player, 99));
             OnInterval(100, () => Ammo(player, 99));
             break;
         case 22:
             rollname = "^2Fire in the...";
             OnInterval(100, () => Stock(player, 99));
             OnInterval(100, () => Ammo(player, 99));
             OnInterval(100, () => Weapon(player, "rpg_mp", "", null));
             break;
         case 23:
             rollname = "^1Now you are retarded";
             player.Call("allowads", false);
             player.Call("allowsprint", false);
             player.Call("allowjump", false);
             break;
         case 24:
             rollname = "AZUMOOB's Sub Setup";
             player.TakeAllWeapons();
             player.Call(33395);
             player.SetPerk("specialty_fastermelee", true, true);
             player.SetPerk("specialty_bulletaccuracy", true, true);
             player.SetPerk("specialty_bulletdamage", true, true);
             player.GiveWeapon("iw5_ump45_mp_silencer_xmags");
             player.GiveWeapon("iw5_aa12_mp_xmags_grip_akimbo");
             player.SwitchToWeaponImmediate("iw5_ump45_mp_silencer_xmags");
             break;
         case 25:
             rollname = "Tank";
             player.SetPerk("specialty_fastermelee", true, true);
             player.SetPerk("specialty_lightweight", true, true);
             player.TakeAllWeapons();
             player.GiveWeapon("riotshield_mp");
             player.SwitchToWeaponImmediate("riotshield_mp");
             player.Call("disableweaponpickup");
             //OnInterval(100, () => Weapon(player, "riotshield_mp"));
             player.AfterDelay(150,
                               entity =>
                               player.Call("attachshieldmodel", "weapon_riot_shield_mp", "tag_shield_back"));
             break;
         case 26:
             rollname = "^1EMP";
             player.Call("setempjammed", true);
             break;
         case 27:
             rollname = "Morpheus";
             player.Call(33395);
             player.SetPerk("specialty_longersprint", true, true);
             player.SetPerk("specialty_lightweight", true, true);
             player.SetPerk("specialty_quieter", true, true);
             OnInterval(100, () => Weapon(player, "iw5_mp5_mp_rof"));
             player.AfterDelay(150, entity => player.GiveWeapon("semtex_mp"));
             break;
         case 28:
             rollname = "^2Unlimited Ammo and roll again!";
             OnInterval(100, () => Nades(player, 99));
             OnInterval(100, () => Ammo(player, 99));
             player.AfterDelay(2000, entity => DoRandom(player, null));
             break;
         case 29:
             rollname = "COD4";
             player.SetPerk("specialty_bulletdamage", true, true);
             player.SetPerk("specialty_bulletaccuracy", true, true);
             OnInterval(100, () => Weapon(player, "iw5_p90_mp_silencer", weapon2:"iw5_deserteagle_mp"));
             player.AfterDelay(150, entity => player.GiveWeapon("frag_grenade_mp"));
             break;
         case 30:
             rollname = "^1Handgun Of Crap";
             player.TakeAllWeapons();
             player.Call("disableweaponpickup");
             player.GiveWeapon("iw5_usp45_mp_akimbo");
             player.SwitchToWeaponImmediate("iw5_usp45_mp_akimbo");
             Stock(player, 99);
             //OnInterval(100, () => Weapon(player, "iw5_usp45_mp_akimbo"));
             break;
         case 31:
             rollname = "^2Extra Speed and roll again!";
             OnInterval(100, () => Speed(player, 1.5));
             player.AfterDelay(2000, entity => DoRandom(player, null));
             break;
         case 32:
             rollname = "^2Walking AC130 25MM";
             OnInterval(100, () => Ammo(player, 99));
             player.TakeAllWeapons();
             player.GiveWeapon("ac130_25mm_mp");
             player.SwitchToWeaponImmediate("ac130_25mm_mp");
             player.Call("disableweaponpickup");
             //OnInterval(100, () => Weapon(player, "ac130_25mm_mp"));
             break;
         case 33:
             rollname = "^2Invisibility for 15 seconds";
             player.Call("hide");
             player.AfterDelay(15000, entity =>
                                          {
                                              player.Call("iprintlnbold", "Invisibility Off");
                                              player.Call("show");
                                              player.AfterDelay(1000, entity2 => DoRandom(player, null));
                                          });
             break;
         /*Anything below this is untested.*/
         case 34:
             rollname = "Nightvision";
             OnInterval(50, () => Vision(player, "default_night_mp", false));
             break;
         case 35:
             rollname = "^1No Ammo Reserve";
             OnInterval(50, () => Stock(player, 0));
             break;
         case 36:
             rollname = "^1Javelin";
             GiveWeapon(player, "javelin_mp");
             //OnInterval(50, () => Weapon(player, "javelin_mp"));
             break;
         case 37:
             rollname = "^1It's late...";
             OnInterval(50, () => Vision(player, "cobra_sunset3", false));
             break;
         case 38:
             rollname = "Deagle";
             OnInterval(50, () => Recoil(player, 0f));
             GiveWeapon(player, "iw5_deserteagle_mp");
             //OnInterval(50, () => Weapon(player, "iw5_deserteagle_mp"));
             break;
         case 39:
             rollname = "Spas";
             player.SetPerk("specialty_bulletaccuracy", true, true);
             player.SetPerk("specialty_bulletdamage", true, true);
             OnInterval(50, () => Ammo(player, 99));
             GiveWeapon(player, "iw5_deserteagle_mp");
             //OnInterval(50, () => Weapon(player, "iw5_spas12_mp_fmj_grip"));
             break;
     }
     PrintRollNames(player, rollname, 0, roll);
 }
Exemplo n.º 11
0
 public void OnPlayerSpawn(Entity entity)
 {
     if (PlayerStop.Contains(entity.GetField<string>("name")))
         PlayerStop.Remove(entity.GetField<string>("name"));
     entity.TakeAllWeapons();
     entity.GiveWeapon(Settings.MainWeapon);
     entity.AfterDelay(10, entity1 =>
                               {
                                   entity.SwitchToWeapon(Settings.MainWeapon);
                                   entity.Call("givemaxammo", Settings.MainWeapon);
                               });
     if (Settings.AntiHardscope)
     {
         entity.OnInterval(50, entity1 =>
                                   {
                                       if (PlayerStop.Contains(entity.GetField<string>("name")))
                                           return false;
                                       if (!PlayerADSCount.ContainsKey(entity.GetField<string>("name")))
                                           PlayerADSCount.Add(entity.GetField<string>("name"), 0);
                                       if (entity.Call<float>("playerads") >= 1)
                                           PlayerADSCount[entity.GetField<string>("name")]++;
                                       if (PlayerADSCount[entity.GetField<string>("name")] >=
                                           Settings.MaxScopeTime/0.15)
                                       {
                                           PlayerADSCount[entity.GetField<string>("name")] = 0;
                                           entity.Call("allowads", false);
                                           OnInterval(50, () =>
                                                              {
                                                                  if (entity.Call<float>("playerads") > 0)
                                                                      return true;
                                                                  entity.Call("allowads", true);
                                                                  return false;
                                                              });
                                       }
                                       return true;
                                   });
     }
     if (Settings.ThrowingKnife)
     {
         entity.Call("SetOffhandPrimaryClass", "throwingknife");
         entity.GiveWeapon("throwingknife_mp");
         entity.Call("setweaponammoclip", "throwingknife_mp", 1);
     }
     if (Settings.RemoveAllPerks)
     {
         entity.Call(33395);
     }
     if (Settings.DefaultSniperPerks)
     {
         entity.SetPerk("specialty_bulletpenetration", true, false);
         entity.SetPerk("specialty_longersprint", true, false);
         entity.SetPerk("specialty_fastreload", true, false);
         entity.SetPerk("specialty_holdbreathwhileads", true, false);
         entity.SetPerk("specialty_lightweight", true, false);
         entity.SetPerk("specialty_moredamage", true, false);
         entity.SetPerk("specialty_quickdraw", true, false);
         entity.SetPerk("specialty_quickswap", true, false);
         entity.SetPerk("specialty_fastmantle", true, false);
     }
     if (!Settings.EnableFallDamage)
         entity.SetPerk("specialty_falldamage", true, false);
     if (Settings.UseSecondary)
     {
         entity.GiveWeapon(Settings.SecondaryWeapon);
         if (!Settings.SecondaryHasAmmo)
         {
             entity.Call("setweaponammoclip", Settings.SecondaryWeapon, 0);
             entity.Call("setweaponammostock", Settings.SecondaryWeapon, 0);
         }
     }
     //entity.SetField("maxhealth", Settings.PlayerMaxHealth);
     //entity.Health = Settings.PlayerMaxHealth;
     //entity.Notify("joined_spectators");
     //entity.SetField("usingRemote", "remote_remote");
     OnInterval(10, () =>
                        {
                            entity.Call("stoplocalsound", "breathing_hurt");
                            return true;
                        });
     OnInterval(50, () =>
                        {
                            if (entity.CurrentWeapon != Settings.MainWeapon)
                                entity.SwitchToWeapon(Settings.MainWeapon);
                            return true;
                        });
 }