Elin Decompiled Documentation EA 23.188 Stable Patch 2
Loading...
Searching...
No Matches
TraitMapBoard.cs
Go to the documentation of this file.
1using System.Collections.Generic;
2using CreativeSpore.SuperTilemapEditor;
3using UnityEngine;
4using UnityEngine.UI;
5
7{
8 public override bool IsHomeItem => true;
9
10 public override void TrySetAct(ActPlan p)
11 {
13 {
14 return;
15 }
16 p.TrySetAct("actChangeHomeIcon", delegate
17 {
18 UIContextMenu uIContextMenu4 = EClass.ui.CreateContextMenuInteraction();
19 GridLayoutGroup parent = uIContextMenu4.AddGridLayout();
20 HashSet<int> hashSet = new HashSet<int>();
21 foreach (Spatial value in EClass.game.spatials.map.Values)
22 {
23 if (value.icon > 0)
24 {
25 hashSet.Add(value.icon);
26 }
27 }
28 foreach (int item in hashSet)
29 {
30 UIButton uIButton = Util.Instantiate<UIButton>("UI/Element/Button/ButtonContainerIcon", parent);
31 int _i = item;
32 uIButton.icon.sprite = TilemapUtils.GetOrCreateTileSprite(EClass.scene.elomap.actor.tileset, item);
33 uIButton.icon.Rect().localScale = new Vector3(2f, 2f, 1f);
34 uIButton.SetOnClick(delegate
35 {
36 SE.Click();
37 EClass._zone.icon = _i;
38 EClass.ui.contextMenu.currentMenu.Hide();
40 });
41 }
42 uIContextMenu4.Show();
43 return false;
44 }, owner);
45 p.TrySetAct("actChangeBlockHeight", delegate
46 {
47 UIContextMenu uIContextMenu3 = EClass.ui.CreateContextMenuInteraction();
48 uIContextMenu3.AddSlider("adjustment", (float a) => a.ToString() ?? "", EClass._map.config.blockHeight * 10f, delegate(float b)
49 {
50 EClass._map.config.blockHeight = b * 0.1f;
51 }, 0f, 40f, isInt: true, hideOther: false);
52 uIContextMenu3.Show();
53 return false;
54 }, owner);
56 {
57 p.TrySetAct("actChangeSkyBlockHeight", delegate
58 {
59 UIContextMenu uIContextMenu2 = EClass.ui.CreateContextMenuInteraction();
60 uIContextMenu2.AddSlider("adjustment", (float a) => a.ToString() ?? "", EClass._map.config.skyBlockHeight, delegate(float b)
61 {
62 EClass._map.config.skyBlockHeight = (int)b;
63 }, 1f, 20f, isInt: true, hideOther: false);
64 uIContextMenu2.Show();
65 return false;
66 }, owner);
67 }
68 p.TrySetAct("actChangeMapBG", delegate
69 {
70 LayerList layerList2 = EClass.ui.AddLayer<LayerList>().SetSize(400f);
71 List<MapBG> list2 = Util.EnumToList<MapBG>();
72 for (int j = 0; j < list2.Count; j++)
73 {
74 layerList2.Add(list2[j].ToString(), delegate(int a)
75 {
76 EClass._map.config.bg = list2[a];
78 });
79 }
80 layerList2.Show();
81 return false;
82 }, owner);
83 p.TrySetAct("actChangeShadowStrength", delegate
84 {
85 UIContextMenu uIContextMenu = EClass.ui.CreateContextMenuInteraction();
86 uIContextMenu.AddSlider("adjustment", (float a) => a + "%", EClass._map.config.shadowStrength * 100f, delegate(float b)
87 {
88 EClass._map.config.shadowStrength = b * 0.01f;
90 }, 0f, 400f, isInt: true, hideOther: false);
91 uIContextMenu.Show();
92 return false;
93 }, owner);
94 p.TrySetAct("actChangeFogDensity", delegate
95 {
96 LayerList layerList = EClass.ui.AddLayer<LayerList>().SetSize(400f);
97 List<FogType> list = Util.EnumToList<FogType>();
98 for (int i = 0; i < list.Count; i++)
99 {
100 layerList.Add(list[i].ToString(), delegate(int a)
101 {
102 EClass._map.config.fog = list[a];
104 });
105 }
106 layerList.Show();
107 return false;
108 }, owner);
109 p.TrySetAct("actChangeSkyColor", delegate
110 {
111 EClass.ui.AddLayer<LayerColorPicker>().SetColor(EClass._map.config.colorScreen.Get(), new Color(0f, 0f, 0f, 0f), delegate(PickerState state, Color _c)
112 {
115 });
116 return false;
117 }, owner);
118 p.TrySetAct("actChangeSeaColor", delegate
119 {
120 EClass.ui.AddLayer<LayerColorPicker>().SetColor(EClass._map.config.colorSea.Get(), new Color(0f, 0f, 0f, 0f), delegate(PickerState state, Color _c)
121 {
124 });
125 return false;
126 }, owner);
127 bool flag = !EClass._map.IsIndoor || EClass._zone is Zone_Tent;
129 {
130 flag = !flag;
131 }
132 p.TrySetAct("actToggleMapRoof".lang((flag ? "on" : "off").lang()), delegate
133 {
134 EClass._map.config.reverseRoof = !EClass._map.config.reverseRoof;
135 SE.ClickOk();
136 return false;
137 }, owner);
138 }
139}
FogType
Definition: FogType.cs:2
MapBG
Definition: MapBG.cs:2
PickerState
Definition: PickerState.cs:2
bool TrySetAct(string lang, Func< bool > onPerform, Card tc, CursorInfo cursor=null, int dist=1, bool isHostileAct=false, bool localAct=true, bool canRepeat=false)
Definition: ActPlan.cs:366
bool enable
Definition: CoreDebug.cs:286
Definition: EClass.cs:5
static Game game
Definition: EClass.cs:8
static Scene scene
Definition: EClass.cs:30
static Zone _zone
Definition: EClass.cs:20
static Map _map
Definition: EClass.cs:18
static BaseGameScreen screen
Definition: EClass.cs:32
static CoreDebug debug
Definition: EClass.cs:48
static UI ui
Definition: EClass.cs:16
Tileset tileset
Definition: EloMapActor.cs:15
void SetZone(int gx, int gy, Zone z, bool updateMesh=false)
Definition: EloMap.cs:234
EloMapActor actor
Definition: EloMap.cs:118
SpatialManager spatials
Definition: Game.cs:152
void Show(bool autoClose=true)
Definition: LayerList.cs:354
void Add(string lang, Action< int > action)
Definition: LayerList.cs:340
SerializableColor colorSea
Definition: MapConfig.cs:101
int skyBlockHeight
Definition: MapConfig.cs:92
float blockHeight
Definition: MapConfig.cs:71
SerializableColor colorScreen
Definition: MapConfig.cs:98
bool reverseRoof
Definition: MapConfig.cs:47
MapConfig config
Definition: Map.cs:37
void RefreshBG()
Definition: Scene.cs:797
EloMap elomap
Definition: Scene.cs:149
SerializableColor Set(Color color)
GlobalSpatialList map
int icon
Definition: Spatial.cs:82
int y
Definition: Spatial.cs:106
int x
Definition: Spatial.cs:94
override bool IsHomeItem
Definition: TraitMapBoard.cs:8
override void TrySetAct(ActPlan p)
Card owner
Definition: Trait.cs:27
Image icon
Definition: UIButton.cs:110
void Show(UIItem i)
UIContextMenuItem AddSlider(string text, Func< float, string > textFunc, float value, Action< float > action, float min=0f, float max=1f, bool isInt=false, bool hideOther=true, bool useInput=false)
GridLayoutGroup AddGridLayout()
virtual bool IsSkyLevel
Definition: Zone.cs:262
bool IsPCFaction
Definition: Zone.cs:470