public void OnTouchThis()
{
if (isDestroyed || !isActive || CrimeManager.Instance.isGUI)
return;
if (!isItem && selectedSprite != null)
GetComponent<SpriteRenderer>().sprite = selectedSprite;
activeList = new List<SelectManager>();
foreach (SelectManager item in selectList)
{
// there is a bug which is happen when item is deleted.
// When deleting item, programmer should update selectList.
// This code is temporary fix.
if (item == null) {
continue;
}
if (item.GetComponent<SelectManager>().isActive)
activeList.Add(item);
}
if (activeList.Count == 0 || buttonTrans == null)
return;
CrimeManager.Instance.isGUI = true;
selectButtons = new GameObject[activeList.Count + 1];
int i = 0;
foreach (SelectManager item in activeList)
{
selectButtons[i] = CrimeManager.Instance.GetButton();
selectButtons[i].transform.Find("Label").GetComponent<TextMesh>().text = item.name;
selectButtons[i].transform.position = buttonTrans.position + 1f * i * Vector3.down + 3 * Vector3.right;
selectButtons[i].GetComponent<SelectableButton>().crimeObject = this;
selectButtons[i].GetComponent<SelectableButton>().selectable = item;
i++;
}
selectButtons[i] = CrimeManager.Instance.GetCanceler();
selectButtons[i].GetComponent<SelectableButton>().crimeObject = this;
}