【サバイバルホラーゲームを作りたい。その35】
今回は落下音とパズル要素の実装です。
・目の前を横切る飛行物体の落下音を実装します。
using System.Collections; using System.Collections.Generic; using UnityEngine; public class CollideCup : MonoBehaviour //EP35追加 FlyingObjにアタッチ { public AudioSource impactFX; private void OnCollisionEnter(Collision collision) { if (collision.relativeVelocity.magnitude > 0.5f) { impactFX.Play(); } } }
・半分に割れたオブジェクトを配置し、取得できるようにします。
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class RightRionPickup : MonoBehaviour //EP35追加 Right_Rion_Objにアタッチ { public GameObject actionKey; public GameObject actionText; Text actiontext; public InputScript inputScript; // public BoxCollider boxCollider; public GameObject ExtraCross; public GlobalInventory globalInventory; private void Start() { // boxCollider = GetComponent<BoxCollider>(); actiontext = actionText.GetComponent<Text>(); } private void OnTriggerEnter(Collider other) { //コライダーにプレイヤーが当たった場合 if (other.tag == "Player") { // Debug.Log("hit"); //キー押下~のメッセージを表示 actionKey.SetActive(true); actionText.SetActive(true); actiontext.text = "Pick Up"; ExtraCross.SetActive(true); } } private void OnTriggerStay(Collider other) { if (inputScript.getInputActions()) { actionKey.SetActive(false); actionText.SetActive(false); ExtraCross.SetActive(false); // globalInventory.setDoorKey001(true); //EP32追加 transform.parent.gameObject.SetActive(false); } } ////コライダーからプレイヤーが離れた場合 private void OnTriggerExit(Collider other) { actionKey.SetActive(false); actionText.SetActive(false); ExtraCross.SetActive(false); } }
今回は以上です。