ºÇ½ª¹¹¿·¡§
orika_ex_miyako 2020ǯ10·î19Æü(·î) 19:23:23ÍúÎò
¡¡Á°²ó¤Î¼ê½ç¤Ç¡¢Å¨¤¬¼«Æ°À¸À®¤ò·«¤êÊÖ¤¹¥µ¥¤¥¯¥ë¤¬¼ÂÁõ¤µ¤ì¤Þ¤·¤¿¡£
¤³¤Î¼ê½ç¤Ç¤ÏÀ¸À®¤µ¤ì¤¿Å¨¤Î¾ðÊó¤òList¤Ç´ÉÍý¤·¡¢¥¨¥ê¥¢Æâ¤ÎŨ¤Î¾õÂÖ¤òÇÄ°®¤Ç¤¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡¥¨¥ê¥¢¤¬³«»Ï¤µ¤ì¤¿ºÝ¡¢List¤ò¥ê¥»¥Ã¥È¤·¤Þ¤¹¡£
¡¡Å¨¤¬À¸À®¤µ¤ì¤¿ºÝ¤Ë¤Ï¡¢List¤ËŨ¤Î¾ðÊó¤òÄɲä·¤Þ¤¹¡£
¡¡Å¨¤¬Åݤµ¤ì¤¿¾ì¹ç¤Ë¤ÏList¤«¤éºï½ü¤·¡¢¥¨¥ê¥¢Æâ¤ÇƤȲ¤µ¤ì¤¿¿ô¤ò²Ã»»¤·¤Þ¤¹¡£
¡¡¤³¤ÎList¤Î¾ðÊó¤ò¸µ¤Ë¡¢¼¡¤Î¼ê½ç¤Ç¤Ï¥¨¥ê¥¢¤Î¥¯¥ê¥¢¾õÂ֤ȥ²¡¼¥à¤Î¿Ê¹Ô¾õÂ֤Ȥòɳ¤Å¤±¤Æ´ÉÍý¤ò¹Ô¤¨¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡£±¡¥GameManager¥¯¥é¥¹¤ò½¤Àµ¤¹¤ë¡¡¡¼List¤òÍÑ°Õ¤·¤Æ¥¨¥ê¥¢Æâ¤ÎŨ¤Î¾ðÊó¤ò´ÉÍý¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë¡¼ ¡¡£²¡¥Enemy¥¯¥é¥¹¤ò½¤Àµ¤¹¤ë ¡¡£³¡¥StageList¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë½Ð¸½¤¹¤ëŨ¤Î¾ðÊó¤òÅÐÏ¿¤¹¤ë ¡¡£´¡¥GameManager¥¯¥é¥¹¤ò½¤Àµ¤¹¤ë¡¡¡¼StageList¤È³Æ¥Ç¡¼¥¿¤òƱ´ü¤µ¤»¤ë¡¼ ¡¡£µ¡¥¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆÆ°ºî¤ò³Îǧ¤¹¤ë
¡¡¿·¤·¤¯ÊÑ¿ô¤ò£²¤ÄÄɲä·¤Þ¤¹¡£Å¨¤Î¾ðÊó¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î enemyList ÊÑ¿ô¤È¡¢¥¨¥ê¥¢Æâ¤ÎŨ¤ÎƤȲ¿ô¤ò¥«¥¦¥ó¥È¤¹¤ë destroyConut ÊÑ¿ô¤Ç¤¹¡£
¡¡List¤ÏEnemy¥¯¥é¥¹¤ÇÍÑ°Õ¤·¤Þ¤¹¡£¤³¤ì¤Ï¥¤¥ó¥¹¥¿¥ó¥·¥¨¥¤¥È¤µ¤ì¤ÆÀ¸À®¤µ¤ì¤¿Å¨¤Î¾ðÊó¤¬ Enemy ¥¯¥é¥¹¤ËÂåÆþ¤µ¤ì¤ë¤¿¤á¡¢
¤½¤Î¾ðÊó¤ò¤½¤Î¤Þ¤ÞList¤ØÄɲäǤ¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ç¤â¤¢¤ê¡¢Å¨¤Î´ÉÍý¤òEnemy¥¯¥é¥¹¤Ç¹Ô¤¦¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ç¤â¤¢¤ê¤Þ¤¹¡£
¡¡GameObject·¿¤Ç¤Ï¤Ê¤¯¡¢Enemy¥¯¥é¥¹¤Ç´ÉÍý¤¹¤ëÍøÅÀ¤È¤·¤Þ¤·¤Æ¡¢¥¯¥é¥¹¤Î¾ì¹ç¤Ë¤Ï gameObject ÊÑ¿ô¤òÍøÍѤ·¤ÆGameObject·¿¤Ø¤Î¥¢¥¯¥»¥¹¤â¤¹¤°¤Ë¤Ç¤¤ë¤¿¤á¤Ç¤¹¡£
µÕ¤ËGameObject·¿¤Ç´ÉÍý¤ò¤·¤Æ¤·¤Þ¤¦¤È¡¢Enemy¥¯¥é¥¹¤òÍøÍѤ¹¤ë¤¿¤á¤Ë¤ÏËè²óGetComponent½èÍý¤¬É¬Íפˤʤê¤Þ¤¹¡£
¡¡¤½¤Î¤¿¤á¡¢²¿¤«¤ò¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢¤¿¤À¤Þ¤È¤á¤ë¤À¤±¤Ç¤Ï¤Ê¤¯¡¢¤½¤Î¾ðÊó¤ò¤¹¤°¤ËÍøÍѤ·¤ä¤¹¤¤·Á¤Ë¤·¤ÆList²½¤·¤Æ¤ª¤¯À߷פ¬½ÅÍפˤʤê¤Þ¤¹¡£
GameManager.cs
¡¡List¥¯¥é¥¹¤Ï<T>¤Ë¥¸¥§¥Í¥ê¥Ã¥¯·¿¡ÊǤ°Õ¤Î·¿¡Ë¤ò»ØÄꤷ¤Æ¡¢Æ±¤¸¥Ç¡¼¥¿·¿¤ò¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¥³¥ì¥¯¥·¥ç¥óµ¡Ç½¤ò»ý¤Ä¥¯¥é¥¹¤Ç¤¹¡£
ÇÛÎó¤È°Û¤Ê¤ê¡¢Í×ÁǤò¼«Í³¤ËÄɲᦺï½ü¤Ç¤¤Þ¤¹¡£(Í×ÁÇ¿ô¤¬²ÄÊѤ¹¤ë)
List¤òÍøÍѤ¹¤ë¾ì¹ç¤Ë¤ÏÇÛÎó¤ÈƱÍͤ˽é´ü²½¤¬É¬ÍפǤ¹¤¬¡¢List¤Ç¤Ï½é´ü²½»þ¤ËÍ×ÁÇ¿ô¤ÎÀë¸À¤¬ÉÔÍפǤ¹¡£
¡¡¤½¤Î¤¿¤á¡¢Í½¤áÍ×ÁÇ¿ô¤Î³ÎÄꤷ¤Æ¤¤¤ë¥Ç¡¼¥¿¤ò°·¤¦¾ì¹ç¤Ë¤ÏÇÛÎó¤ò¡¢Í×ÁÇ¿ô¤¬Ì¤³ÎÄê¤Ç¤¢¤Ã¤¿¤ê²ÄÊÑŤǤ¢¤ë¥Ç¡¼¥¿¤Ë¤Ä¤¤¤Æ¤ÏList¤òÍøÍѤ¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡¤³¤³¤Ç¤Ïº£²óÍøÍѤ·¤Æ¤¤¤ëList¥¯¥é¥¹¤Î»ý¤Ä¥á¥½¥Ã¥É¤Ë¤Ä¤¤¤ÆÀâÌÀ¤·¤Þ¤¹¡£
¡¡ListÆâ¤Î¤¹¤Ù¤Æ¤ÎÍ×ÁǤòºï½ü¤·¤Þ¤¹¡£Clear¥á¥½¥Ã¥É¤Ë¤Ï°ú¿ô¤Ï¤¢¤ê¤Þ¤»¤ó¡£
¡¡enemyList.Clear();
¡¡List¤ÎËöÈø¤Ë°ú¿ô¤Ç»ØÄꤷ¤¿Í×ÁÇ(¥Ç¡¼¥¿)¤òÄɲä·¤Þ¤¹¡£List¤ÇÀë¸À¤·¤Æ¤¤¤ë·¿¤ÈƱ¤¸·¿¤Ç¤¢¤ì¤ÐAdd¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
Enemy enemy = Instantiate(enemyPrefab, generatePos, Quaternion.identity); enemyList.Add(enemy);¡¡¡¡¡¡// List<Enemy>·¿¤Ê¤Î¤Ç¡¢enemy ÊÑ¿ô¤Î·¿¤¬ Enemy·¿¤Ç¤¢¤ì¤ÐAdd¤Ç¤¤ë
¡¡ListÆâ¤Ë¤¢¤ëÍ×ÁǤ«¤é¡¢°ú¿ô¤Ç»ØÄꤷ¤¿Í×ÁǤòºï½ü¤·¤Þ¤¹¡£¤³¤Á¤é¤âƱ¤¸·¿¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
public void RemoveEmenyList(Enemy enemy) { enemyList.Remove(enemy);¡¡¡¡¡¡// List<Enemy>·¿¤Ê¤Î¤Ç¡¢enemy ÊÑ¿ô¤Î·¿¤¬ Enemy·¿¤Ç¤¢¤ì¤ÐRemove¤Ç¤¤ë
¡¡Â¾¤Ë¤âÊØÍø¤Ê¥á¥½¥Ã¥É¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢Ä´¤Ù¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
»²¹Í¥µ¥¤¥È
ITSakuraÍÍ
C# List¤Î»È¤¤Êý¤Î¥µ¥ó¥×¥ë
https://itsakura.com/csharp-list
¡¡¥¹¥Æ¡¼¥¸1¤Î¥¨¥ê¥¢1¤Ë¤Ä¤¤¤Æ¡¢½Ð¸½¤¹¤ëŨ¤Î¾ðÊó¤òÅÐÏ¿¤·¤Þ¤¹¡£
¡¡StageList¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¡¢StageDatas Element[0] / AreaDatas Element[0] Æâ¤Ë¤¢¤ë AppearNum ¤Î Size ¤ò 0 ¤«¤é 3 ¤ËÊѹ¹¤·¤Þ¤¹¡£
¤³¤ÎAppearNum¤¬½Ð¸½¤¹¤ëŨ¤Î¼ïÎà¤È¿ô¤òÅÐÏ¿¤¹¤ëÉôʬ¤Ç¤¹¡£
StageList¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü¡¡¡³¬ÁØɽ¼¨

¡¡Å¨¤Î¼ïÎà¤Ï¤Þ¤À1¤Ä¤·¤«¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢Element 0 -2 ¤Î¿ô»ú¤Ï¤¹¤Ù¤Æ 0 ¤ÇÅÐÏ¿¤·¤Þ¤¹¡£
¤³¤ì¤Ï¡¢Å¨¤Î¥×¥ì¥Õ¥¡¥Ö¤ò´ÉÍý¤¹¤ëÇÛÎó¤Î¡¢ 0 ÈÖÌܤÎÍ×ÁÇ¿ô¤Ë¤¢¤ëŨ¤òÀ¸À®¤¹¤ë¡¢¤È¤¤¤¦Å¨¤Î¼ïÎà¤ò·èÄꤹ¤ë½èÍý¤ËÍøÍѤ·¤Þ¤¹¡£
¡¡
¡¡Element¤Î¿ô¤¬½Ð¸½¤¹¤ëŨ¤Î¿ô¤Ç¤¹¡£º£²ó¤Ï Size 3 ¤Ç¤¹¤Î¤Ç¡¢3ÂΤÎŨ¤¬À¸À®¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
StageList¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü¢¡¡AppearNumÉôʬ¤Î¤ß

¡¡ÅÐÏ¿¤·¤¿Å¨¤Î¾ðÊó¤ò¥²¡¼¥àÆâ¤ËÈ¿±Ç¤·¤ÆÍøÍѤ¹¤ë¤¿¤á¤Ë¡¢GameManager¥¯¥é¥¹¤ò½¤Àµ¤·¤Þ¤¹¡£
¡¡Å¨¤Î¥×¥ì¥Õ¥¡¥Ö¾ðÊó¤òñÂΤ«¤éList¤ËÊѹ¹¤·¡¢Ê£¿ô¤ÎŨ¤Î¥×¥ì¥Õ¥¡¥Ö¤òÅÐÏ¿¤Ç¤¤ë¤è¤¦¤ËÊѹ¹¤·¤Þ¤¹¡£
¡¡
¡¡¥¨¥ê¥¢¤Î¾ðÊó¤ò»È¤¤¡¢Å¨¤ÎÀ¸À®¿ô¤ÈƤȲ¿ô¤òÈæ¤Ù¤Æ¡¢¥¨¥ê¥¢Æâ¤Î¤¹¤Ù¤Æ¤ÎÀ¸À®¤µ¤ì¤¿Å¨¤òÅݤ·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¥¨¥ê¥¢¥¯¥ê¥¢¤È¤¹¤ë¤è¤¦¤Ë½èÍý¤òÄɲ䷤Ƥª¤¤Þ¤¹¡£
¤¿¤À¤·¤³¤Î¤È¤¡¢Æ¤È²¿ô¤ÈÀ¸À®¿ô¤È¤òñ½ã¤ËÈæ¤Ù¤Æ¤·¤Þ¤¦¤È¡¢¥¨¥ê¥¢Æâ¤Ç¤¹¤Ù¤Æ¤ÎŨ¤òÅݤ·¤Æ¤¤¤Ê¤¤¾õÂ֤Ǥ⥨¥ê¥¢¥¯¥ê¥¢¤ÈȽÄꤷ¤Æ¤·¤Þ¤¦¤¿¤á
¥¨¥ê¥¢Æâ¤Î¤¹¤Ù¤ÆŨ¤ÎÀ¸À®¤¬½ªÎ»¤·¡¢¤«¤Ä¡¢¤¹¤Ù¤Æ¤ÎŨ¤òƤȲ¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¸Â¤ê¡¢¥¨¥ê¥¢¥¯¥ê¥¢¤È¤Ê¤ë¤è¤¦¤ËÀ©¸æ¤ò¹Ô¤¤¤Þ¤¹¡£
¾ÜºÙ¤Ï¼¡¤Î¼ê½ç¤ÇµºÜ¤¹¤ë¤Î¤Ç¡¢¤³¤³¤Ç¤ÏȽÄꤷ¡¢¥Ç¥Ð¥Ã¥°¤Ç¥¯¥ê¥¢¤Èɽ¼¨¤À¤±¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
GameManager.cs
¡¡GameManager¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¡¢EnemyPrefabsÊÑ¿ô¤ÎSize¤òÊѹ¹¤·¤Æ¡¢À¸À®¤¹¤ëŨ¤Î¥×¥ì¥Õ¥¡¥Ö¤òÅÐÏ¿¤·¤Þ¤¹¡£
¤Þ¤À1ÂΤ·¤«Å¨¤Î¥×¥ì¥Õ¥¡¥Ö¤¬¤Ê¤±¤ì¤Ð Size 1 ¤Ë¤·¤Æ¡¢¤¤¤Þ¤Þ¤Ç»ÈÍѤ·¤Æ¤¤¤¿¤Î¤ÈƱ¤¸¤è¤¦¤ËŨ¤Î¥×¥ì¥Õ¥¡¥Ö¤ò1ÂΤÀ¤±ÅÐÏ¿¤·¤Þ¤¹¡£Áý¤¨¤¿¤éSize¤òÊѹ¹¤·¤ÆÄɲä·¤Þ¤¹¡£
GameManager¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü¡¡¡EnemyPrefabs Size 0(°ìÈÖ²¼¤Î¹àÌÜ¡£Ì¤ÀßÄê)

GameManager¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü¢¡¡EnemyPrefabs Size 1 ¤Ë¤·¤Æ¡¢EnemyÍÑ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òProjectÆ⤫¤é¥¢¥µ¥¤¥ó¤·¤Æ¤¤¤ë¾õÂÖ

¡¡¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ¡¢Æ°ºî¤ò³Îǧ¤·¤Þ¤¹¡£
¡¡À¸À®¤µ¤ì¤¿Å¨¤¬EnemyList¤ËÄɲ䵤ì¤ë¤«³Îǧ¤·¤Þ¤¹¡£
¡¡Enemy¤Ï¥Ç¥Ð¥Ã¥°¥â¡¼¥É¤Î¤Þ¤Þ¤Î¤¿¤á¡¢À¸À®¸å¤Ë¼«Æ°Åª¤ËÇ˲õ¤µ¤ì¤Þ¤¹¡£
¤½¤ÎºÝ¤ËEnemyList¤«¤éºï½ü¤µ¤ì¤Æ¤¤¤ë¤«¡¢¤Þ¤¿DestroyConut¤¬²Ã»»¤µ¤ì¤Æ¤¤¤ë¤«¤ò³Îǧ¤·¤Þ¤¹¡£
¡¡¥¨¥ê¥¢¤ÎŨ¤ÎÀ¸À®¿ô¤Ç¤¢¤ë AppearNum ¤Î Size 3 ¤È¡¢DestroyConut¤ÎÃͤ¬Æ±¤¸ 3 ¤Ë¤Ê¤Ã¤¿ºÝ¤Ë¡¢Debug.Log¤Ë ¥¨¥ê¥¢ ¥¯¥ê¥¢ ¤Îʸ»ú¤¬É½¼¨¤µ¤ì¤ë¤«³Îǧ¤·¤Þ¤¹¡£
GenerateCount ¤¬ 3 ̤Ëþ¤ÎºÝ¤Ë(¥¨¥ê¥¢Æâ¤Î¤¹¤Ù¤Æ¤ÎŨ¤ÎÀ¸À®¤¬½ªÎ»¤·¤Æ¤¤¤Ê¤¤)¡¢¥¨¥ê¥¢ ¥¯¥ê¥¢ ¤¬½Ð¤Æ¤·¤Þ¤ï¤Ê¤¤¤«¤â¹ç¤ï¤»¤Æ³Îǧ¤·¤Þ¤¹¡£
¸¡¾ÚÆ°²è¡¡¡Å¨¤¬Ç˲õ¤µ¤ì¤¿¤È¤¤Ë¡¢EnemyList¤«¤é¤Îºï½ü¤ÈDestroyConut¤Î²Ã»»¤ò³Îǧ¤¹¤ë
https://gyazo.com/52e62090b3d5369d6cf98cd0c0633ad3
¸¡¾ÚÆ°²è¢¡¡¤¹¤Ù¤Æ¤ÎŨ¤ÎÀ¸À®¤¬½ªÎ»¤·¤Æ¤¤¤ë¾õÂÖ¤ÇŨ¤¬Ç˲õ¤µ¤ì¤ÆDestroyConut¤¬À¸À®¿ô¤ÈƱ¤¸Ãͤˤʤ俤Ȥ¤Ë¡¢Debug.Log¤Ë ¥¨¥ê¥¢ ¥¯¥ê¥¢ ¤Èɽ¼¨¤µ¤ì¤ë
https://gyazo.com/4508012e4adfd6aabb52bef83af67a24
¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£
- ¥«¥Æ¥´¥ê¡§
- ¿Ê³Ø/¥¹¥¯¡¼¥ë
- ¥×¥í¥°¥é¥ß¥ó¥°
¥³¥á¥ó¥È¤ò¤«¤¯