質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

Q&A

解決済

1回答

1469閲覧

Unity メソッド名にエラー出る

ssssggg

総合スコア40

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

0グッド

0クリップ

投稿2019/03/12 12:24

編集2019/03/12 12:28

C#で、スクリプトを書いていたところ、新しいメソッド"PName"を追加しようとすると、メソッド名のところにエラーが出てしまいました。
原因がわからないのですがどうしたらよいのでしょうか?
原因と正しい文法の提示をお願いします。
できれば、既存のスクリプトを変更するのではなく、新しく作ったメソッド"PName"を既存のスクリプトに対応させる形での改善をお願いします。

追記
エラーは下記のようなものです。
'Message.PName(string)': not all code paths return a value

コード

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Message : MonoBehaviour
{
public Text messagewindow;
int m_syori = 0;
//int messageenzan = 1;
string daihon;

private string PName(string prayername) { //"PName"のところにエラーが出ました。 } private void Start() { daihon = "アイウエオ";//daihonrist[messageenzan]; //messagewindow = GetComponent<Text>(); // アタッチされたTextコンポーネントを参照 messagewindow.text = "";//textを初期化 // OutputMessage というコルーチンを daihon を引数に実行 StartCoroutine("OutputMessage", daihon); } // OutputMessage 引数 string IEnumerator OutputMessage(string msg) { m_syori = 1; //string daihon = daihonrist[messagezan]; transform.position = new Vector2(-0.8f, -5.5f); // 引数でもらった文字列の文字数分繰り返し for (int i = 0; i < msg.Length; i++) { var outputText = msg.Substring(i, 1); // 先頭からi文字目を切り出す messagewindow.text = messagewindow.text + outputText;// テキストに反映 yield return new WaitForSeconds(0.1f); // x秒待つ } m_syori = 0; Debug.Log("hai"); } private void Update() { if (m_syori == 0) { if (Input.GetKeyDown(KeyCode.Space)) { messagewindow.text = ""; transform.position = new Vector2(1000, 1000);//画面から消す } } }

}

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2019/03/12 12:26

エラーが出たなら、エラーメッセージを、そのままの形で提示してください。
ssssggg

2019/03/12 12:29

今追記いたしました。すみませんでした。
guest

回答1

0

ベストアンサー

private string PName(string prayername) { //"PName"のところにエラーが出ました。

}

たんに戻り値書いてないのでその警告が出てるだけなんでは


google翻訳
'Message.PName(string)':すべてのコードパスが値を返すわけではありません

そういうことですね

投稿2019/03/12 12:30

編集2019/03/12 12:31
y_waiwai

総合スコア87747

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ssssggg

2019/03/12 12:40

回答ありがとうございます。 ですが、すみません、返り値は書いたのですがエラーが消えません。 自分の文法が間違っているのでしょうか? コード private string PName(string prayername) { } private void Start() { PName("Tom"); (以下省略)
y_waiwai

2019/03/12 12:45

それは戻り値を書いたことにはなってません エラーを消すなら、 private string PName(string prayername) { return "error!!!"; } とでも書いておきましょう
ssssggg

2019/03/12 12:49 編集

回答ありがとうございました。無事解決いたしました。
ssssggg

2019/03/12 12:47

指摘ありがとうございます。 自分が引数と戻り値を正しく理解していませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問