using UnityEngine;
using TowerDefense.Level;
using TowerDefense.Towers;
using UnityEngine.UI;
using TowerDefense.UI.HUD;
/**
* GM
* @Author: chenxin
* @Date: 2020-11-26 10:10:25
*/
namespace KTGMGemClient
{
public class GM : MonoBehaviour
{
public GameObject GMPanel;
public Text RandomText;
public Toggle WoodToggle;
public InputField WoodInput;
public Toggle WaterToggle;
public InputField WaterInput;
public Toggle FireToggle;
public InputField FireInput;
public Toggle InfiniteSkillToggle;
// Start is called before the first frame update
private void Start()
{
GMPanel.SetActive(false);
InfiniteSkillToggle.onValueChanged.AddListener((bool select) =>
{
GameConfig.InfiniteSkill = select;
if (select)
EndlessUIStart.instance.GuideEnergyUp(200);
});
InfiniteSkillToggle.isOn = GameConfig.InfiniteSkill;
}
///
/// 打开GM panel
///
public void OnClick()
{
GMPanel.SetActive(true);
if (GameConfig.CreateRandomTower)
RandomText.text = "合成模式(随机)";
else
RandomText.text = "合成模式(定向)";
}
///
/// 加1000金币
///
public void OnClick1()
{
EndlessLevelManager.instance.Currency.AddCurrency(1000);
}
///
/// 购买水属性塔
///
public void OnClick2()
{
Tower aTower = EndlessRandomTower.instance.getTowerByName("CopyCatTower");
int level = 0;
if (WaterToggle.isOn)
{
if (EndlessUIStart.instance.GameStartTime >= JsonDataCenter.DOUBLE_GEM_TIME)
{
level = Mathf.Min(EndlessGameUI.instance.MinLevel, 1);
}
}
else
{
int result = 0;
int.TryParse(WaterInput.text, out result);
level = Mathf.Clamp(result - 1, 0, ElfUpgradeData.MaxTowerLevel - 1);
}
EndlessRandomTower.instance.RandomPlaceTower(aTower, level, 0);
}
///
/// 购买火属性塔
///
public void OnClick3()
{
Tower aTower = EndlessRandomTower.instance.getTowerByName("GrowUpTower");
int level = 0;
if (FireToggle.isOn)
{
if (EndlessUIStart.instance.GameStartTime >= JsonDataCenter.DOUBLE_GEM_TIME)
{
level = Mathf.Min(EndlessGameUI.instance.MinLevel, 1);
}
}
else
{
int result = 0;
int.TryParse(FireInput.text, out result);
level = Mathf.Clamp(result - 1, 0, ElfUpgradeData.MaxTowerLevel - 1);
}
EndlessRandomTower.instance.RandomPlaceTower(aTower, level, 0);
}
///
/// 购买木属性塔
///
public void OnClick4()
{
Tower aTower = EndlessRandomTower.instance.getTowerByName("BlinkTower");
int level = 0;
if (WoodToggle.isOn)
{
if (EndlessUIStart.instance.GameStartTime >= JsonDataCenter.DOUBLE_GEM_TIME)
{
level = Mathf.Min(EndlessGameUI.instance.MinLevel, 1);
}
}
else
{
int result = 0;
int.TryParse(WoodInput.text, out result);
level = Mathf.Clamp(result - 1, 0, ElfUpgradeData.MaxTowerLevel - 1);
}
EndlessRandomTower.instance.RandomPlaceTower(aTower, level, 0);
}
///
/// 切换合成模式
///
public void OnClick5()
{
GameConfig.CreateRandomTower = !GameConfig.CreateRandomTower;
if (GameConfig.CreateRandomTower)
RandomText.text = "合成模式(随机)";
else
RandomText.text = "合成模式(定向)";
}
///
/// 技能直接充满
///
public void OnClick6()
{
EndlessUIStart.instance.GuideEnergyUp(200);
}
///
/// 退出
///
public void OnClick7()
{
GMPanel.SetActive(false);
}
///
/// 直接开启所有塔位
///
public void OpenAllTowerGrid()
{
EventCenter.Ins.BroadCast((int)KTGMGemClient.EventType.OpenAllTowerGrid);
}
}
}