質問: ### 前提・実現したいこと UnityでStandardAssetに入っているThiedPersonCharacterに複数のスクリプトをアタッチしたが動作しないスクリプトがあるので、これを動作するようにしたい。 ### 発生している問題・エラーメッセージ スクリプトの内容が動作しませんでした。しかし、コンソールにエラーメッセージは表示されませんでした。 ### 該当のソースコード ``` using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerShooter : MonoBehaviour { public void start() { print("start"); } public void start() { if(Input.KeyDown(KeyCode.I)) { print("I"); } fire(); } public void fire() { print("fire"); } } ``` ### 試したこと Start関数やUpdate関数の中に書いたprint関数が動作しなかったので、スクリプトが動作していないことは確認できました。 同じゲームオブジェクトにアタッチしたスクリプト(全部で4つ)の中で動かなかったスクリプトだけ、インスペクターでアクティブ/非アクティブを切り替えるチェックマークのようなものが表示されていませんでした(下画像)。もしかして見えないだけで非アクティブになっているのでは、と疑っています。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/1bbcb44eea26c1ecb49c69c54a309b82.png) ### 補足情報(FW/ツールのバージョンなど) このスクリプトをアタッチしているゲームオブジェクトはUnity Standard AssetsのThird Person Character です。 Unityのバージョン 2017.4.10f1 使用OS MacOS Mojave
回答: Startのsが小文字になっていますが・・・ あと、同名かつ引数の種類、順番が一緒の関数(今回の場合はstart)は定義できません。 また、MonoBehaviourを継承したスクリプトの左上に表示されるチェックボックスはMonoBehaviour.enabledと対応していますが、Start、及びUpdateが定義されていない等の基準でenabledの切り替えが無意味であると判定され、チェックボックスが非表示になるようです。