Skip to content

Commit d7d82a3

Browse files
authored
Add files via upload
0 parents  commit d7d82a3

25 files changed

+1003
-0
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Linq;
4+
using Exiled.API.Features;
5+
6+
namespace SCP_600V.API.Players
7+
{
8+
public class Scp600PlyGet
9+
{
10+
/// <summary>
11+
/// Check Player is SCP-600v
12+
/// </summary>
13+
/// <param name="ply">Checked player</param>
14+
/// <returns>true or false</returns>
15+
public static bool IsScp600(Player ply)
16+
{
17+
return ply.SessionVariables.ContainsKey("IsSCP600");
18+
}
19+
/// <summary>
20+
/// Get can scp damage my scp's
21+
/// </summary>
22+
/// <returns>true or galse</returns>
23+
public static bool CanScpDamage()
24+
{
25+
return Sai.Instance.Config.IsScpCanDamageMe;
26+
}
27+
/// <summary>
28+
/// Get player list playing as SCP-600v
29+
/// </summary>
30+
/// <returns></returns>
31+
public static List<Player> GetScp600() => Player.List.Where(x => x.SessionVariables.ContainsKey("IsSCP600")).ToList();
32+
public static List<Player> GetSH() => Player.List.Where(x => x.SessionVariables.ContainsKey("IsSH")).ToList();
33+
public static List<Player> GetCostumSCP() => Player.List.Where(x => x.SessionVariables.ContainsKey("IsScp")).ToList();
34+
public static List<Player> GetScp035() => Player.List.Where(x => x.SessionVariables.ContainsKey("IsScp035")).ToList();
35+
public static List<Player> GetFullAt() => Player.List.Where(x => x.SessionVariables.ContainsKey("FullAt")).ToList();
36+
37+
}
38+
}

