FPSゲームを作っていますここのエラーがどうしても調べたのですが直せませんでしたどうすればいいですか?
調べたサイト コンパイラ エラー CS0501
バージョン unity2019 2.0
エラーコード↓(CS0501)
FirstpersonGuncontroller.SootTimer()'must declare a body becuse it is not marked abstract extern,or partial
コード using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class FirstPersonGunController : MonoBehaviour { public enum ShootMode { AUTO, SEMIAUTO } public bool shootEnabled = true; [SerializeField] ShootMode shootMode = ShootMode.AUTO; [SerializeField] int maxAmmo = 100; [SerializeField] int maxSupplyValue = 100; [SerializeField] int damage = 1; [SerializeField] float shootInterval = 0.1f; [SerializeField] float shootRange = 50; [SerializeField] float supplyInterval = 0.1f; [SerializeField] Vector3 muzzleFlashScale; [SerializeField] GameObject muzzleFlashPrefab; [SerializeField] GameObject hitEffectPrefab; [SerializeField] Image ammoGauge; [SerializeField] Text ammoText; [SerializeField] Image supplyGauge; bool shooting = false; bool supplying = false; int ammo = 0; int supplyValue = 0; GameObject muzzleFlash; GameObject hitEffect; public int Ammo { set { ammo = Mathf.Clamp(value, 0, maxAmmo); //UIの表示を操作 //テキスト ammoText.text = ammo.ToString("D3"); //ゲージ float scaleX = (float)ammo / maxAmmo; ammoGauge.rectTransform.localScale = new Vector3(scaleX, 1, 1); } get { return ammo; } } public int SupplyValue { set { supplyValue = Mathf.Clamp(value, 0, maxSupplyValue); if (SupplyValue >= maxSupplyValue) { Ammo = maxAmmo; supplyValue = 0; } float scaleX = (float)supplyValue / maxSupplyValue; supplyGauge.rectTransform.localScale = new Vector3(scaleX, 1, 1); } get { return supplyValue; } } void Start() { InitGun(); } void SootTimer();//ここ void Update() { if (shootEnabled & ammo > 0 & GetInput()) { StartCoroutine(ShootTimer()); } if (shootEnabled) { StartCoroutine(SupplyTimer()); } } public void InitGun() { Ammo = maxAmmo; SupplyValue = 0; } //--中略-- IEnumerator SupplyTimer() { if (!supplying) { supplying = true; SupplyValue++; yield return new WaitForSeconds(supplyInterval); supplying = false; } } }
コードはマークダウンのcode機能を利用してご提示ください。
https://teratail.com/help#about-markdown
>ここのエラーがどうしても直せませんどうすればいいですか?
「どうしても」がわかるように調べたこと試したことを記載してください。
記載されていないことをくみ取るのは他者にはできませんので、基本的にすべて記載するようにしてください。
https://teratail.com/help/question-tips#questionTips1-2
なおコードのマークダウン対応依頼はこれで3度目です。
平でコードを提示されてもインデントなどが詰められたりして質問者さんが実行されたコードではありませんのでこちら側で正しく再現確認できません。
それに、1クリックでコピーできるのでこちらのコピペの手間が減ります。
よって的確なアドバイスを得やすくなります
で、何をどう調べてどう対応したのでしょうか。
調べ方、対応の仕方が間違っていては今後自己解決できるようにはなりません。
アドバイスはそこからするべきと考えます。
回答2件
あなたの回答
tips
プレビュー