照準器で狙った位置にライフル弾を発射する
![4102c81d d497 4775 9c6f 1a1fb07bdb6b](https://codegenius.org/uploads/slide/image/2606/4102c81d-d497-4775-9c6f-1a1fb07bdb6b.jpeg)
![7f4c0ce1 991b 42cb 887e 60791ea6ed26](https://codegenius.org/uploads/slide/image/2607/7f4c0ce1-991b-42cb-887e-60791ea6ed26.jpeg)
![3a2b1985 6ee6 4b29 bbd1 6d9b76c21011](https://codegenius.org/uploads/slide/image/2608/3a2b1985-6ee6-4b29-bbd1-6d9b76c21011.jpeg)
![Ed70e52e f632 47a5 9ca6 97ba14720f66](https://codegenius.org/uploads/slide/image/2609/ed70e52e-f632-47a5-9ca6-97ba14720f66.jpeg)
![721f87c8 6608 4c8e 85ca 80f2899fdace](https://codegenius.org/uploads/slide/image/2610/721f87c8-6608-4c8e-85ca-80f2899fdace.jpeg)
![Cc06801d 909e 4a7e 8cc7 f7477a26ceae](https://codegenius.org/uploads/slide/image/2611/cc06801d-909e-4a7e-8cc7-f7477a26ceae.jpeg)
![24428208 f47c 46c2 9330 4e7cac5ac283](https://codegenius.org/uploads/slide/image/2612/24428208-f47c-46c2-9330-4e7cac5ac283.jpeg)
ShotBulletを切り替える
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CameraMoveController : MonoBehaviour {
public GameObject player;
public float rotateSpeed;
private const float angleLimitUp = 30f;
private const float angleLimitDown = -60f;
public Camera mainCamera;
public Camera subCamera;
private Vector3 angle;
public GameObject aimObject;
public GameObject rifle;
// ★追加
public GameObject shotBullet2;
void Start(){
mainCamera.enabled = true;
subCamera.enabled = false;
}
void Update () {
transform.position = player.transform.position;
angle = player.transform.eulerAngles;
transform.eulerAngles = new Vector3 (transform.eulerAngles.x, angle.y, transform.eulerAngles.z);
if (Input.GetMouseButton (0)) {
RotateCameraAngle ();
mainCamera.enabled = false;
subCamera.enabled = true;
aimObject.SetActive(true);
rifle.SetActive (false);
// ★追加
// サブカメラの時だけ、ShotBullet2をオンにする。
shotBullet2.SetActive(true);
} else {
mainCamera.enabled = true;
subCamera.enabled = false;
aimObject.SetActive(false);
rifle.SetActive (true);
// ★追加
shotBullet2.SetActive(false);
}
float angle_x = 180f <= transform.eulerAngles.x ? transform.eulerAngles.x - 360f : transform.eulerAngles.x;
transform.eulerAngles = new Vector3(Mathf.Clamp(angle_x, angleLimitDown, angleLimitUp), transform.eulerAngles.y, transform.eulerAngles.z);
}
void RotateCameraAngle(){
Vector3 angle = new Vector3(Input.GetAxis("Mouse X") * rotateSpeed, -Input.GetAxis("Mouse Y") *rotateSpeed, 0);
transform.eulerAngles += new Vector3(angle.y, angle.x, 0);
}
}
![4828c877 6640 4dca 8bfa 724e56fd3e3a](https://codegenius.org/uploads/slide/image/2613/4828c877-6640-4dca-8bfa-724e56fd3e3a.jpeg)
![7abe9230 a082 4a74 94b3 dda925286366](https://codegenius.org/uploads/slide/image/2614/7abe9230-a082-4a74-94b3-dda925286366.jpeg)
![C928d539 70b8 46de 808d ada9af5cc700](https://codegenius.org/uploads/slide/image/2615/c928d539-70b8-46de-808d-ada9af5cc700.jpeg)
EscapeCombat(メモ)
他のコースを見る![4102c81d d497 4775 9c6f 1a1fb07bdb6b](https://codegenius.org/uploads/slide/image/2606/4102c81d-d497-4775-9c6f-1a1fb07bdb6b.jpeg)
![7f4c0ce1 991b 42cb 887e 60791ea6ed26](https://codegenius.org/uploads/slide/image/2607/7f4c0ce1-991b-42cb-887e-60791ea6ed26.jpeg)
![3a2b1985 6ee6 4b29 bbd1 6d9b76c21011](https://codegenius.org/uploads/slide/image/2608/3a2b1985-6ee6-4b29-bbd1-6d9b76c21011.jpeg)
![Ed70e52e f632 47a5 9ca6 97ba14720f66](https://codegenius.org/uploads/slide/image/2609/ed70e52e-f632-47a5-9ca6-97ba14720f66.jpeg)
![721f87c8 6608 4c8e 85ca 80f2899fdace](https://codegenius.org/uploads/slide/image/2610/721f87c8-6608-4c8e-85ca-80f2899fdace.jpeg)
![Cc06801d 909e 4a7e 8cc7 f7477a26ceae](https://codegenius.org/uploads/slide/image/2611/cc06801d-909e-4a7e-8cc7-f7477a26ceae.jpeg)
![24428208 f47c 46c2 9330 4e7cac5ac283](https://codegenius.org/uploads/slide/image/2612/24428208-f47c-46c2-9330-4e7cac5ac283.jpeg)
ShotBulletを切り替える
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CameraMoveController : MonoBehaviour {
public GameObject player;
public float rotateSpeed;
private const float angleLimitUp = 30f;
private const float angleLimitDown = -60f;
public Camera mainCamera;
public Camera subCamera;
private Vector3 angle;
public GameObject aimObject;
public GameObject rifle;
// ★追加
public GameObject shotBullet2;
void Start(){
mainCamera.enabled = true;
subCamera.enabled = false;
}
void Update () {
transform.position = player.transform.position;
angle = player.transform.eulerAngles;
transform.eulerAngles = new Vector3 (transform.eulerAngles.x, angle.y, transform.eulerAngles.z);
if (Input.GetMouseButton (0)) {
RotateCameraAngle ();
mainCamera.enabled = false;
subCamera.enabled = true;
aimObject.SetActive(true);
rifle.SetActive (false);
// ★追加
// サブカメラの時だけ、ShotBullet2をオンにする。
shotBullet2.SetActive(true);
} else {
mainCamera.enabled = true;
subCamera.enabled = false;
aimObject.SetActive(false);
rifle.SetActive (true);
// ★追加
shotBullet2.SetActive(false);
}
float angle_x = 180f <= transform.eulerAngles.x ? transform.eulerAngles.x - 360f : transform.eulerAngles.x;
transform.eulerAngles = new Vector3(Mathf.Clamp(angle_x, angleLimitDown, angleLimitUp), transform.eulerAngles.y, transform.eulerAngles.z);
}
void RotateCameraAngle(){
Vector3 angle = new Vector3(Input.GetAxis("Mouse X") * rotateSpeed, -Input.GetAxis("Mouse Y") *rotateSpeed, 0);
transform.eulerAngles += new Vector3(angle.y, angle.x, 0);
}
}
![4828c877 6640 4dca 8bfa 724e56fd3e3a](https://codegenius.org/uploads/slide/image/2613/4828c877-6640-4dca-8bfa-724e56fd3e3a.jpeg)
![7abe9230 a082 4a74 94b3 dda925286366](https://codegenius.org/uploads/slide/image/2614/7abe9230-a082-4a74-94b3-dda925286366.jpeg)
![C928d539 70b8 46de 808d ada9af5cc700](https://codegenius.org/uploads/slide/image/2615/c928d539-70b8-46de-808d-ada9af5cc700.jpeg)
照準器で狙った位置にライフル弾を発射する