SCP-600V/Command/ChengeClass.cs

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using CommandSystem;
4+
using CommandSystem.Commands.Console;
5+
using Exiled.API.Features;
6+
using Exiled.API.Features.Items;
7+
using PluginAPI.Enums;
8+
using UnityEngine;
9+
using Item = Exiled.API.Features.Items;
10+
11+
namespace SCP_600V.Command
12+
{
13+
[CommandHandler(typeof(CommandHandler))]
14+
internal class ChengeClass : ICommand
15+
{
16+
public string Command { get; set; } = "ChangeClass";
17+
18+
public string[] Aliases { get; set; } = { "ChCls", "newclass" };
19+
20+
public string Description { get; set; } = "changes class 1 attemp per game to classd, security, mtf, scientist";
21+
22+
public bool Execute(ArraySegment<string> arguments, ICommandSender sender, out string response)
23+
{
24+
Player ply = Player.Get(sender);
25+
if (ply.SessionVariables.ContainsKey("IsSCP600") == false)
26+
{
27+
response = $"<color=\"red\">{Sai.Instance.Config.NotScp600}</color>";
28+
return false;
29+
}
30+
if (ply.SessionVariables.ContainsKey("FullAt"))
31+
{
32+
response = $"{Sai.Instance.Config.AtempLimitMessage}";
33+
return false;
34+
}
35+
if (ply.SessionVariables.ContainsKey("IsSCP600"))
36+
{
37+
float healt = ply.Health;
38+
float max = ply.MaxHealth;
39+
if (arguments.Count == 0)
40+
{
41+
response = $"{Sai.Instance.Config.ClassType.Replace("{name}", "classd, security, mtf, scientist")}";
42+
return false;
43+
}
44+
if (arguments.At(0) == "classd")
45+
{
46+
List<Item.Item> items = new List<Item.Item>();
47+
Vector3 pos = ply.Position;
48+
foreach (Item.Item a in ply.Items) { items.Add(a); }
49+
ply.Role.Set(PlayerRoles.RoleTypeId.ClassD);
50+
ply.ClearInventory();
51+
ply.AddItem(items);
52+
ply.Teleport(pos);
53+
ply.SessionVariables.Add("FullAt", null);
54+
ply.MaxHealth = max;
55+
ply.Health = healt;
56+
response = $"{Sai.Instance.Config.CompleteTransform}";
57+
return true;
58+
}
59+
if (arguments.At(0) == "security")
60+
{
61+
List<Item.Item> items = new List<Item.Item>();
62+
Vector3 pos = ply.Position;
63+
foreach (Item.Item a in ply.Items) { items.Add(a); }
64+
ply.Role.Set(PlayerRoles.RoleTypeId.FacilityGuard);
65+
ply.ClearInventory();
66+
ply.AddItem(items);
67+
ply.Teleport(pos);
68+
ply.SessionVariables.Add("FullAt", null);
69+
ply.MaxHealth = max;
70+
ply.Health = healt;
71+
response = $"{Sai.Instance.Config.CompleteTransform}";
72+
return true;
73+
}
74+
if (arguments.At(0) == "mtf")
75+
{
76+
List<Item.Item> items = new List<Item.Item>();
77+
Vector3 pos = ply.Position;
78+
foreach (Item.Item a in ply.Items) { items.Add(a); }
79+
ply.Role.Set(PlayerRoles.RoleTypeId.NtfSergeant);
80+
ply.ClearInventory();
81+
ply.AddItem(items);
82+
ply.Teleport(pos);
83+
ply.SessionVariables.Add("FullAt", null);
84+
ply.MaxHealth = max;
85+
ply.Health = healt;
86+
response = $"{Sai.Instance.Config.CompleteTransform}";
87+
return true;
88+
}
89+
if (arguments.At(0) == "scientist")
90+
{
91+
List<Item.Item> items = new List<Item.Item>();
92+
Vector3 pos = ply.Position;
93+
foreach (Item.Item a in ply.Items) { items.Add(a); }
94+
ply.Role.Set(PlayerRoles.RoleTypeId.Scientist);
95+
ply.ClearInventory();
96+
ply.AddItem(items);
97+
ply.Teleport(pos);
98+
ply.SessionVariables.Add("FullAt", null);
99+
ply.MaxHealth = max;
100+
ply.Health = healt;
101+
response = $"{Sai.Instance.Config.CompleteTransform}";
102+
return true;
103+
}
104+
}
105+
response = "?";
106+
return false;
107+
}
108+
}
109+
}
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
using System;
2+
using Exiled.API.Features;
3+
using CommandSystem;
4+
using Exiled.Permissions.Extensions;
5+
6+
namespace SCP_600V.Command
7+
{
8+
[CommandHandler(typeof(RemoteAdminCommandHandler))]
9+
internal class GetPlayerAsScp600 : ICommand
10+
{
11+
public string Command { get; set; } = "ListScp600Player";
12+
13+
public string[] Aliases { get; set; } = { "LSP6", "li6" };
14+
15+
public string Description { get; set; } = "Get player list playing as scp-600v now";
16+
17+
public bool Execute(ArraySegment<string> arguments, ICommandSender sender, out string response)
18+
{
19+
Player player = Player.Get(sender);
20+
if (player != null)
21+
{
22+
if (player.CheckPermission("s6.GetPlayers"))
23+
{
24+
string a = "";
25+
foreach (Player ply in Player.List)
26+
{
27+
if (ply.SessionVariables.ContainsKey("IsSCP600"))
28+
{
29+
a += ply.Nickname + "; ";
30+
}
31+
}
32+
response = $"{Sai.Instance.Config.ListGetted.Replace("{name}", a)}";
33+
return true;
34+
}
35+
else
36+
{
37+
response = Sai.Instance.Config.PermissionDenied;
38+
return false;
39+
}
40+
}
41+
response = "? i have not get info";
42+
return false;
43+
}
44+
}
45+
}
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
using System;
2+
using Exiled.API.Features;
3+
using CommandSystem;
4+
using Exiled.Permissions.Extensions;
5+
6+
namespace SCP_600V.Command
7+
{
8+
internal class GetSessionVariables
9+
{
10+
[CommandHandler(typeof(RemoteAdminCommandHandler))]
11+
internal class Spawn : ICommand
12+
{
13+
public string Command { get; set; } = "Vars";
14+
15+
public string[] Aliases { get; set; } = { "vars", "servervars" };
16+
17+
public string Description { get; set; } = "Get player sessions variables";
18+
19+
public bool Execute(ArraySegment<string> arguments, ICommandSender sender, out string response)
20+
{
21+
Player ply = Player.Get(arguments.At(0));
22+
if (sender.CheckPermission("s6.debug"))
23+
{
24+
if (ply == null)
25+
{
26+
response = Sai.Instance.Config.PlayerNF;
27+
return false;
28+
}
29+
30+
string asd = "";
31+
foreach (string arga in ply.SessionVariables.Keys)
32+
{
33+
asd += arga + " ";
34+
}
35+
response = asd;
36+
return true;
37+
38+
}
39+
else
40+
{
41+
response = Sai.Instance.Config.PermissionDenied;
42+
return false;
43+
}
44+
}
45+
}
46+
}
47+
}

