前提
Unityで敵にダメージを与えるスクリプトを書いています
実現したいこと
public floatかintでキャラごとに与えるダメージをかえたい。
エラーの解消
発生している問題・エラーメッセージ
Assets\Scripts\BulletMove.cs(41,71): error CS1503: Argument 1: cannot convert from 'float' to 'int'
該当のソースコード
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class BulletMove : MonoBehaviour
{
public float speed = 1f;
public float distance = 100.0f;
public GameObject spark;
public float damage;
private Vector3 start; // Start is called before the first frame update void Start() { start = this.transform.position; } // Update is called once per frame void Update() { float diff = Vector3.Distance(start, this.transform.position); if(diff >= distance) { Destroy(this.gameObject); } Vector3 d = Vector3.forward * speed * Time.deltaTime; transform.Translate(d); } void OnCollisionEnter(Collision collision) { Instantiate(spark, this.transform.position, this.transform.rotation); Destroy(this.gameObject); if (collision.gameObject.tag == "Enemy") { collision.gameObject.GetComponent<Enemyfuck>().TakeDamage(damage); Destroy(gameObject); //gameObject.OnCollisionEnter(Collision collision) } }
}
試したこと
調べて様々なことを試してもそのたびに別のエラーが出てしまいお手上げです
補足情報(FW/ツールのバージョンなど)
Unity2021.3.7f1


回答1件
あなたの回答
tips
プレビュー