1
1
namespace CustomCommands . Model ;
2
2
3
- public class Commands
3
+ public class Commands : ICloneable
4
4
{
5
5
public Guid ID { get ; set ; } = Guid . NewGuid ( ) ;
6
+ public string ? Argument { get ; set ; }
6
7
public string Title { get ; set ; } = "" ;
7
8
public string Description { get ; set ; } = "Description" ;
8
9
public string Command { get ; set ; } = "" ;
@@ -13,18 +14,44 @@ public class Commands
13
14
public List < string > ServerCommands { get ; set ; } = new ( ) ;
14
15
public List < string > ClientCommands { get ; set ; } = new ( ) ;
15
16
public List < string > ClientCommandsFromServer { get ; set ; } = new ( ) ;
16
- public Permission Permission { get ; set ; } = new ( ) ;
17
+ public Permission ? Permission { get ; set ; } = new ( ) ;
18
+
19
+ public object Clone ( )
20
+ {
21
+ return new Commands ( )
22
+ {
23
+ ID = ID ,
24
+ Argument = Argument ,
25
+ Title = Title ,
26
+ Description = Description ,
27
+ Command = Command ,
28
+ Cooldown = Cooldown ,
29
+ Message = Message ,
30
+ CenterMessage = CenterMessage ,
31
+ PrintTo = PrintTo ,
32
+ ServerCommands = new List < string > ( ServerCommands ) ,
33
+ ClientCommands = new List < string > ( ClientCommands ) ,
34
+ ClientCommandsFromServer = new List < string > ( ClientCommandsFromServer ) ,
35
+ Permission = Permission ? . Clone ( ) as Permission
36
+ } ;
37
+ }
17
38
}
18
39
public class Cooldown
19
40
{
20
41
public int CooldownTime { get ; set ; } = 0 ;
21
42
public bool IsGlobal { get ; set ; } = false ;
22
43
public string CooldownMessage { get ; set ; } = "" ;
23
44
}
24
- public class Permission
45
+ public class Permission : ICloneable
25
46
{
26
47
public bool RequiresAllPermissions { get ; set ; } = false ;
27
48
public List < string > PermissionList { get ; set ; } = new ( ) ;
49
+
50
+ public object Clone ( )
51
+ {
52
+ return MemberwiseClone ( ) ;
53
+ }
54
+
28
55
}
29
56
public class CenterElement
30
57
{
0 commit comments