summaryrefslogtreecommitdiff
path: root/Client/Assets/Scripts/XMainClient/UI/GuildTerritoryDisplay.cs
blob: 1ca6222b9c0d0cf489218e7994d66e24b6571d47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
using System;
using KKSG;
using UILib;
using UnityEngine;
using XUtliPoolLib;

namespace XMainClient.UI
{
	internal class GuildTerritoryDisplay
	{
		public Transform transform;

		public IXUILabel mGuildName;

		public IXUISprite mGuildIcon;

		public Transform mOccupy;

		public IXUISprite mTerritoryIcon;

		public IXUILabel mTerritoryName;

		public IXUISprite mTerritorySprite;

		public IXUIButton mTerritoryButton;

		public Transform mCrossGVGPrimary;

		public uint mTerritoryID = 0u;

		public void Init(uint territoryID, Transform t)
		{
			this.transform = t;
			this.mTerritoryID = territoryID;
			this.mOccupy = this.transform.Find("guildname/Occupy");
			this.mGuildName = (this.transform.Find("guildname/Occupy/GuildName").GetComponent("XUILabel") as IXUILabel);
			this.mGuildIcon = (this.transform.Find("guildname/Occupy/GuildIcon").GetComponent("XUISprite") as IXUISprite);
			this.mTerritoryIcon = (this.transform.Find("guildname/Icon").GetComponent("XUISprite") as IXUISprite);
			this.mTerritoryName = (this.transform.Find("guildname/Name").GetComponent("XUILabel") as IXUILabel);
			this.mTerritorySprite = (this.transform.Find("Sprite").GetComponent("XUISprite") as IXUISprite);
			this.mTerritoryButton = (this.transform.GetComponent("XUIButton") as IXUIButton);
			this.mTerritoryButton.ID = (ulong)((long)int.Parse(this.transform.name));
			this.mCrossGVGPrimary = this.transform.Find("CrossGVGPrimary");
			this.mTerritoryButton.RegisterClickEventHandler(new ButtonClickEventHandler(this.OnTerritoryClick));
			this.Clear();
		}

		private void Clear()
		{
			this.mOccupy.gameObject.SetActive(false);
			this.mCrossGVGPrimary.gameObject.SetActive(false);
		}

		public void Refresh()
		{
			XGuildTerritoryDocument specificDocument = XDocuments.GetSpecificDocument<XGuildTerritoryDocument>(XGuildTerritoryDocument.uuID);
			XCrossGVGDocument specificDocument2 = XDocuments.GetSpecificDocument<XCrossGVGDocument>(XCrossGVGDocument.uuID);
			CityData cityData;
			bool flag = specificDocument.TryGetCityData(this.mTerritoryID, out cityData);
			if (flag)
			{
				this.mOccupy.gameObject.SetActive(cityData.guildid > 0UL);
				this.mGuildName.SetText(cityData.guildname);
				XSingleton<XDebug>.singleton.AddGreenLog("cityData Singlon :", cityData.type.ToString(), null, null, null, null);
				string sprite;
				float alpha;
				switch (cityData.type)
				{
				case GUILDTERRTYPE.ALLIANCE:
					sprite = "Guild_icon05";
					alpha = 1f;
					goto IL_DD;
				case GUILDTERRTYPE.TERR_WARING:
				case GUILDTERRTYPE.WAITING:
					sprite = "Guild_icon06";
					alpha = 1f;
					goto IL_DD;
				}
				sprite = string.Empty;
				alpha = 0f;
				IL_DD:
				this.mTerritoryIcon.SetAlpha(alpha);
				this.mTerritoryIcon.SetSprite(sprite);
				this.mTerritoryIcon.MakePixelPerfect();
				uint targetTerrioryType = specificDocument.GetTargetTerrioryType(this.mTerritoryID);
				uint @int = (uint)XSingleton<XGlobalConfig>.singleton.GetInt("CrossGvgTerrLevel");
				this.mCrossGVGPrimary.gameObject.SetActive(specificDocument2.TimeStep == CrossGvgTimeState.CGVG_Select && targetTerrioryType >= @int);
			}
			else
			{
				this.mOccupy.gameObject.SetActive(false);
				this.mTerritoryIcon.SetAlpha(0f);
				this.mCrossGVGPrimary.gameObject.SetActive(false);
			}
		}

		private bool OnTerritoryClick(IXUIButton btn)
		{
			uint uid = (uint)btn.ID;
			XGuildTerritoryDocument specificDocument = XDocuments.GetSpecificDocument<XGuildTerritoryDocument>(XGuildTerritoryDocument.uuID);
			specificDocument.SendGuildTerritoryChallInfo(uid);
			XSingleton<XDebug>.singleton.AddGreenLog("OnTerritoryClick:", uid.ToString(), null, null, null, null);
			return true;
		}
	}
}