private void ChangeColor(GameObject goTask, TASK_STYLE tStyle, int nTaskIndex) { if (CurrentCard != null) { Transform tTask = goTask.transform.FindChild("Task"); Color backColor = Colors[(int)tStyle]; Color textColor = TextColors[(int)tStyle]; Sprite spInfo = info[(int)tStyle]; Sprite spValidation = validation[(int)tStyle]; goTask.transform.FindChild("Number").GetComponent <Image>().color = backColor; tTask.GetComponent <Image>().color = backColor; tTask.FindChild("ValidationIcon").gameObject.SetActive(CurrentCard.tasks[nTaskIndex].signedTask); tTask.FindChild("InfoIcon").gameObject.SetActive(!string.IsNullOrEmpty(CurrentCard.tasks[nTaskIndex].hasExtraInfo)); tTask.FindChild("InfoIcon").gameObject.GetComponent <Image>().sprite = spInfo; if (CurrentCard.tasks[nTaskIndex].isAlreadySigned) { tTask.FindChild("ValidationIcon").gameObject.GetComponent <Image>().sprite = validated; } else { tTask.FindChild("ValidationIcon").gameObject.GetComponent <Image>().sprite = spValidation; } } }
public GameObject CreateTask(int TaskIndex, string name, TASK_STYLE tStyle) { GameObject goTask = Instantiate(TaskPrefab, taskParent.transform); goTask.transform.FindChild("Number").FindChild("Text").GetComponent <Text>().text = (TaskIndex + 1).ToString(); goTask.name = "Task" + TaskIndex; goTask.transform.localScale = Vector3.one; ChangeColor(goTask, tStyle, TaskIndex); goTask.transform.localPosition = new Vector3(0, -TaskIndex * distanceBetweenTasks, 0); goTask.transform.rotation = gameObject.transform.rotation; goTask.AddComponent <InteractableTask>(); return(goTask); }