Elin Decompiled Documentation EA 23.324 Nightly
Loading...
Searching...
No Matches
BaseCard.cs
Go to the documentation of this file.
1using System.Collections.Generic;
2using Newtonsoft.Json;
3
4public class BaseCard : EClass
5{
6 [JsonProperty(PropertyName = "X")]
7 public Dictionary<int, object> mapObj = new Dictionary<int, object>();
8
9 [JsonProperty(PropertyName = "Y")]
10 public Dictionary<int, int> mapInt = new Dictionary<int, int>();
11
12 [JsonProperty(PropertyName = "Z")]
13 public Dictionary<int, string> mapStr = new Dictionary<int, string>();
14
15 public bool GetBool(int id)
16 {
17 return GetInt(id) != 0;
18 }
19
20 public void SetBool(int id, bool enable)
21 {
22 SetInt(id, enable ? 1 : 0);
23 }
24
25 public int GetInt(int id, int? defaultInt = null)
26 {
27 return mapInt.GetValueOrDefault(id, defaultInt.GetValueOrDefault());
28 }
29
30 public void AddInt(int id, int value)
31 {
32 SetInt(id, GetInt(id) + value);
33 }
34
35 public void SetInt(int id, int value = 0)
36 {
37 if (value == 0)
38 {
39 mapInt.Remove(id);
40 }
41 else
42 {
43 mapInt[id] = value;
44 }
45 }
46
47 public string GetStr(int id, string defaultStr = null)
48 {
49 return mapStr.GetValueOrDefault(id, defaultStr);
50 }
51
52 public void SetStr(int id, string value = null)
53 {
54 if (value.IsEmpty())
55 {
56 mapStr.Remove(id);
57 }
58 else
59 {
60 mapStr[id] = value;
61 }
62 }
63
64 public T GetObj<T>(int id)
65 {
66 if (mapObj == null)
67 {
68 return default(T);
69 }
70 object valueOrDefault = mapObj.GetValueOrDefault(id);
71 if (valueOrDefault is T)
72 {
73 return (T)valueOrDefault;
74 }
75 return default(T);
76 }
77
78 public void SetObj(int id, object o)
79 {
80 if (mapObj == null)
81 {
82 mapObj = new Dictionary<int, object>();
83 }
84 if (o == null)
85 {
86 mapObj.Remove(id);
87 }
88 else
89 {
90 mapObj[id] = o;
91 }
92 }
93
94 public T SetObj<T>(int id, object o)
95 {
96 if (mapObj == null)
97 {
98 mapObj = new Dictionary<int, object>();
99 }
100 if (o == null)
101 {
102 mapObj.Remove(id);
103 return default(T);
104 }
105 mapObj[id] = o;
106 return (T)o;
107 }
108}
Dictionary< int, int > mapInt
Definition: BaseCard.cs:10
void SetStr(int id, string value=null)
Definition: BaseCard.cs:52
void SetObj(int id, object o)
Definition: BaseCard.cs:78
string GetStr(int id, string defaultStr=null)
Definition: BaseCard.cs:47
void AddInt(int id, int value)
Definition: BaseCard.cs:30
Dictionary< int, object > mapObj
Definition: BaseCard.cs:7
T GetObj< T >(int id)
Definition: BaseCard.cs:64
T SetObj< T >(int id, object o)
Definition: BaseCard.cs:94
void SetBool(int id, bool enable)
Definition: BaseCard.cs:20
int GetInt(int id, int? defaultInt=null)
Definition: BaseCard.cs:25
void SetInt(int id, int value=0)
Definition: BaseCard.cs:35
Dictionary< int, string > mapStr
Definition: BaseCard.cs:13
bool GetBool(int id)
Definition: BaseCard.cs:15
Definition: EClass.cs:6