Unity¤Ë´ØÏ¢¤¹¤ëµ­»ö¤Ç¤¹



Àß·×


¡¡¥¨¥ê¥¢¤Î¿Ê¹Ô´ÉÍý¤Ë¤Ä¤¤¤Æ¤ÏGameManager¥¯¥é¥¹¤Ë¼ÂÁõ¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤³¤Î¼ê½ç¤Ç¤Ï¥¹¥Æ¡¼¥¸¤Î¿Ê¹Ô´ÉÍý¤È¡¢
¤½¤ì¤Ë¤Þ¤Ä¤ï¤ë½èÍý(¥¹¥Æ¡¼¥¸¤Î¥¯¥ê¥¢È½Äê¡¢¥²¡¼¥à¤Î¥¯¥ê¥¢È½Äê¡¢¼¡¤Î¥¹¥Æ¡¼¥¸¤Ø¤ÎÁ«°Ü½èÍý¤Ê¤É¡Ë¤Ë¤Ä¤¤¤Æ¼ÂÁõ¤ò¹Ô¤¤¤Þ¤¹¡£


¡ã¼ÂÁõÆ°²è¡¡¥²¡¼¥à¥¯¥ê¥¢È½Äê¡ä
https://gyazo.com/e2f878244debf1240aed35b63fcde4bf


¥¹¥Æ¡¼¥¸¤Î¿Ê¹Ô¾õÂÖ
¡¡¥¹¥Æ¡¼¥¸Æâ¤ÎÁ´¥¨¥ê¥¢¤ò¥¯¥ê¥¢
¡¡¡¡¡¡¢­
¡¡GameData¥¯¥é¥¹¤Ë¥¯¥ê¥¢¤·¤¿¥¹¥Æ¡¼¥¸¤ÎÈÖ¹æ¤òÊݸ
¡¡¡¡¡¡¢­
¡¡¡ã¥²¡¼¥à¤Î¥¯¥ê¥¢È½Äê¡¡Á´¥¹¥Æ¡¼¥¸¥¯¥ê¥¢¡©¡ä¡¡¡¡¢ª¡¡Á´¥¹¥Æ¡¼¥¸¤ò¥¯¥ê¥¢¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¥²¡¼¥à¥¯¥ê¥¢
¡¡¡¡¡¡¢­
¡¡(ɬÍפʤé¤Ð)Á´¥¹¥Æ¡¼¥¸¥¯¥ê¥¢¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢¼¡¤Î¥¹¥Æ¡¼¥¸³«»ÏÁ°¤Î¥¤¥Ù¥ó¥È¤òºÆÀ¸
¡¡¡¡¡¡¢­
¡¡¼¡¤Î¥¹¥Æ¡¼¥¸¤ò¥¹¥¿¡¼¥È
¡¡¡¡¡¡¢­
¡¡¤³¤Î¼ê½ç¤ò¥²¡¼¥à¥¯¥ê¥¢¤¹¤ë¤Þ¤ÇÊÖ¤¹¡£
¡¡


¼ÂÁõ¤Î¼ê½ç


¡¡¼ÂÁõ¼ê½ç¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£

¡¡£±¡¥GameData ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë
¡¡£²¡¥GameData ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Æ¡¢GameData¥¹¥¯¥ê¥×¥È¤ò¥¢¥¿¥Ã¥Á¤¹¤ë
¡¡£³¡¥GameManager¥¯¥é¥¹¤ò½¤Àµ¤¹¤ë
¡¡£´¡¥¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆÆ°ºî¤ò³Îǧ¤¹¤ë


¿·¤·¤¯³Ø½¬¤¹¤ëÆâÍÆ


¡¡¡¦ifʸ¤Î¾ò·ï¼°¤ËÌá¤êÃͤò»ý¤Ä¥á¥½¥Ã¥É¤òÍøÍѤ¹¤ë¾ì¹ç¤Î¼ÂÁõÎã


£±¡¥GameData ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë


¡¡¥·¡¼¥óÁ«°Ü¤ò¹Ô¤Ã¤¿ºÝ¤Ë¥¯¥ê¥¢¤·¤¿¥¹¥Æ¡¼¥¸¤ÎÈÖ¹æ¤òÊÝ»ý¤Ç¤­¤ë¤è¤¦¤Ë¡¢DontDestroyOnLoad¥á¥½¥Ã¥É¤òÍøÍѤ·¤¿¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£
¸½ºß GameManager¥¯¥é¥¹¤Ë¤Æ´ÉÍý¤·¤Æ¤¤¤ë currentStageNo ÊÑ¿ô¤ò¤³¤Á¤é¤Î¥¯¥é¥¹¤Ë°ÜÆ°¤µ¤»¤Æ¡¢¤³¤Á¤é¤Ç´ÉÍý¤ò¹Ô¤¦¤è¤¦¤Ë¤·¤Þ¤¹¡£
¥·¡¼¥óÁ«°Ü¤ò¹Ô¤Ã¤Æ¤âÃͤ¬ÊÝ»ý¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢¤³¤Î¥¯¥é¥¹¤ò»²¾È¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢É¬Íפʥ¹¥Æ¡¼¥¸¤ÎÈÖ¹æ¤ò»²¾È¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡»²¾È¤·¤ä¤¹¤¤¤è¤¦¤Ë¡¢GameData¥¯¥é¥¹¤Ï¥·¥ó¥°¥ë¥È¥ó¡¦¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó¤Ë¤ÆºîÀ®¤ò¹Ô¤¤¤Þ¤¹¡£


GameData.cs



£²¡¥GameData ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Æ¡¢GameData¥¹¥¯¥ê¥×¥È¤ò¥¢¥¿¥Ã¥Á¤¹¤ë


¡¡¥Ò¥¨¥é¥ë¥­¡¼¤Î²¿¤â¤Ê¤¤Éôʬ¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤òɽ¼¨¤·¡¢Create Empty ¤òÁªÂò¤·¤Þ¤¹¡£
¥Ò¥¨¥é¥ë¥­¡¼¤Ë¶õ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬£±¤ÄºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢Ì¾Á°¤ò GameData ¤ËÊѹ¹¤·¤Þ¤¹¡£

¡¡Àè¤Û¤ÉºîÀ®¤·¤¿ GameData ¥¹¥¯¥ê¥×¥È¤ò GameData ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥¿¥Ã¥Á¤·¤Æ¤¯¤À¤µ¤¤¡£


GameData ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü


¡¡CurrentStageNo ÊÑ¿ô¤Ï¥²¡¼¥à¤Î¿Ê¹Ô¤Ë¹ç¤ï¤»¤Æ¥«¥¦¥ó¥È¥¢¥Ã¥×¤µ¤ì¤ëÃͤǤ¹¤Î¤Ç¡¢¤³¤ÎÃÍ¤Ï 0 ¤Î¤Þ¤Þ¤Ç¹½¤¤¤Þ¤»¤ó¡£
0 = ¥¹¥Æ¡¼¥¸£±¡¢1 = ¥¹¥Æ¡¼¥¸£²¡¢¤È¤Ê¤ê¡¢¤³¤ÎÃͤò¥¹¥Æ¡¼¥¸¥Ç¡¼¥¿¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹¤ÎÃͤÈϢư¤µ¤»¤Þ¤¹¡£(¥¹¥Æ¡¼¥¸¥Ç¡¼¥¿¾å¤Î¥¹¥Æ¡¼¥¸£±¤Ï¡¢¥¤¥ó¥Ç¥Ã¥¯¥¹ 0 È֤Ǥ¹)

¡¡BattleTime ÊÑ¿ô¤Ï¤Þ¤À̤»ÈÍѤǤ¹¡£¤â¤·¤â¥¨¥ê¥¢Æâ¤ä¥¹¥Æ¡¼¥¸Æâ¤Ë¥²¡¼¥à¤Î»Ä¤ê»þ´Ö¤òÀßÄꤹ¤ë¾ì¹ç¤ËÍøÍѤǤ­¤Þ¤¹¡£
¤³¤ÎÃͤ⸽ºß¤Ï 0 ¤Î¤Þ¤Þ¤Ç¹½¤¤¤Þ¤»¤ó¡£


£³¡¥GameManager¥¯¥é¥¹¤ò½¤Àµ¤¹¤ë


¡¡currentStageNo ÊÑ¿ô¤ò GameData ¥¯¥é¥¹¤Ø°ÜÆ°¤·¤Þ¤·¤¿¤Î¤Ç¡¢¤³¤ÎÊÑ¿ô¤Ï¥³¥á¥ó¥È¥¢¥¦¥È¤·¤Þ¤¹¡£
¤½¤ì¤Ë¹ç¤ï¤»¤Æ¡¢InitStage¥á¥½¥Ã¥ÉÆâ¤Î¤³¤ÎÊÑ¿ô¤òÍøÍѤ·¤Æ¤¤¤¿Éôʬ¤ò GameData ¥¯¥é¥¹¤ò»²¾È¤¹¤ë½ñ¼°
(currentStageNo => GameData.instance.currentStageNo)¤ËÊѹ¹¤·¤Þ¤¹¡£

¡¡GameData¥¯¥é¥¹¤Ï¥·¡¼¥óÁ«°Ü¤·¤Æ¤âÇË´þ¤µ¤ì¤Ê¤¤¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¥¯¥ê¥¢¤·¤Æ¤¤¤ë¥¹¥Æ¡¼¥¸¤ÎÈֹ椬ÊÝ»ý¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤ÎÃͤò»²¾È¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¹¥Æ¡¼¥¸¥¯¥ê¥¢¸å¤Ë¤¤¤º¤ì¤Î¥·¡¼¥ó¤ËÁ«°Ü¤·¤Æ¤¤¤Æ¤â¡¢¼¡¤ËÍÑ°Õ¤¹¤ë¥¹¥Æ¡¼¥¸¤ÎÈÖ¹æ¤ò»²¾È¤·¤Æ¥²¡¼¥à¤ò¿Ê¹Ô¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£¡¡

¡¡¥¹¥Æ¡¼¥¸¥¯¥ê¥¢´ØÏ¢¤Î½èÍý¤È¤·¤Æ¡¢¿·¤·¤¯¥á¥½¥Ã¥É¤ò£³¤ÄÄɲ䷤Ƥ¤¤Þ¤¹¡£¥¹¥Æ¡¼¥¸¤Î¥¯¥ê¥¢È½Äê¤ò¹Ô¤¦¥á¥½¥Ã¥É¤ä¡¢
¥¹¥Æ¡¼¥¸¤ÎÁ«°Ü¡¢Ê̤Υ·¡¼¥ó¤Ø¤ÎÁ«°Ü¤Ê¤É¤Î½èÍý¤òÄɲ乤ë¥á¥½¥Ã¥É¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡Update¥á¥½¥Ã¥É¤Î½èÍý¤ò½¤Àµ¤·¤Æ¡¢¤³¤ì¤é¤ÎÄɲä·¤¿¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¤Æ¥¹¥Æ¡¼¥¸¥¯¥ê¥¢¤ÎȽÄê¤ä¥²¡¼¥à¥¯¥ê¥¢¤Î½èÍý¤Ë¡¢½èÍý¤ò¤Ä¤Ê¤²¤Æ¤¤¤­¤Þ¤¹¡£


GameManager.cs



¡ãifʸ¤Î¾ò·ï¼°¤ËÌá¤êÃͤò»ý¤Ä¥á¥½¥Ã¥É¤òÍøÍѤ¹¤ë¾ì¹ç¤Î¼ÂÁõÎã¡ä


¡¡ifʸ¤Ë¤ÏÌá¤êÃͤò»ý¤Ä¥á¥½¥Ã¥É¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢¤½¤ÎÌá¤êÃͤÎÃͤòɾ²Á¤·¤ÆȽÄê¤ò¹Ô¤¦¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

  // ¥¹¥Æ¡¼¥¸¤ò¥¯¥ê¥¢¤·¤¿¤«³Îǧ
  if (CheckStageClear() == true) {  // true ¤«¤É¤¦¤«È½Äê¡£½ñ¼°¤Ï¡¢if(CheckStageClear()){¡¡¤Ç¤â¤è¤¤
      // ¥¯¥ê¥¢¤·¤Æ¤¤¤ì¤Ð¡¢¼¡¤Î¥¹¥Æ¡¼¥¸¤ò¥¹¥¿¡¼¥È
      NextStage();
  } else {
      // ¥¯¥ê¥¢¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¡¢¼¡¤Î¥¨¥ê¥¢¤ò¥¹¥¿¡¼¥È                 
      SetUpNextArea();
  }

¡¡¤³¤³¤Ç¤Ï¡¢CheckStageClear¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¡¢¤³¤Î¥á¥½¥Ã¥É¤ÎÌá¤êÃͤ¬ bool ·¿¤Ç¤¢¤ë¤¿¤á¡¢¤½¤ÎÌá¤êÃͤòɾ²Á¤·¤Æ¾ò·ïʬ´ô¤ò¹Ô¤¤¤Þ¤¹¡£

    /// <summary>
    /// ¥¹¥Æ¡¼¥¸¤Î¥¯¥ê¥¢È½Äê
    /// </summary>
    private bool CheckStageClear() {

        // ¥¨¥ê¥¢¤ÎÈֹ椬¥¹¥Æ¡¼¥¸¤ÎºÇ¸å¤Î¥¨¥ê¥¢¤ÎÈֹ椫¤É¤¦¤«³Îǧ¤¹¤ë
        if (areaIndex >= currentStageData.areaDatas.Count) {
            return true;
        }
        return false;
    }

¡¡CheckStageClear ¥á¥½¥Ã¥É¤Ë¤Ï bool ·¿¤ÎÌá¤êÃͤ¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤³¤Î¥á¥½¥Ã¥É¤Î½èÍý·ë²Ì¤¬¡¢ifʸ¤Î¾ò·ï¼°¤ËÂФ·¤Æ¤Îɾ²ÁÂоݤȤʤꡢ¾ò·ï¤òËþ¤¿¤¹¤«¡¢Ëþ¤¿¤·¤Æ¤¤¤Ê¤¤¤«¤òȽÄꤷ¤Þ¤¹¡£

¡¡½èÍý¤Î½çÈ֤Ȥ·¤Æ¤Ï

¡¡¡¡if ʸ¤Ë½èÍý¤¬Åþ㤹¤ë¡¡¢ª¡¡CheckStageClear¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¡¢¤½¤Î·ë²Ì¤Ç¤¢¤ëbool·¿¤ÎÃͤ¬ if ʸÆâ¤Î¾ò·ï¼°¤ËÌá¤ë¡¡¢ª¡¡Ìá¤êÃͤò if ʸ¤¬É¾²Á¤·¤Æ¾ò·ïʬ´ô¤¹¤ë

¡¡¤È¤¤¤¦Î®¤ì¤Ë¤Ê¤ê¤Þ¤¹¡£


£´¡¥¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆÆ°ºî¤ò³Îǧ¤¹¤ë


¡¡ºÇ½é¤Ë¥²¡¼¥à¥¯¥ê¥¢¤ÎȽÄê¤Î³Îǧ¤ò¹Ô¤¤¤Þ¤¹¡£¥¹¥Æ¡¼¥¸¥Ç¡¼¥¿¤ò£±¤Äʬ¤Î¥¹¥Æ¡¼¥¸¾ðÊó¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¥¨¥ê¥¢¤Î¿ô¤Ï¼«Í³¤Ç¤¹¡£

¡¡¥¹¥Æ¡¼¥¸¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¥¨¥ê¥¢¤ò¤¹¤Ù¤Æ¥¯¥ê¥¢¤·¤Æ±¦Ã¼¤Î°ÜÆ°Èϰϳ°¤Ø¿¯Æþ¤·¤¿¾ì¹ç¡¢¥²¡¼¥à¥¯¥ê¥¢¤ÎȽÄ꤬¹Ô¤ï¤ì¤Þ¤¹¡£


¡ã¼ÂÁõÆ°²è¡ä
https://gyazo.com/e2f878244debf1240aed35b63fcde4bf


¡¡
¡¡¼¡¤Ë¡£¥¹¥Æ¡¼¥¸¥¯¥ê¥¢¤ÎȽÄê¸å¤Ë¡¢¼¡¤Î¥¹¥Æ¡¼¥¸¤ËÁ«°Ü¤¹¤ë½èÍý¤Î³Îǧ¤ò¹Ô¤¤¤Þ¤¹¡£
¥¹¥Æ¡¼¥¸¥Ç¡¼¥¿¤Ë£²¤Äʬ¤Î¥¹¥Æ¡¼¥¸¾ðÊó¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£¥¨¥ê¥¢¤Î¿ô¤Ï¼«Í³¤Ç¤¹¡£


StageList¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



Stage 0 ¥¨¥ê¥¢ 0



Stage 0 ¥¨¥ê¥¢ 1



Stage 1 ¥¨¥ê¥¢ 0



Stage 1 ¥¨¥ê¥¢ 1



¡¡£±¤ÄÌܤΥ¨¥ê¥¢¤òÁ´Éô¥¯¥ê¥¢¤·¤¿¾õÂ֤Ǽ¡¤Î¥¨¥ê¥¢¤Ë°Ü¤í¤¦¤È¤¹¤ë¤È¡¢¤½¤³¤Ç¥¯¥ê¥¢¤ÎȽÄ꤬ȯÀ¸¤·¤Þ¤¹¡£
¤¹¤Ù¤Æ¤Î¥¹¥Æ¡¼¥¸¤Ï¥¯¥ê¥¢¤·¤Æ¤¤¤Þ¤»¤ó¤Î¤Ç¡¢¤³¤³¤Ç¤Ï¼¡¤Î¥¹¥Æ¡¼¥¸¤Ë°Ü¹Ô¤¹¤ëȽÄê¤Ë¤Ê¤ê¤Þ¤¹¡£


Console²èÁü



¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£¤ªÈè¤ìÍͤǤ·¤¿¡£

¥³¥á¥ó¥È¤ò¤«¤¯


¡Öhttp://¡×¤ò´Þ¤àÅê¹Æ¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

ÍøÍѵ¬Ìó¤ò¤´³Îǧ¤Î¤¦¤¨¤´µ­Æþ²¼¤µ¤¤

Menu



´ðÁÃ

µ»½Ñ/Ãμ±(¼ÂÁõÎã)

3D¥¢¥¯¥·¥ç¥ó¥²¡¼¥à

2D¤ª¤Ï¤¸¤­¥²¡¼¥à(ȯŸÊÔ)

2D¶¯À©²£¥¹¥¯¥í¡¼¥ë¥¢¥¯¥·¥ç¥ó(ȯŸÊÔ)

2D¥¿¥Ã¥×¥·¥å¡¼¥Æ¥£¥ó¥°(³ÈÄ¥ÊÔ)

¥ì¡¼¥¹¥²¡¼¥à(È´¿è)

2DÊüÃÖ¥²¡¼¥à(ȯŸÊÔ)

3D¥ì¡¼¥ë¥¬¥ó¥·¥å¡¼¥Æ¥£¥ó¥°(±þÍÑÊÔ)

3Dæ½Ð¥²¡¼¥à(È´¿è)

2D¥ê¥¢¥ë¥¿¥¤¥à¥¹¥È¥é¥Æ¥¸¡¼

3D¥¿¥Ã¥×¥¢¥¯¥·¥ç¥ó(NavMeshAgent »ÈÍÑ)

2D¥È¥Ã¥×¥Ó¥å¡¼¥¢¥¯¥·¥ç¥ó(¥«¥¨¥ë¤Î°Ù¤Ë¡Á¡¢¥Ü¥³¥¹¥«¥¦¥©¡¼¥ºÉ÷)

VideoPlayer ¥¤¥Ù¥ó¥ÈϢư¤Î¼ÂÁõÎã

VideoPlayer ¥ê¥¹¥ÈÆ⤫¤é¥à¡¼¥Ó¡¼ºÆÀ¸¤Î¼ÂÁõÎã(ȯŸ)

AR ²èÁüÉÕ¤­¥ª¥Ö¥¸¥§¥¯¥ÈÀ¸À®¤Î¼ÂÁõÎã

AR ¥ê¥¹¥ÈÆ⤫¤éÀ¸À®¤Î¼ÂÁõÎã(ȯŸ)

2D¥È¥Ã¥×¥Ó¥å¡¼¥¢¥¯¥·¥ç¥ó(¥µ¥Ð¥¤¥Ð¡¼É÷)

private



¤³¤Î¥µ¥¤¥ÈÆâ¤ÎºîÉʤϥæ¥Ë¥Æ¥£¤Á¤ã¤ó¥é¥¤¥»¥ó¥¹¾ò¹à¤Î¸µ¤ËÄ󶡤µ¤ì¤Æ¤¤¤Þ¤¹¡£

´ÉÍý¿Í/Éû´ÉÍý¿Í¤Î¤ßÊÔ½¸¤Ç¤­¤Þ¤¹