ボタン長押しで連射できるようにする
![F58f85a5 bc83 4be3 88c4 97d2e7036401](https://codegenius.org/uploads/slide/image/4683/f58f85a5-bc83-4be3-88c4-97d2e7036401.jpeg)
![5f8eb5c2 d5c7 4c23 a5da b1653bf0a777](https://codegenius.org/uploads/slide/image/4684/5f8eb5c2-d5c7-4c23-a5da-b1653bf0a777.jpeg)
長押し連射
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class FireMissile : MonoBehaviour
{
public GameObject missilePrefab;
public float missileSpeed;
public AudioClip fireSound;
// ★改良(長押し連射)
private int timeCount;
void Update()
{
// ★改良(長押し連射)
timeCount += 1;
// ★改良(長押し連射)
// 「GetButtonDown」を「GetButton」に変更する(ポイント)
// 「GetButton」は「押している間」という意味
if (Input.GetButton("Jump"))
{
// ★改良(長押し連射)
// 「5」の部分の数字を変えると「連射の間隔」を変更することができます(ポイント)
// 「%」と「==」の意味合いを復習しましょう。
if(timeCount % 5 == 0)
{
GameObject missile = Instantiate(missilePrefab, transform.position, Quaternion.identity);
Rigidbody missileRb = missile.GetComponent<Rigidbody>();
missileRb.AddForce(transform.forward * missileSpeed);
AudioSource.PlayClipAtPoint(fireSound, transform.position);
Destroy(missile, 2.0f);
}
}
}
}
![Cbb14173 2e2d 4198 9b17 636244de0ff8](https://codegenius.org/uploads/slide/image/4685/cbb14173-2e2d-4198-9b17-636244de0ff8.jpeg)
【2019版】Danmaku Ⅱ(基礎2/全38回)
他のコースを見る![F58f85a5 bc83 4be3 88c4 97d2e7036401](https://codegenius.org/uploads/slide/image/4683/f58f85a5-bc83-4be3-88c4-97d2e7036401.jpeg)
![5f8eb5c2 d5c7 4c23 a5da b1653bf0a777](https://codegenius.org/uploads/slide/image/4684/5f8eb5c2-d5c7-4c23-a5da-b1653bf0a777.jpeg)
長押し連射
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class FireMissile : MonoBehaviour
{
public GameObject missilePrefab;
public float missileSpeed;
public AudioClip fireSound;
// ★改良(長押し連射)
private int timeCount;
void Update()
{
// ★改良(長押し連射)
timeCount += 1;
// ★改良(長押し連射)
// 「GetButtonDown」を「GetButton」に変更する(ポイント)
// 「GetButton」は「押している間」という意味
if (Input.GetButton("Jump"))
{
// ★改良(長押し連射)
// 「5」の部分の数字を変えると「連射の間隔」を変更することができます(ポイント)
// 「%」と「==」の意味合いを復習しましょう。
if(timeCount % 5 == 0)
{
GameObject missile = Instantiate(missilePrefab, transform.position, Quaternion.identity);
Rigidbody missileRb = missile.GetComponent<Rigidbody>();
missileRb.AddForce(transform.forward * missileSpeed);
AudioSource.PlayClipAtPoint(fireSound, transform.position);
Destroy(missile, 2.0f);
}
}
}
}
![Cbb14173 2e2d 4198 9b17 636244de0ff8](https://codegenius.org/uploads/slide/image/4685/cbb14173-2e2d-4198-9b17-636244de0ff8.jpeg)
ボタン長押しで連射できるようにする