override protected void Start()
    {
        base.Start();
        enemyManager = SystemClass.enemyManager;
        InitNormaAndDefeatedAction();
        WhenQuestCleared = () => { Debug.Log("subujugation completed"); };
        if (!SystemClass.OuterMapDict.ContainsKey(outerMapName))
        {
            Debug.Log(outerMapName + "という名前のOuterMapがSystemClassのOuterMapDictに見つかりません");
            return;
        }
        var innerMapDict = SystemClass.OuterMapDict[outerMapName].innerMapDict;

        if (!innerMapDict.ContainsKey(innerMapName))
        {
            Debug.Log(innerMapName + "という名前のinnerMapが" + outerMapName + "のinnerMapDictに見つかりません");
        }
        var innerMap    = innerMapDict[innerMapName];
        var spotManager = innerMap.GetComponent <SpawnSpotManager>();

        if (spotManager.SpotList == null)
        {
            Debug.Log("spotlist is null");
            return;
        }
        foreach (string name in norma.Keys)
        {
            enemyManager.EnemyGenerateRandomAtInnerMap(name, norma[name], innerMap);
        }
    }
    void Start()
    {
        RaycastTrackerScript tracker = GetComponent <RaycastTrackerScript>();
        GameObject           player  = GameObject.FindGameObjectWithTag("Player");//SystemClassにPlayerの参照を持たせておいてそこから持ってくるようにするかも check

        tracker.InitDestination(player.transform);
        enemyManager = SystemClass.enemyManager;
        name         = gameObject.name;//GameObjectと別にする場合は要変更
        status       = GetComponent <StatusScript>();
        palameter    = GetComponent <PalameterScript>();
    }
 void Start()
 {
     enemyManager = transform.Find("EnemyManager").GetComponent <EnemyManager_Behaviour>();
 }