// Start is called before the first frame update void Start() { se_page = GameObject.FindWithTag("AudioManager") .GetComponent <AudioManager>().GetAudioSourceByType(AudioManager.E_AUDIOTYPE.SE_PAGE); se_judge = GameObject.FindWithTag("AudioManager") .GetComponent <AudioManager>().GetAudioSourceByType(AudioManager.E_AUDIOTYPE.SE_JUDGE); bgm_final = GameObject.FindWithTag("AudioManager") .GetComponent <AudioManager>().GetAudioSourceByType(AudioManager.E_AUDIOTYPE.BGM_FINAL); bgmVolume = bgm_final.volume; bgm_final.volume = 0; bgm_final.Play(); bgm_final.DOFade(bgmVolume, 1.0f); DataManager datamanager = DataManager.Instance; datamanager.getEvidenceNum = 0; //DataManagerからもってくる m_arraySuspectData = datamanager.stageSuspect; SetAllButtonFalse(); for (int i = 0; i < m_arraySuspectData.NoGuilty.Length; ++i) {//ボタンの位置を修正する RectTransform buttonrect = arrayButton[i].GetComponent <RectTransform>(); float posx; if (m_arraySuspectData.NoGuilty.Length % 2 == 1) {//ボタンの数が1or3のとき posx = -buttonrect.rect.width * 2; posx += buttonrect.rect.width * 2 * i; } else {//ボタンの数が2のとき posx = -buttonrect.rect.width; posx += buttonrect.rect.width * 2 * i; } Vector3 pos = new Vector3(posx, buttonrect.transform.position.y, 0.0f); arrayButton[i].GetComponent <RectTransform>().anchoredPosition = pos; arrayButton[i].gameObject.SetActive(true); arrayButton[i].GetComponent <Image>().sprite = m_arraySuspectData.NoGuilty[i].sprite; } }
/// <summary> /// 当たった証拠品から各評価値を計算するメソッド /// TODO 当たったときに呼んでください /// </summary> /// <param name="_evidence"></param>当たったメソッドのE_EVIDENCE型をいれてください public void CheckHitEvidence(E_EVIDENCE _evidence) { Debug.Log(_evidence + "が計算されました"); int stage = DataManager.Instance.stage; tagStageSuspectData arraysuspect = suspect.m_arraySuspectData[stage]; //取得した証拠品を取得 GameObject obj = GameObject.Find("EvidenceFactory").GetComponent <EvidenceFactory>().GetEvidence(_evidence); //証拠品の点数を取得 int evidencevalue = obj.GetComponent <EvidenceData>().GetEvidenceValue(stage); //犯人はこの証拠品の対象?か m_evidenceValue[0] -= DecreaseEvidenceValue(evidencevalue, arraysuspect.Guilty.evidence, _evidence); //無実の人たちはこの for (int i = 0; i < suspect.m_arraySuspectData[stage].NoGuilty.Length; ++i) { m_evidenceValue[i + 1] -= DecreaseEvidenceValue(evidencevalue, arraysuspect.NoGuilty[i].evidence, _evidence); } }