UnityでBaseMagicを継承したFireクラスを作成したところエラーが4つでてしまったのですが原因が分かりません。どこがおかしいのか教えていただきたいです。よろしくお願いします。
BaseMagicクラス
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using BattleScene; 5using BattleScene.Chara; 6 7namespace BattleScene.Magic{ 8 9public class BaseMagic : IMagic 10{ 11 public int DownMP { get; set; } 12 TextManager textmanager = GameObject.Find("battletext").GetComponent<TextManager>(); 13 14 public void Use(Player attacker,Player defender); 15 16 public bool canUse(Player player){ 17 if(player.MP >= DownMP){ 18 return true; 19 } 20 return false; 21 } 22} 23 24}
Fireクラス
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using BattleScene; 5using BattleScene.Chara; 6 7namespace BattleScene.Magic{ 8 9public class Fire : BaseMagic 10{ 11 public Fire(){ 12 public int maxDamage { get; set; } = 30; 13 public int minDamage { get; set; } = 10 14 base.DownMP = 20; 15 } 16 17 public override void Use(Player attacker,Player defender){ 18 int calcedDamage = UnityEngine.Random.Range(this.minDamage,this.maxDamage+1); 19 base.textmanager.battleLog($"{attacker.PlayerName}のファイア! {defender.PlayerName}に{calcedDamage}のダメージ"); 20 attacker.MP = attacker.MP-base.DownMP; //mp消費-20 21 defender.damage(calcedDamage); 22 attacker.AttackFinished = true; 23 } 24} 25 26}
Assets\MainBattle\BattleScene\Magic\Fire.cs(11,19): error CS1513: } expected Assets\MainBattle\BattleScene\Magic\Fire.cs(14,9): error CS1519: Invalid token 'base' in class, struct, or interface member declaration Assets\MainBattle\BattleScene\Magic\Fire.cs(14,21): error CS1519: Invalid token '=' in class, struct, or interface member declaration Assets\MainBattle\BattleScene\Magic\Fire.cs(26,1): error CS1022: Type or namespace definition, or end-of-file expected
まずエラーコードとエラーメッセージでググってください。
単純なコンパイルエラーはエラー内容をきちんと読んで調べれば自力で解決出来る筈です。
翻訳も検索も面倒だから調べてという話ならお断りします。
継承の方法とかの以前の問題で、単純に } が足りないとかの文法ミスのようですが?
回答2件
あなたの回答
tips
プレビュー