ページ 11

【Unity】override型を使うとエラーが出る

Posted: 2016年10月18日(火) 23:43
by プラム

コード:

using UnityEngine;
using System.Collections;
using UnityEngine.Networking;

public class Enemy_Spawner : MonoBehaviour {
	[SerializeField] GameObject Prefab;
	[SerializeField] GameObject Spawn;


	public override void OnStartServer()
	{
		EnemySpawn();
	}

	void EnemySpawn()
	{
		
		GameObject go = GameObject.Instantiate(Prefab, Spawn.transform.position, Quaternion.identity) as GameObject;
		NetworkServer.Spawn(go);
	}

	// Update is called once per frame
	void Update () {
	
	}
}
現在、Unityを用いて、ネットワークゲームを制作しているノウルと申します。
このコードなのですが。10行目にこんなエラーが出ます。

Assets/Script/Enemy_Spawner.cs(10,30): error CS0115: `Enemy_Spawner.OnStartServer()' is marked as an override but no suitable method found to override

グーグル翻訳で翻訳して調べてみたり。ggったりして調べてみたんですが、さっぱりわかりません。override型の部分でエラーが出ていることは何となくわかりました。

Re: 【Unity】override型を使うとエラーが出る

Posted: 2016年10月19日(水) 01:04
by manntera
継承元である、 MonoBehaviour には OnStartServer なんかないよー(´・ω・`)って言ってる。
OnStartServer があるのは NetworkBehaviour だから、そいつから継承しよね

Re: 【Unity】override型を使うとエラーが出る

Posted: 2016年10月19日(水) 09:31
by hide
override"型"と言ってるあたりがすごくすごくすごく怪しいのですが
そもそもoverrideがなんだかの理解は大丈夫ですか?
ご自身が各行で何を書いているのかわかっていないということはないですか?

Re: 【Unity】override型を使うとエラーが出る

Posted: 2016年10月19日(水) 21:42
by プラム
>>mannteraさん

あっ()
なるほど、そういうことでしたか・・・すいません、解決しました。C#やオブジェクト指向の仕組みをまだあまり理解してないので。。。すいません。

>>hideさん。型じゃないですね。すいませんどう表現するかわからなかったもので。。。
あまり理解してないんですが、継承かなんかのやつですよね、知識不足な者ですいません。。。

Re: 【Unity】override型を使うとエラーが出る

Posted: 2016年10月20日(木) 19:28
by hide
c#の書籍なりwebサイトなり一通り軽くやっていれば
overrideがエラーメッセージに出た時点で継承元を調べればいいと理解できるはずです。
やり方が非効率的と感じませんか?
言語がまともにわからないままゲームだネットワークだと手をつけていて
駆け足すぎて遠回りしているように見えます。
一度基本に目を向けなおしてみては?