¡¡EnemyController ¥¹¥¯¥ê¥×¥È¤Î½¤Àµ¤¬½ª¤ï¤ê¡¢EnemyDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ç¡¼¥¿¤òÈ¿±Ç¤·¤ÆÍøÍѤǤ¤ë½àÈ÷¤¬´°Î»¤·¤Þ¤·¤¿¡£
¡¡¤Ä¤Å¤¤¤Æ¡¢EnemyGenerator ¥¹¥¯¥ê¥×¥ÈÆâ¤Ë EnemyDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ç¡¼¥¿¤ò°·¤¨¤ë¤è¤¦¤Ë¤·¡¢
¤½¤Î¥Ç¡¼¥¿¤òÍøÍѤ·¤Æ¡¢
À¸À®¤·¤¿¥¨¥Í¥ß¡¼¤Î¥¯¥í¡¼¥ó¤Ë¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤òÁ÷¤êÅϤ¹½èÍý¤ò½¤Àµ¡¦Äɲäò¹Ô¤¤¤Þ¤¹¡£
¡¡Á°¤ÎÀ߷פÇÀâÌÀ¤·¤¿¤è¤¦¤Ë¡¢¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤â
ºîÀ®¤·¤¿¤À¤±¤Ç¤ÏÍøÍѤǤ¤Þ¤»¤ó¡£
ÍøÍѤ¹¤ë¤¿¤á¤Ë¤Ï
EnemyDataSO ·¿¤ÎÊÑ¿ô¤òÀë¸À¤·¡¢¤½¤ÎÊÑ¿ô¤Ë¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÂåÆþ¤·¤Æ¡¢»²¾È¤·¤ÆÍøÍѤ·¤Æ¤¤¤¯ÊýË¡¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡EnemyGenerator ¥¹¥¯¥ê¥×¥È¤Ë¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ðÊó¤ò°·¤¨¤ë¤È¤¤¤¦¤³¤È¤Ï¡¢
¤³¤Î¥¹¥¯¥ê¥×¥È¤Ë¤ª¤¤¤ÆÀ¸À®¤·¤¿¥¨¥Í¥ß¡¼¤Î¥¯¥í¡¼¥ó¤ËÂФ·¤Æ¡¢
¥¨¥Í¥ß¡¼¤È¤·¤Æ¤Î¿¶¤ëÉñ¤¤¤ò·èÄꤹ¤ëÉôʬ¤Þ¤Ç¤¬¼ÂÁõ¤µ¤ì¤ëÀ߷פˤʤê¤Þ¤¹¡£
¤½¤·¤Æ¤½¤Î¥¨¥Í¥ß¡¼¤Î¾ðÊó¤ò EnemyController ¥¹¥¯¥ê¥×¥È¦¤ËÅϤ¹¤³¤È¤Ç¡¢
EnemyController ¥¹¥¯¥ê¥×¥È¤¬¥¨¥Í¥ß¡¼¤Î¾ðÊó¤òÀßÄꤷ¤Æ¤¯¤ì¤ë½èÍý¤Îή¤ì¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¡¡¤½¤Î¤¿¤á¤Ë¤Ï»öÁ°½àÈ÷¤È¤·¤Æ¿¤¯¤Î½èÍý¤Î¼ÂÁõ¤¬É¬Íפˤʤê¤Þ¤¹¡£
¡ã¥í¥¸¥Ã¥¯¤Îή¤ì¡ä
¡þ£±¡¥¥¨¥Í¥ß¡¼ÍѤΥǡ¼¥¿¤ò¡¢¥Î¡¼¥Þ¥ë¤Î¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤À¤±¤¬Ãê½Ð¤µ¤ì¤Æ¤¤¤ë List ¤È¥Ü¥¹¤Î¥Ç¡¼¥¿¤À¤±¤¬Ãê½Ð¤µ¤ì¤Æ¤¤¤ë List ¤Î£²¤Ä¤Ëʬ¤±¤Æ¡¢¿·¤·¤¯ºîÀ®¤¹¤ë¤¿¤á¤ÎÊÑ¿ô¤òÍÑ°Õ¤¹¤ë
¡þ£²¡¥EnemyDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÍøÍѤ·¤Æ¡¢¡Ú£±¡Û¤Î List ¤ò¤¾¤ì¤¾¤ìºîÀ®¤·¡¢ÊÑ¿ô¤ËÂåÆþ¤¹¤ë
¡þ£³¡¥¥¨¥Í¥ß¡¼¤ÎÀ¸À®¤Ë¤¢¤¿¤ê¡¢¥Î¡¼¥Þ¥ë¤Î¥¨¥Í¥ß¡¼¤òÀ¸À®¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¥Î¡¼¥Þ¥ë¤Î¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤Î List¡¢¥Ü¥¹¤Î¥¨¥Í¥ß¡¼¤òÀ¸À®¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¥Ü¥¹¤Î¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤Î List ¤ò»È¤¦Ê¬´ô¤òºîÀ®¤¹¤ë
¡þ£´¡¥¡Ú£³¡Û¤Î List ¤ÎÃ椫¤é¥é¥ó¥À¥à¤Ê¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤ò£±¤ÄÁªÂò¤·¤Æ¡¢¤½¤ì¤òÀ¸À®¤·¤¿¥¨¥Í¥ß¡¼¤Î¥¯¥í¡¼¥ó¤Î¡Ö¥¨¥Í¥ß¡¼¤Î¾ðÊó(EnemyData)¡×¤È¤·¤Æ·èÄꤹ¤ë
¡»£µ¡¥¥¨¥Í¥ß¡¼¤Î¥×¥ì¥Õ¥¡¥Ö¤«¤é¥¯¥í¡¼¥ó¤ÎÀ¸À®¤ò¹Ô¤¦
¢¤£¶¡¥EnemyController ¥¹¥¯¥ê¥×¥È¤Î SetUpEnemy ¥á¥½¥Ã¥É¤Ë¡Ú£´¡Û¤Ç·èÄꤷ¤¿¥¨¥Í¥ß¡¼¤Î¾ðÊó¤ò°ú¿ô¤È¤·¤ÆÅϤ¹
¡»£·¡¥EnemyController ¥¹¥¯¥ê¥×¥È¤Î SetUpEnemy ¥á¥½¥Ã¥É¤Ë¤ª¤¤¤Æ¡¢°ú¿ô¤Ç¼èÆÀ¤·¤¿¥¨¥Í¥ß¡¼¤Î¾ðÊó¤òÍøÍѤ·¤Æ¡¢¥¨¥Í¥ß¡¼¤È¤·¤Æ¤Î¿¶¤ëÉñ¤¤¤òÀßÄꤹ¤ë
¡¡¡þ¤ÎÉôʬ¤Ï¿·¤·¤¯¼ÂÁõ¤¹¤ëÊÑ¿ô¤ä½èÍý¡¢¡»¤Ï¼ÂÁõºÑ¤Î½èÍý¡¢¢¤¤Ï½¤Àµ¤ò¹Ô¤¦½èÍý¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¤Þ¤ººÇ½é¤Ë¡þ£±¤Î¤¿¤á¤Ë¡¢
EnemyData ·¿¤Î List ¤ÎÊÑ¿ô¤ò£²¤ÄÍÑ°Õ¤·¤Æ¤ª¤¤Þ¤¹¡£
EnemyDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï¤¹¤Ù¤Æ¤Î¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤¬ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢
¼ÂºÝ¤ËÍøÍѤ¹¤ëºÝ¤Ë¤Ï¡¢
ÍøÍѼÂÂ֤˹ç¤ï¤»¤ÆɬÍפʾðÊó¤òºîÀ®¤·¤Æ±¿ÍѤ·¤Æ¤¤¤¯¤³¤È¤¬É¬Íפˤʤê¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¼«ÂΤϥ²¡¼¥à¤Î
¥Þ¥¹¥¿¡¼¥Ç¡¼¥¿¤È¤·¤ÆÍøÍѤ·¡¢¥²¡¼¥àÆâ¤Ç¤Ï¤½¤ì¤ò¾å¼ê¤¯³èÍѤ·¤Æ±¿ÍѤ·¤Æ¤¤¤¯¤È¤¤¤¦·Á¼°¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡º£²ó¤Î¾ì¹ç¡¢¥¨¥Í¥ß¡¼¤òÀ¸À®¤¹¤ë¤¿¤Ó¤ËËè²ó½èÍý¤ò¤¹¤ë¡¢
¤¹¤Ù¤Æ¤Î¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤ÎÃ椫¤éÆÃÄê¤Î¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤òõ¤¹¡¢¤È¤¤¤¦½èÍý¤ò
¤è¤ê¥³¥ó¥Ñ¥¯¥È¤Ë¡¢
ɬÍפʾðÊó¤ÎÃ椫¤é¤À¤±¸¡º÷¤·¤ÆÍøÍѤǤ¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ë¡¢¤½¤ì¤¾¤ì¤Î¥¨¥Í¥ß¡¼¤Î¼ïÎà¤òÆÃÄꤷ¤¿ List ¤òºîÀ®¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¸½ºß¤Ï¥Ü¥¹¤«¡¢¤½¤ì°Ê³°¤Î¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤·¤«¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢¤³¤Î£²¤Ä¤ËʬÎष¤Æ List ¤òÍÑ°Õ¤·¤Æ¤ª¤¤Þ¤¹¡£
¤½¤¦¤¹¤ë¤³¤È¤è¤Ã¤Æ¡¢¥Ü¥¹¤òÀ¸À®¤¹¤ëºÝ¤Ë¤Ï¡¢¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò¤¹¤Ù¤Æ¸¡º÷¤·¤Æ¥Ü¥¹¤ò¸«¤Ä¤±¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢
¥Ü¥¹¤Î¥Ç¡¼¥¿¤Î¤ß¤¬Æþ¤Ã¤Æ¤¤¤ë List ¤«¤é¸¡º÷¤ò¹Ô¤¦¤è¤¦¤Ë¤¹¤ëÀ߷פˤʤäƤ¤¤Þ¤¹¡£
¡¡Â³¤¤¤Æ¤Ï¡¢¤³¤Î£²¤Ä¤Î List ¤ËÂФ·¤Æ¡¢¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ç¡¼¥¿¤òÃê½Ð¤·¤Æ
¥Î¡¼¥Þ¥ë¤Î List ¤Ë¤Ï¥Î¡¼¥Þ¥ë¥¿¥¤¥×¤Î¤Î¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤Î¤ß¤¬ÂåÆþ¤µ¤ì¤ë½èÍý¤ò¹Í¤¨¤Þ¤¹¡£
¥Ü¥¹¤âƱÍͤǤ¹¡£
¡¡Ãê½ÐÊýË¡¤ÏÍÍ¡¹¤¢¤ê¤Þ¤¹¤¬¡¢º£²ó¤Ï
Ãê½Ð½èÍýÀìÍѤΥ᥽¥Ã¥É¤òÍÑ°Õ¤·¡¢
°ú¿ô¤ËEnemyType ¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢
»ØÄꤷ¤¿ EnemyType ¤Î¾ðÊó¤Î¤ß¤òÃê½Ð¤·¤Æ List ¤òºîÀ®¤¹¤ë¥á¥½¥Ã¥É¤òÍÑ°Õ¤·¤Æ¤ª¤¤Þ¤¹¡£
¡¡¤³¤Î¥á¥½¥Ã¥É¤Ë¤Ï
Ìá¤êÃͤòÀßÄꤷ¡¢
»ØÄꤷ¤¿ EnemyType ¤Î¾ðÊó¤Î¤ß¤¬ List ¤Î·Á¤Ç¼èÆÀ¤Ç¤¤ë¤è¤¦¤Ë¤·¤Æ¡¢³Æ List ¤ÎÊÑ¿ô¤ËÂåÆþ½ÐÍè¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
°ú¿ô¤Ç»ØÄꤷ¤¿ EnemyType ¤Ë¹ç¤ï¤»¤Æ List ¤¬¼èÆÀ¤Ç¤¤ë¤¿¤á¡¢ÈÆÍÑÀ¤¬¹â¤¤½èÍý¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¤³¤Î¼ê½ç¤Ï
¥²¡¼¥à¥¹¥¿¡¼¥È¸å¤Ë¥¨¥Í¥ß¡¼¤òÀ¸À®¤¹¤ëÁ°¤Ë½ªÎ»¤·¤Æ¤ª¤¯¤Ù¤½èÍý¤Ë¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢
Start ¥á¥½¥Ã¥ÉÆâ¤Ë¤Æ¼Â¹Ô¤·¤Æ¡¢¥¨¥Í¥ß¡¼¤ÎÀ¸À®Á°¤Ë»öÁ°¤Ë List ¤ò£²¤ÄÍÑ°Õ¤·¤Æ¤ª¤¤Þ¤¹¡£
¡¡¥¨¥Í¥ß¡¼¤ÎÀ¸À®¤Ë¤¢¤¿¤Ã¤Æ¤Ï¡¢¥Î¡¼¥Þ¥ë¤Î¥¨¥Í¥ß¡¼¤Ç¤¢¤ë¤Î¤«¡¢¤¢¤ë¤¤¤Ï¥Ü¥¹¤Î¥¨¥Í¥ß¡¼¤Ç¤¢¤ë¤Î¤«¤Ë¤è¤Ã¤Æ
À¸À®¤Þ¤Ç¤Î²áÄø¤òʬ´ô¤·¤Þ¤¹¡£
¤³¤ì¤Ï¤¤¤Þ¤Þ¤Ç GenerateEnemy ¥á¥½¥Ã¥É¤Î°ú¿ô¤Ë¤ª¤¤¤Æ isBoss ÊÑ¿ô¤È¤¤¤¦ÃͤòÍøÍѤ·¤Æʬ´ô¤·¤Æ¤¤¤Þ¤·¤¿¤¬¡¢
EnemyData ¤Ë¤Ï EnemyType ¾ðÊ󤬤¢¤ê¡¢¤³¤ÎÃæ¤Ë¤Ï Boss ¤È¤¤¤¦¾ðÊ󤬤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤³¤Î
EnemyType ¤Î»ØÄê¤ò°ú¿ô¤Ç¼õ¤±¼è¤ë¤è¤¦¤Ë½èÍý¤òÊѹ¹¤·¡¢
¥á¥½¥Ã¥ÉÆâ¤Î½èÍý¤òʬ´ô¤¹¤ë¤è¤¦¤ËÀ߷פ·¤Þ¤¹¡£
¡¡¤³¤Î¤È¤¡¢
EnemyType ¤¬¥Î¡¼¥Þ¥ë¤Î¥¿¥¤¥×¤Ç¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¥Î¡¼¥Þ¥ë¤Î¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤Î¤ß¤¬Ãê½Ð¤µ¤ì¤Æ¤¤¤ë List ¤«¤é
¥é¥ó¥À¥à¤Ê¥¨¥Í¥ß¡¼¤Î¥Ç¡¼¥¿¤ò£±¤ÄÁªÂò¤·¤Æ¡¢º£²óÀ¸À®¤¹¤ë¥¨¥Í¥ß¡¼¤Î¾ðÊó(EnemyData)¤È¤·¤Æ·èÄꤷ¤Þ¤¹¡£
¡¡¥Ü¥¹¤âƱÍͤνèÍý¤ò¹Ô¤¤¤Þ¤¹¡£
¡¡¤½¤Î¸å¡¢¥¨¥Í¥ß¡¼¤ÎÀ¸À®¤Î¼ê½ç¤Ë¤Ê¤ê¤Þ¤¹¡£¤³¤ÎÉôʬ¤ÏÊѤï¤ê¤Þ¤»¤ó¡£
¡¡ºÇ¸å¤Ë¡¢À¸À®¤µ¤ì¤¿¥¨¥Í¥ß¡¼¤Î¥¯¥í¡¼¥ó¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤è¤ê¡¢EnemyController ¥¹¥¯¥ê¥×¥È¤Î¾ðÊó¤ò¼èÆÀ¤·¡¢SetUpEnemy ¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ëÉôʬ¤Î
°ú¿ô¤Î»ØÄê¤ò bool ·¿¤«¤é
EnemyData ¤Ø¤ÈÊѹ¹¤·¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤Ï¤¹¤Ç¤Ë½¤ÀµºÑ¤Ç¤¹¤Î¤Ç¡¢¤³¤Î½¤Àµ¤Ë¤è¤Ã¤Æ¡¢
EnemyGenerator ¥¹¥¯¥ê¥×¥È¤Ë¤ª¤¤¤Æ·èÄꤷ¤¿
¥¨¥Í¥ß¡¼¤Î¾ðÊó¤¬ EnemyController ¥¹¥¯¥ê¥×¥È¦¤Ø¤È°ú¿ô¤òÄ̤¸¤ÆÁ÷¿®¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡°Ê¾å¤¬¥í¥¸¥Ã¥¯¤Îή¤ì¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ç¡¼¥¿¤òÃê½Ð¤·¤Æ List ¤òºîÀ®¤·¤¿¤ê¡¢ºîÀ®¤Ë¤¢¤¿¤Ã¤Æ¥á¥½¥Ã¥É¤Î°ú¿ô¤ÈÌá¤êÃͤò³èÍѤ¹¤ë¤Ê¤É¡¢
º£¤Þ¤Ç°Ê¾å¤Ë¥×¥í¥°¥é¥à¤Î½èÍý¤ÎÍý²ò¤ò¿¼¤á¤Æ¤¤¤¯¤³¤È¤¬½ÅÍפˤʤê¤Þ¤¹¡£