SCP-600V/Command/MaxHealth.cs

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
using System;
2+
using Exiled.API.Features;
3+
using CommandSystem;
4+
using Exiled.Permissions.Extensions;
5+
using FMOD;
6+
7+
namespace SCP_600V.Command
8+
{
9+
[CommandHandler(typeof(RemoteAdminCommandHandler))]
10+
internal class MaxHealth : ICommand
11+
{
12+
public string Command { get; set; } = "MHP";
13+
14+
public string[] Aliases { get; set; } = { "mhp", "s6mhp" };
15+
16+
public string Description { get; set; } = "Chenge your maxhealt values";
17+
18+
public bool Execute(ArraySegment<string> arguments, ICommandSender sender, out string response)
19+
{
20+
Player ply = Player.Get(sender);
21+
if (ply != null)
22+
{
23+
if (ply.CheckPermission("s6.ChengeMHP"))
24+
{
25+
if (ply.SessionVariables.ContainsKey("IsSCP600"))
26+
{
27+
if (arguments.Count == 0)
28+
{
29+
response = Sai.Instance.Config.MhpHealArgEr;
30+
return false;
31+
}
32+
else
33+
{
34+
try
35+
{
36+
int num = int.Parse(arguments.At(0));
37+
ply.MaxHealth = num;
38+
ply.Health = num;
39+
response = $"{Sai.Instance.Config.MhpChenged.Replace("{amount}", num.ToString())}";
40+
return true;
41+
}
42+
catch
43+
{
44+
response = Sai.Instance.Config.MhpHealArgEr;
45+
return false;
46+
}
47+
}
48+
}
49+
else
50+
{
51+
response = Sai.Instance.Config.NotScp600;
52+
}
53+
}
54+
else
55+
{
56+
response = Sai.Instance.Config.PermissionDenied;
57+
return false;
58+
}
59+
}
60+
response = "?";
61+
return false;
62+
}
63+
}
64+
}

SCP-600V/Command/Spawn.cs

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
using System;
2+
using Exiled.API.Features;
3+
using CommandSystem;
4+
using Exiled.Permissions.Extensions;
5+
using FMOD;
6+
7+
namespace SCP_600V.Command
8+
{
9+
[CommandHandler(typeof(RemoteAdminCommandHandler))]
10+
internal class Spawn : ICommand
11+
{
12+
public string Command { get; set; } = "SpawnScp600";
13+
14+
public string[] Aliases { get; set; } = { "S600", "sp6" };
15+
16+
public string Description { get; set; } = "Spawn your as scp-600v";
17+
18+
public bool Execute(ArraySegment<string> arguments, ICommandSender sender, out string response)
19+
{
20+
Player writer = Player.Get(sender);
21+
if (writer != null)
22+
{
23+
if (writer.CheckPermission("s6.SelfSpawn"))
24+
{
25+
if (writer.Role.Type != PlayerRoles.RoleTypeId.Spectator)
26+
{
27+
new Extension.Scp600(writer);
28+
response = Sai.Instance.Config.SpawnMessage;
29+
return true;
30+
}
31+
if (writer.Role.Type == PlayerRoles.RoleTypeId.Spectator)
32+
{
33+
response = Sai.Instance.Config.SpawnCommandEr;
34+
return false;
35+
}
36+
}
37+
else
38+
{
39+
response = Sai.Instance.Config.PermissionDenied;
40+
return false;
41+
}
42+
}
43+
response = "Idk";
44+
return false;
45+
}
46+
}
47+
}

0 commit comments

Comments
 (0)