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

¡¡°Ê²¼¤ÎÆâÍƤǽçÈ֤˼ÂÁõ¤ò¿Ê¤á¤Æ¤¤¤­¤Þ¤¹¡£

¼ê½ç£±£²¡¡¡¼¥×¥ì¥¤¥ä¡¼¤ÎµòÅÀ¤Î¼ÂÁõ¡¼
£²£µ¡¥CanvasÆâ¤Ë¥×¥ì¥¤¥ä¡¼¤ÎµòÅÀÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÇÛÃÖ¤·¡¢ÀßÄꤹ¤ë
£²£¶¡¥DefenseBase ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¡¢¥¨¥Í¥ß¡¼¤¬¿¯Æþ¤·¤¿ºÝ¤Ë¥¨¥Í¥ß¡¼¤òÇ˲õ¤¹¤ë½èÍý¤ò¼ÂÁõ¤¹¤ë



¡¡¿·¤·¤¤³Ø½¬ÆâÍƤϡ¢°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£

¡¡¡¦OnTriggerEnter2D ¥á¥½¥Ã¥É¡¢Tag ¤ÎÉü½¬¤ò¹Ô¤¦



£²£µ¡¥CanvasÆâ¤Ë¥×¥ì¥¤¥ä¡¼¤ÎµòÅÀÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÇÛÃÖ¤·¡¢ÀßÄꤹ¤ë

£±¡¥Àß·×


¡¡¤³¤Î¼ê½ç¤Ç¤Ï¡¢Canvas ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥ÈÆâ¤Ë¥×¥ì¥¤¥ä¡¼¤ÎµòÅÀ¤òÀ½ºî¤·¤Æ¤¤¤­¤Þ¤¹¡£¤³¤ÎÃÏÅÀ¤Ë¥¨¥Í¥ß¡¼¤¬Åþ㤹¤ë¤È¥À¥á¡¼¥¸¤ò¼õ¤±¤ë¥·¥¹¥Æ¥à¤Ë¤Ê¤ê¤Þ¤¹¡£
¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤â¥²¡¼¥à²èÌ̤˱ǤëɬÍפΤ¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¹¤Î¤Ç¡¢ Canvas ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Æ¤¤¤­¤Þ¤¹¡£

¡¡¤³¤³¤Ç¤Ï¡¢µòÅÀ¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥Õ¥©¥ë¥ÀÌò¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¢µòÅÀ¤Î²èÁü¤òÀßÄꤹ¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È·²¡¢¤µ¤é¤Ë¥³¥é¥¤¥À¡¼ÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¡¢
¤³¤ì¤é¤ò£±¤Ä¤º¤Ä½çÈ֤˺îÀ®¤·¤Þ¤¹¡£


£²¡¥Canvas ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë


¡¡Canvas ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾å¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤­¡¢Create Empty ¤òÁªÂò¤·¤Þ¤¹¡£
¿·¤·¤¯¶õ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È(Transfrom ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¤ß¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¡¢Ìò³ä¤Î¤Þ¤À¤Ê¤¤¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È)¤¬ºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢Ì¾Á°¤ò DefenseBaseSet ¤ËÊѹ¹¤·¤Þ¤¹¡£
DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢¥×¥ì¥¤¥ä¡¼¤ÎµòÅÀ¤Ë´ØÏ¢¤¹¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È·²¤ò¤Þ¤È¤á¤Æ¤ª¤¯¤¿¤á¤Î¡¢¥Õ¥©¥ë¥ÀÌò¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¹¡£


DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥Ò¥¨¥é¥ë¥­¡¼²èÁü



¡¡DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¡¢RectTransform ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¤«³Îǧ¤·¤Þ¤¹¡£
Canvas ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë´Þ¤Þ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Ï Transform ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ç¤Ï¤Ê¤¯¡¢RectTransform ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ë¤è¤Ã¤Æ°ÌÃÖ¾ðÊó¤ò´ÉÍý¤·¤Æ¤¤¤Þ¤¹¡£
¤â¤·¤âÄ̾ï¤Î Transform ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢ºÆÅÙºî¤êľ¤·¤Æ¤¯¤À¤µ¤¤¡£


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



DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡Scene¥Ó¥å¡¼²èÁü(Scene¥Ó¥å¡¼¤ÎÃæ±û¤Ë¤¢¤ë)



¡¡°Ê¾å¤Ç¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤Ï´°Î»¤Ç¤¹¡£


£³¡¥DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ¡¢imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë


¡¡DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾å¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤­¡¢UI => Image ¤òÁªÂò¤·¤Þ¤¹¡£
Scene¥Ó¥å¡¼Æâ¤ÎÃæ±û¤Ë¡¢Imgae ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤¿Çò¤¤¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¿·¤·¤¯ºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢Ì¾Á°¤ò imgDamageArea ¤ËÊѹ¹¤·¤Þ¤¹¡£


imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥Ò¥¨¥é¥ë¥­¡¼²èÁü



imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢¥×¥ì¥¤¥ä¡¼¤ÎµòÅÀ¤È¤Ê¤ë¥¨¥ê¥¢¤Î²èÁüɽ¼¨¤ÎÌò³ä¤ò»ý¤Á¤Þ¤¹¡£
¤³¤Î°ÌÃ֤ޤǥ¨¥Í¥ß¡¼¤¬Åþ㤹¤ë¤È¥À¥á¡¼¥¸¤ò¼õ¤±¤Æ¤·¤Þ¤¦¡¢¤½¤ÎÌÜ°õ¤È¤Ê¤ë²èÁü¤Ë¤Ê¤ê¤Þ¤¹¡£


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



imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡Scene¥Ó¥å¡¼²èÁü(¿¿¤óÃæ¤ÎÇò¤¤¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È)



¡¡DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤ÆÀßÃÖ¤µ¤ì¤Æ¤¤¤ë¤«¡¢³Îǧ¤·¤¿¸å¡¢¼¡¤ÎÀßÄê¤Î¼ê½ç¤Ø°Ü¤ê¤Þ¤¹¡£



£´¡¥imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤ò¹Ô¤¦


¡¡ºÇ½é¤Ë²èÁü¤òÀßÄꤷ¤Þ¤¹¡£
imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¡¢Image ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î Source Image ¤ÎÉôʬ¤Ë²èÁü¤òÀßÄꤷ¤Þ¤¹¡£

¡¡¤³¤Á¤é¤Î²èÁü¤¬¥²¡¼¥à²èÌ̤ËŬÍѤµ¤ì¤ë¤³¤Î°ÌÃ֤˥¨¥Í¥ß¡¼¤¬Åþ㤷¤Æ¿¯Æþ¤¹¤ë¤È¥À¥á¡¼¥¸¤ò¼õ¤±¤ëÌÜ°õ¤Î²èÁü¤È¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢¥¤¥á¡¼¥¸¤¢¤Ã¤¿²èÁü¤òÀßÄꤷ¤Þ¤¹¡£
¥¤¥ó¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë²èÁü¤Ï¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢ÌµÎÁ¤Î²èÁü¤òõ¤·¥À¥¦¥ó¥í¡¼¥É¤·¤Æ Unity ¤Ë¥¤¥ó¥Ý¡¼¥È¤·¤ÆÍøÍѤ·¤Þ¤¹¡£

¡¡ÂоݤβèÁü¥Õ¥¡¥¤¥ë¤ò¡¢Source Image ¤ÎÍó¤Þ¤Ç¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Æ¤¯¤À¤µ¤¤''¡£²èÁü¤¬ÅÐÏ¿¤µ¤ì¤Æ¡¢Scene¥Ó¥å¡¼¤È Game¥Ó¥å¡¼¤ËÈ¿±Ç¤µ¤ì¤Þ¤¹¡£


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



Scene¥Ó¥å¡¼²èÁü(Çò¤¤¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ï¤Ê¤¯¤Ê¤Ã¤Æ¤¤¤ë)



¡¡²èÁü¤ÎÀßÄ꤬½ªÎ»¤·¤¿¤é¡¢Image ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î Raycast Target ¤Î¥¹¥¤¥Ã¥Á¤ò³°¤·¤Æ¥ª¥Õ¤Ë¤·¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£
¤Þ¤¿¡¢ImageType ¤¬ Simple ¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï Simple ¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£Slice ¤Ê¤É¤ÎÀßÄê¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤È²èÁü¤¬Àµ¾ï¤Ëɽ¼¨¤µ¤ì¤Ê¤¤¤¿¤á¤Ç¤¹¡£



¡¡²èÁü¤òÀßÄꤷ¤¿¤é¡¢¼¡¤Ï²èÁü¤Î¥µ¥¤¥º¤òÄ´À°¤·¤Þ¤¹¡£

¡¡imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î RectTransfrom ¥³¥ó¥Ý¡¼¥Í¥ó¥ÈÆâ¤Ë¤¢¤ë¡¢Position ¤ÎÃͤò (-480, -816, 0) ¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£°ÌÃÖ¤¬º¸²¼´ó¤ê¤Ë¤Ê¤ê¤Þ¤¹¡£
¤Þ¤¿¡¢Width ¤ÎÃͤò 480¡¢ Height ¤ÎÃͤò 206 ¤ËÊѹ¹¤·¤Æ¥µ¥¤¥º¤òÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£
ÀßÄꤷ¤Ê¤¬¤é¡¢Game¥Ó¥å¡¼¤Ë¤É¤Î¤è¤¦¤Ë±Ç¤Ã¤Æ¤¤¤ë¤«¤ò³Îǧ¤·¤Æ¤ª¤­¤Þ¤¹¡£


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



imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡Scene¥Ó¥å¡¼²èÁü



imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡Game¥Ó¥å¡¼²èÁü



¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


£µ¡¥imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÊ£À½¤¹¤ë


¡¡imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤­¡¢Duplicate ¤òÁªÂò¤·¤Æ¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÊ£À½¤·¤Þ¤¹¡£
¤³¤Î¼ê½ç¤ò£²²ó·«¤ê¤«¤¨¤·¤Æ¡¢¹ç·×¤Ç£³¤Ä¤Î imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Æ¤¯¤À¤µ¤¤¡£


¥Ò¥¨¥é¥ë¥­¡¼²èÁü



¡¡Ê£À½¤µ¤ì¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢Ê£À½¸µ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î°ÌÃ֤ˤ¢¤ê¤Þ¤¹¡£
¥µ¥¤¥º¤ä²èÁü¤ÎÀßÄê¤Ï¤½¤Î¤Þ¤ÞÍøÍѤǤ­¤Þ¤¹¤Î¤Ç¡¢²£Êý¸þ¤Î°ÌÃÖ¾ðÊó¤À¤±Êѹ¹¤·¤Þ¤¹¡£

¡¡imgDamageArea (1) ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î Position X ¤ÎÃͤò 0 ¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬Ãæ±û¤Ë°ÜÆ°¤·¤Þ¤¹¡£


imgDamageArea (1) ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



¡¡Â³¤¤¤Æ¡¢imgDamageArea (2) ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î Position X ¤ÎÃͤò 480 ¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬±¦Â¦¤Ë°ÜÆ°¤·¤Þ¤¹¡£


imgDamageArea (2) ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



¡¡¤³¤ì¤Ç¥­¥ì¥¤¤Ë²£°ìÎó¤Ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬ÀßÃÖ¤µ¤ì¤Þ¤·¤¿¡£
̾Á°¤Ë¤Ä¤¤¤Æ¤ÏÊѹ¹¤·¤Æ¤â¤è¤¤¤Ç¤¹¤·¡¢¤³¤Î¤Þ¤Þ¤Ç¤âÌäÂꤢ¤ê¤Þ¤»¤ó¡£


Scene¥Ó¥å¡¼²èÁü



Game¥Ó¥å¡¼²èÁü



¡¡°Ê¾å¤Ç¥À¥á¡¼¥¸ÍÑ¥¨¥ê¥¢¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤Ï´°Î»¤Ç¤¹¡£



£¶¡¥DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ¡¢ColliderDefenseLine ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë


¡¡DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾å¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤­¡¢Create Empty ¤òÁªÂò¤·¤Þ¤¹¡£
¿·¤·¤¯ DefenseBaseSet ¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ¶õ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬ºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢Ì¾Á°¤ò ColliderDefenseLine ¤ËÊѹ¹¤·¤Þ¤¹¡£
DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢µòÅÀ¤Ë¥³¥é¥¤¥À¡¼¤òÀßÄꤹ¤ëÌò³ä¤ò»ý¤Ä¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¹¡£


ColliderDefenseLine ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥Ò¥¨¥é¥ë¥­¡¼²èÁü



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



ColliderDefenseLine ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡Scene¥Ó¥å¡¼²èÁü


¡¡Â³¤¤¤Æ ColliderDefenseLine ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È ¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£


£·¡¥ColliderDefenseLine ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤ò¹Ô¤¦


¡¡¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÌò³ä¤Ï¥¨¥Í¥ß¡¼¤È¤Î¿¯ÆþȽÄê¤ò¹Ô¤¨¤ë¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Î¥³¥é¥¤¥À¡¼¤ò´ÉÍý¤¹¤ë¤³¤È¤Ç¤¹¡£

¡¡imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥³¥é¥¤¥À¡¼¤òÀßÄꤹ¤ë¤È¡¢¹ç·×£³¤Ä¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥³¥é¥¤¥À¡¼¤òÀßÄꤹ¤ë¤³¤È¤Ë¤Ê¤ê¡¢
Ä´À°¤¬É¬Íפˤʤ俾ì¹ç¤Ëºî¶È¤¬Áý¤¨¤Æ¤·¤Þ¤¤¤Þ¤¹¤Î¤Ç¡¢¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òµòÅÀ¤Î¥³¥é¥¤¥À¡¼¤·¤Æ¡¢£±¤Ä¤Ç´ÉÍý¤ò¹Ô¤¦¤è¤¦¤Ë¤·¤Þ¤¹¡£



¡¡ºÇ½é¤Ë¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥µ¥¤¥º¤òÊѹ¹¤·¤Þ¤¹¡£²£Éý¤Ï²èÌ̤ÎÉý¤ÈƱ¤¸¥µ¥¤¥º¤Ë¡¢½ÄÉý¤Ï imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î²èÁü¤Ë¹ç¤ï¤»¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
RectTransfom ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î Width ¤ÎÃͤò 1440¡¢Height ¤ÎÃͤò 200 ¤ËÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¤¿¤À¤·¡¢Widht ¤Ï¼«Ê¬¤Î¥²¡¼¥à²èÌ̤ÎÀßÄê¤Ë¹ç¤ï¤»¤ÆŬµ¹¤ÊÃͤËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡¤Þ¤¿ Position Y ¤ò -816 ¤ËÀßÄꤷ¡¢imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î°ÌÃ֤˹ç¤ï¤»¤Æ¤¯¤À¤µ¤¤¡£


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



Scene¥Ó¥å¡¼²èÁü



¡¡¥µ¥¤¥º¤Î½¤Àµ¤¬½ªÎ»¤·¤¿¤é¡¢¥³¥é¥¤¥À¡¼¤òÀßÄꤷ¤Þ¤¹¡£



¡¡ColliderDefenseLine ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Î°ìÈÖ²¼¤Ë¤¢¤ë Add Component ¥Ü¥¿¥ó¤ò²¡¤·¤Æ¡¢BoxCollider2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£

¡¡ºÇ½é¤Ë¡¢IsTrigger ¤Î¥¹¥¤¥Ã¥Á¤Î¥Á¥§¥Ã¥¯¤òÆþ¤ì¤Æ¡¢¥ª¥ó¤Î¾õÂ֤ˤ·¤Æ¤¯¤À¤µ¤¤¡£

¡¡¼¡¤Ë¥µ¥¤¥º¤òÄ´À°¤·¤Þ¤¹¡£Edit Collider ¥Ü¥¿¥ó¤ò²¡¤·¤Æ Scene¥Ó¥å¡¼¤ÇÊѹ¹¤ò¤¹¤ë¤«¡¢Width ¤È Height ¤ÎÃͤÈƱ¤¸ÃͤËÀßÄê¤ò¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡

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



Scene¥Ó¥å¡¼²èÁü(¥³¥é¥¤¥À¡¼¤¬¸«¤ä¤¹¤¤¤è¤¦¤Ë¡¢imgDamageArea ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÆ©ÌÀÅÙ¤ò²¼¤²¤Æ¤¤¤Þ¤¹)



¡¡°Ê¾å¤Ç¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¡¢µòÅÀÍѤΥ²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤Ï´°À®¤Ç¤¹¡£¡¡


£²£¶¡¥DefenseBase ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¡¢¥¨¥Í¥ß¡¼¤¬¿¯Æþ¤·¤¿ºÝ¤Ë¥¨¥Í¥ß¡¼¤òÇ˲õ¤¹¤ë½èÍý¤ò¼ÂÁõ¤¹¤ë

£±¡¥Àß·×


¡¡µòÅÀ¤Î¥³¥é¥¤¥À¡¼¤ËÂФ·¤Æ¥¨¥Í¥ß¡¼¤Î»ý¤Ä¥³¥é¥¤¥À¡¼¤¬¿¯Æþ¤·¤¿ºÝ¤Ë¡¢¿¯ÆþȽÄê½èÍý¤ò¼Â¹Ô¤¹¤ë¤è¤¦¤ËÀ߷פò¹Í¤¨¤Þ¤¹¡£

¡¡¹Í¤¨Êý¤Ï¡¢¥¨¥Í¥ß¡¼¤È¥Ð¥ì¥Ã¥È¤È¤Î¿¯ÆþȽÄê¤È¤Þ¤Ã¤¿¤¯Æ±¤¸¤Ç¤¹¡£
µòÅÀ¤«¤é¤ß¤Æ¡¢¥Ð¥ì¥Ã¥È¤ËÅö¤¿¤ë¤Î¤¬¥¨¥Í¥ß¡¼¤È¤·¤Æ¹Í¤¨¤Æ¤¤¤±¤Ð¡¢Æ±¤¸À߷פǼÂÁõ¤ò¹Ô¤¦¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡¤½¤Î¤¿¤á¡¢¤³¤Î¼ê½ç¤ÇºîÀ®¤¹¤ë DefenseBase ¥¹¥¯¥ê¥×¥È¤Ï¡¢DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤¹¤ëÁ°Äó¤ÇºîÀ®¤ò¹Ô¤¤¤Þ¤¹¡£



¡¡¤³¤Î¼ê½ç¤Ç¼ÂÁõ¤ò¹Ô¤¦½çÈÖ¤ò¹Í¤¨¤Þ¤·¤ç¤¦¡£¤³¤ì¤â¡¢¥Ð¥ì¥Ã¥È¤È¥¨¥Í¥ß¡¼¤Î¿¯ÆþȽÄê½èÍý¤òºîÀ®¤·¤¿¤È¤­¤ÈƱ¤¸½çÈ֤ǹͤ¨¤Æ¤¤¤­¤Þ¤¹¡£

¡¡¿¯ÆþȽÄê¤Î¼ÂÁõÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï¡¢¥¨¥Í¥ß¡¼¤ÈƱ¤¸¤è¤¦¤Ë¡¢OnTriggerEnter2D ¥á¥½¥Ã¥É¤òÍøÍѤ·¤Þ¤¹¡£
¤Þ¤º¤Ï¡¢¿¯ÆþȽÄ꤬ȯÀ¸¤¹¤ë¤«¤ò¡¢½èÍý¤ò¼ÂÁõ¤·¤Æ³Îǧ¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡£±¤Ä°ã¤¦ÅÀ¤Ï¡¢¥³¥é¥¤¥À¡¼¤¬¡¢DefenseBase ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ï¤Ê¤¯¡¢»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤ÆÀßÄꤵ¤ì¤Æ¤¤¤ëÉôʬ¤Ç¤¹¡£
¤³¤Î¤è¤¦¤Ê¾ì¹ç¡¢¿Æ¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ë DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë Rigidbody2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¥¢¥¿¥Ã¥Á¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ
¿Æ»Ò´Ø·¸¤Î¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥³¥é¥¤¥À¡¼¤Î¾ðÊó¤òÍøÍѤ¹¤ë¤³¤È¤¬½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡Â³¤¤¤Æ¡¢¥¨¥Í¥ß¡¼¤Î¾ì¹ç¤â¤½¤¦¤Ç¤·¤¿¤¬¡¢¤³¤Î¤Þ¤Þ¤Ç¤¹¤È¥³¥é¥¤¥À¡¼¤¬¤¢¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ì¤Ð¤É¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤â¿¯ÆþȽÄ꤬ȯÀ¸¤·¤Æ¤·¤Þ¤¦¤¿¤á¡¢
¼«Ê¬¤¬È¯¼Í¤·¤¿¥Ð¥ì¥Ã¥È¤Ç¿¯ÆþȽÄ꤬ȯÀ¸¤·¤Æ¤·¤Þ¤¦¶²¤ì¤¬¤¢¤ê¤Þ¤¹¡£

¡¡¤³¤ì¤âƱ¤¸¤è¤¦¤Ë¡¢¥¨¥Í¥ß¡¼Â¦¤Ë¥¨¥Í¥ß¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ë¤ÈȽÊ̤¹¤ë¤¿¤á¤Î Tag ¤òÀßÄꤷ¤Þ¤¹¡£
¥¨¥Í¥ß¡¼Â¦¤ËÀßÄꤷ¤¿ Tag ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¿¯Æþ¤·¤¿¾ì¹ç¤Ë¸Â¤ê¡¢¿¯ÆþȽÄ꤬ȯÀ¸¤¹¤ë¤è¤¦¤Ë½èÍý¤òÄɲ䷤Ƥ¤¤­¤Þ¤¹¡£

¡¡ºÇ¸å¤Ë¡¢¥¨¥Í¥ß¡¼¤¬¿¯Æþ¤·¤¿¤é¡¢µòÅÀ¦¤ËÍÑ°Õ¤·¤¿Âѵ×ÎϤÎÃͤò 10 ¸º¤é¤¹½èÍý¤òÄɲ䷤ơ¢¥¨¥Í¥ß¡¼¤òÇ˲õ¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¼¡¤Î¼ê½ç¤Ç¤Ï¡¢¥¨¥Í¥ß¡¼¤Ë¹¶·âÎϤξðÊó¤òÀßÄꤷ¡¢¤½¤ÎÃÍʬ¤À¤±¡¢Âѵ×ÎϤò¸º»»¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¤Î¤Ç¡¢¤½¤Î¤¿¤á¤Î»öÁ°½èÍý¤Ë¤Ê¤ê¤Þ¤¹¡£


£²¡¥DefenseBase ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¡¢¥¨¥Í¥ß¡¼¤¬¿¯Æþ¤·¤¿ºÝ¤ÎȽÄê¤ò¹Ô¤¦½èÍý¤òµ­½Ò¤¹¤ë


¡¡DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤¹¤ë¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï»Ò¥ª¥Ö¥¸¥§¥¯¥È¤Î¥³¥é¥¤¥À¡¼¤òÍøÍѤ¹¤ë´Ø·¸¾å¡¢ Rigidbody2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬É¬¿Ü¤Ë¤Ê¤ê¤Þ¤¹¡£
¤³¤Î¤è¤¦¤Ê¤È¤­¤ËÍøÍѤǤ­¤ë°À­¾ðÊ󤬤¢¤Ã¤¿¤È»×¤¤¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤òµ­½Ò¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡Âѵ×ÎϤξðÊó¤òÀßÄꤹ¤ë¤¿¤á¡¢¿·¤·¤¯Àë¸À¥Õ¥£¡¼¥ë¥É¤ËÊÑ¿ô¤òÀë¸À¤·¤ÆÄɲä·¤Þ¤¹¡£
¥Ð¥ì¥Ã¥È¤Î¤È¤­¤ÈƱ¤¸¤è¤¦¤Ë¡¢public ½¤¾þ»Ò¤ÇÊÑ¿ô¤òÀë¸À¤·¤Æ¤ª¤¯¤³¤È¤Ç¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤è¤êÃͤÎÀßÄ꤬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡Âѵ×ÎϤÎÃͤò¤ä¤ê¼è¤ê¤¹¤ëºÝ¤Ë¤Ï¡¢º£²ó¤Ï¸ÇÄêÃÍ¤Ç 10 ¸º»»¤·¤Þ¤¹¡£¤È¤¤¤¦¤³¤È¤Ï¡¢À°¿ô¤Î·×»»¤¬¹Ô¤¨¤ëÊÑ¿ô¤Î·¿¤ÇÊÑ¿ô¤òÀë¸À¤ò¤¹¤ëɬÍפ¬¤¢¤ë¤³¤È¤¬Ê¬¤«¤ê¤Þ¤¹¡£
¡¡
¡¡OnTriggerEnter2D ¥á¥½¥Ã¥É¤Ë¤Ï¡¢¥¨¥Í¥ß¡¼¤Ë¼ÂÁõ¤·¤¿¤È¤­¤ÈƱ¤¸¤è¤¦¤Ë¡¢Debug.Log ¥á¥½¥Ã¥É¤òÍÑ°Õ¤·¤Æ¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¿¯Æþ¤·¤¿¤³¤È¤òɽ¼¨¤µ¤»¤Æ
½èÍý¤¬Àµ¾ï¤ËÆ°ºî¤·¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£

¡¡¤³¤Î°ìÏ¢¤Î¼ê½ç¤Ï¡¢EnemyController ¥¹¥¯¥ê¥×¥È¤Ë¼ÂÁõ¤·¤¿ÆâÍƤ¬Èó¾ï¤ËÌòΩ¤Á¤Þ¤¹¡£
¥¹¥¯¥ê¥×¥È¤ò¸«ÊÖ¤·¤¿¤ê¡¢°ÊÁ°¤Î¼ê½ç¤òÆɤßÊÖ¤·¤¿¤ê¤·¤Æ¹½¤¤¤Þ¤»¤ó¤Î¤Ç¡¢Éü½¬¤¹¤ë°ÕÌ£¤ò¹þ¤á¤Æ¡¢¤Þ¤º¤Ï¡¢¼«Ê¬¤Ç½èÍý¤ò½ñ¤¤¤Æ¤ß¤Æ¼Â¹Ô¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£


DefenseBase.cs

¡¡<=¡¡¥¯¥ê¥Ã¥¯¤¹¤ë¤È³«¤­¤Þ¤¹


¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤ò¹Ô¤¤¤Þ¤¹¡£


£³¡¥DefenseBase ¥¹¥¯¥ê¥×¥È¤ò DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤·¤ÆÀßÄê¤ò¹Ô¤¦


¡¡ºîÀ®¤·¤¿ DefenseBase ¥¹¥¯¥ê¥×¥È¤ò DefenseBaseSet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥¿¥Ã¥Á¤·¤Æ¤¯¤À¤µ¤¤¡£
°À­¾ðÊó¤òÀßÄꤷ¤Æ¤¤¤ì¤Ð¡¢¼«Æ°Åª¤Ë Rigidbody2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤â¥¢¥¿¥Ã¥Á¤µ¤ì¤Þ¤¹¡£¤â¤·¤â°À­¾ðÊó¤òµ­½Ò¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï
Add Component ¥Ü¥¿¥ó¤è¤ê¡¢Rigidbody2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÄɲ䷤Ƥ¯¤À¤µ¤¤¡£Ä̾ï¤Î Rigidbody ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÏÆ°ºî¤·¤Þ¤»¤ó¤Î¤Ç¡¢Ãí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£



¡¡ºÇ½é¤Ë Rigidbody2D ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡GravityScale ¤ÎÃͤò 0 ¤Ë¤·¤Æ½ÅÎϤαƶÁ¤Ï¼õ¤±¤Ê¤¤¤è¤¦¤ËÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¤½¤¦¤·¤Ê¤¤¤È²¼Êý¸þ¤ËÍî²¼¤·¤Æ¤·¤Þ¤¤¤Þ¤¹¡£
¤Þ¤¿¡¢Freeze Rotation ¤Î Z ¤Î¥Á¥§¥Ã¥¯¤â¤¤¤ì¤Æ¥ª¥ó¤Î¾õÂ֤ˤ·¤Æ¤¯¤À¤µ¤¤¡£¥ª¥Õ¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤È¡¢¥¨¥Í¥ß¡¼¤Ë¿¯Æþ¤µ¤ì¤¿ºÝ¤Ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬²óž¤·¤Æ¤·¤Þ¤¤¤Þ¤¹¡£


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


¡¡


¡¡Â³¤¤¤Æ¡¢DefenseBase ¥¹¥¯¥ê¥×¥È¤ÎÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£
¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¾å¤Ë Durability ÊÑ¿ô¤¬É½¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤³¤Á¤é¤ËÂѵ×ÎϤȤʤëÃͤòÀßÄꤷ¤Þ¤¹¡£
½é´üÃÍ¤Ï 0 ¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£


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



¡¡¥¹¥¯¥ê¥×¥È¤òÊѹ¹¤·¤Ê¤¯¤Æ¤â¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤è¤ê¼«Í³¤ËÄ´À°¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤Î¤Ç¡¢ºÇ½é¤Ï 100 ¤ËÀßÄꤷ¤Æ¤ª¤­¤Þ¤¹¡£


ÀßÄê¸å¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü



¡¡°Ê¾å¤ÇÀßÄê¤Ï´°Î»¤Ç¤¹¡£


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


¡¡¤³¤³¤Þ¤Ç¤Î¼ê½ç¤¬½ªÎ»¤·¤Þ¤·¤¿¤Î¤Ç¡¢¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ¥¨¥Í¥ß¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬µòÅÀ¤Î¥³¥é¥¤¥À¡¼¤Î°ÌÃ֤ޤǰÜÆ°¤µ¤»¤Þ¤¹¡£
Console ¥Ó¥å¡¼¤Ë Debug.Log ¥á¥½¥Ã¥É¤Ç»ØÄꤷ¤¿¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î̾Á°(EnemySet)¤¬É½¼¨¤µ¤ì¤ì¤Ð¿¯ÆþȽÄê¤ÏÀ®¸ù¤Ç¤¹¡£


¡ã¼Â¹ÔÆ°²è¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯


¡¡¤³¤ì¤Ç̵»ö¤Ë¿¯ÆþȽÄê¤Î½èÍý¤Ï¼ÂÁõ¤µ¤ì¤Þ¤·¤¿¡£
¼¡¤Ï¡¢¤³¤ÎȽÄê¤ÎÂоݤò¥¨¥Í¥ß¡¼¤Î¤ß¤ËÀ©¸Â¤¹¤ë¤è¤¦¤Ë¡¢Tag ¤Ë¤è¤ë½èÍý¤òÄɲä·¤Þ¤¹¡£

¡¡¤Þ¤º¤ÏºÇ½é¤Ë¿·¤·¤¤ Tag ¤òÅÐÏ¿¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢ÅÐÏ¿¤ÈÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£


£µ¡¥¥¨¥Í¥ß¡¼ÍѤΠTag ¤òÅÐÏ¿¤·¡¢EnemySet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ËÀßÄꤹ¤ë


¡¡EnemySet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È̾¤Îº¸²¼¤Ë¤¢¤ë Tag ¤òÁªÂò¤¹¤ë¤È¥×¥ë¥À¥¦¥ó¥á¥Ë¥å¡¼¤¬³«¤­¤Þ¤¹¡£
ºÇ½é¤Ï Untagged(̤ÀßÄê) ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢°ìÈÖ²¼¤Î Add Tag¡Ä ¤òÁªÂò¤·¤Æ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Îɽ¼¨¤ò Tags and Layers ¤ËÊѹ¹¤·¤Þ¤¹¡£

¡¡Tags ¤Î¹àÌܤΰìÈÖ²¼¤Ë¥×¥é¥¹¥Ü¥¿¥ó¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤ì¤ò²¡¤·¤Æ¡¢¿·¤·¤¯ Enemy ¤È¤¤¤¦¥¿¥°¤òºîÀ®¤·¡¢¥»¡¼¥Ö¤·¤ÆÅÐÏ¿¤·¤Æ¤¯¤À¤µ¤¤¡£


Tag





¡¡ÅÐÏ¿¤¬´°Î»¤·¤¿¤é¡¢¥¨¥Í¥ß¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë Tag ¤òÀßÄꤷ¤Þ¤¹¡£

¡¡EnemySet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î Tag ¤òÁªÂò¤·¡¢¥×¥ë¥À¥¦¥ó¥á¥Ë¥å¡¼¤«¤é Enemy ¤òÁªÂò¤·¤ÆÅÐÏ¿¤·¤Æ¤¯¤À¤µ¤¤¡£


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

¡¡

¡¡¤³¤ì¤Ç Tag ¤ÎÀßÄê¤Ï´°Î»¤Ç¤¹¡£


£¶¡¥DefenseBase ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¡¢¿¯ÆþȽÄê¤ÎºÝ¤Ë¡¢¿¯Æþ¤·¤¿¥³¥é¥¤¥À¡¼¤¬¥¨¥Í¥ß¡¼¤Î¥³¥é¥¤¥À¡¼¤«¤É¤¦¤«¤òȽÄꤹ¤ë½èÍý¤òÄɲ乤ë


¡¡Tag ¤ÎÀßÄ꤬´°Î»¤·¤Þ¤·¤¿¤Î¤Ç¡¢¤³¤Î¾ðÊó¤òÍøÍѤ·¤Æ¡¢¿¯Æþ¤·¤¿¥³¥é¥¤¥À¡¼¤¬¥¨¥Í¥ß¡¼¤Ç¤¢¤ë¤Î¤«¡¢¤½¤ì°Ê³°¤Ê¤Î¤«¤òȽÄꤹ¤ë½èÍý¤ò¼ÂÁõ¤·¤Þ¤¹¡£

¡¡¥³¥á¥ó¥È¤òµ­½Ò¤·¤Æ¤«¤é¡¢¼«Ê¬¤Ç¥í¥¸¥Ã¥¯¤ò¹Í¤¨¤Æ½èÍý¤òµ­½Ò¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
¥³¥á¥ó¥È¤Î»²¹ÍÎã¤â¡¢EnemyController ¥¹¥¯¥ê¥×¥È¤Î¼ÂÁõ¤¬Ìò¤ËΩ¤Á¤Þ¤¹¤Î¤Ç¤½¤Á¤é¤ò»²¹Í¤Ë½ñ¤¤¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£


DefenseBase.cs

¡¡<=¡¡¥¯¥ê¥Ã¥¯¤¹¤ë¤È³«¤­¤Þ¤¹

¡¡

¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£


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


¡¡¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ¡¢¥¨¥Í¥ß¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òµòÅÀ¤Þ¤Ç°ÜÆ°¤µ¤»¤Æ¤¯¤À¤µ¤¤¡£
µòÅÀ¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥³¥é¥¤¥À¡¼¤Ë¥¨¥Í¥ß¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¿¯Æþ¤·¤¿ºÝ¤Ë¡¢Console ¥Ó¥å¡¼¤Ë Tag ¤Î¾ðÊó(Enemy)¤¬É½¼¨¤µ¤ì¤ì¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£


¡ã¼Â¹ÔÆ°²è¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯


¡¡À®¸ù¤·¤¿¤é¡¢¤½¤Î¸å¡¢EnemySet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î Tag ¤ò Untagged ¤ËÌᤷ¤Æ¡¢Æ±¤¸¤è¤¦¤Ë¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆµòÅÀ¤Þ¤Ç°ÜÆ°¤µ¤»¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
º£²ó¤Ï Tag ¤ÇÀ©¸æ¤ò¹Ô¤¦¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤³¤Î¾õÂ֤ǥ¨¥Í¥ß¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¿¯Æþ¤·¤Æ¤â¡¢¿¯ÆþȽÄê¤ÏȯÀ¸¤·¤Ê¤¤¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£


¡¡¤½¤ì¤Ç¤ÏºÇ¸å¤Î½èÍý¤ò¼ÂÁõ¤·¤Þ¤·¤ç¤¦¡£


£¸¡¥DefenseBase ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¡¢¿¯ÆþȽÄê¤ÎºÝ¤ËÂѵ×ÎϤÎÃͤò 10 ¸º¤é¤¹½èÍý¤òÄɲ䷤ơ¢¥¨¥Í¥ß¡¼¤òÇ˲õ¤¹¤ë


¡¡¤³¤Î¼ê½ç¤Ç¤ÎºÇ¸å¤Î¼ÂÁõ¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡À߷פˤ¢¤Ã¤¿¤è¤¦¤Ë¡¢¥¨¥Í¥ß¡¼¤Î¥³¥é¥¤¥À¡¼¤ò»ý¤Ä¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬¿¯Æþ¤·¤¿¾ì¹ç¤Ë¤Ï¡¢Âѵ×ÎÏ(durability ÊÑ¿ô)¤ÎÃͤò 10 ¸º»»¤¹¤ë½èÍý¤ò¼ÂÁõ¤·¤Þ¤¹¡£
·×»»·ë²Ì¤Ï Debug.Log ¥á¥½¥Ã¥É¤òÍøÍѤ·¤Æ¡¢Console ¥Ó¥å¡¼¤Ë¡¢·×»»·ë²Ì¸å¤Î»Ä¤ê¤ÎÂѵ×ÎϤÎÃͤòɽ¼¨¤·¤Þ¤·¤ç¤¦¡£

¡¡¤Þ¤¿¤³¤Î·×»»½èÍý¤È¤È¤â¤Ë¡¢¥¨¥Í¥ß¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÇ˲õ¤¹¤ë½èÍý¤â¼ÂÁõ¤·¤Þ¤¹¡£

¡¡¤³¤ÎÉôʬ¤â¡¢EnemyController ¥¹¥¯¥ê¥×¥È¤Î¼ÂÁõ¤ò»×¤¤½Ð¤·¤Æ¤¯¤À¤µ¤¤¡£
°ÊÁ°¤Î¼ê½ç¤ò¤ß¤Æ¤â¤¤¤¤¤Ç¤¹¤·¡¢EnemyController ¥¹¥¯¥ê¥×¥È¤ò»²¹Í¤Ë¤·¤Æ¤â¹½¤¤¤Þ¤»¤ó¤Î¤Ç¡¢
¤Þ¤º¤Ï¡¢¥í¥¸¥Ã¥¯ÍѤËÆüËܸì¤Î¥³¥á¥ó¥È¤ò¼«Ê¬¤Ç¹Í¤¨¤Æ½ñ¤¤¤Æ¤«¤é¡¢¥×¥í¥°¥é¥à¤òµ­½Ò¤·¤Æ¤¤¤­¤Þ¤¹¡£


DefenseBase.cs

¡¡<=¡¡¥¯¥ê¥Ã¥¯¤¹¤ë¤È³«¤­¤Þ¤¹


¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£


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


¡¡¤¹¤Ù¤Æ¤Î¼ê½ç¤¬½ªÎ»¤·¤Þ¤·¤¿¤Î¤Ç¡¢¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ¡¢¥¨¥Í¥ß¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òµòÅÀ¤Þ¤Ç°ÜÆ°¤µ¤»¤Æ¥³¥é¥¤¥À¡¼¤Ë¿¯Æþ¤µ¤»¤Æ¤¯¤À¤µ¤¤¡£
Console ¥Ó¥å¡¼¤Ë»Ä¤ê¤ÎÂѵ×ÎϤÎÃͤ¬É½¼¨¤µ¤ì¤ì¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£

¡¡¤Þ¤¿¡¢µòÅÀ¤Î¥³¥é¥¤¥À¡¼¤Ë¿¯Æþ¤·¤¿¥¨¥Í¥ß¡¼¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬Ç˲õ¤µ¤ì¤Æ¤¤¤ì¤Ð¡¢¤³¤Á¤é¤âÀ©¸æÀ®¸ù¤Ç¤¹¡£
¡¡

¡ã¼Â¹ÔÆ°²è¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯



¡ãǤ°Õ¡ä£±£°¡¥EnemyController ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¡¢¥²¡¼¥à²èÌ̳°¤Ë½Ð¤¿ºÝ¤ËÇ˲õ¤Î½èÍý¤ò¥³¥á¥ó¥È¥¢¥¦¥È¤¹¤ë

¡¡¡Ê¤³¤Î¼ê½ç¤ÏǤ°Õ¤Ç¤¹¡£Æɤó¤Ç¤ß¤ÆÉÔÍפʾì¹ç¤Ë¤Ï¥¹¥­¥Ã¥×¤·¤Æ¹½¤¤¤Þ¤»¤ó¡£¡Ë

¡¡¤¤¤Þ¤Þ¤Ç¥¨¥Í¥ß¡¼¤ËÂФ·¤Æ¤Ï¡¢¥²¡¼¥à²èÌ̳°¤Ë¤Ê¤Ã¤¿ºÝ¤Ë¼«Æ°Åª¤Ëºï½ü¤µ¤ì¤ë½èÍý¤ò»Ü¤·¤Æ¤¤¤Þ¤·¤¿¡£

¡¡º£²ó DefenceBase ¥¹¥¯¥ê¥×¥È¤Ë¤è¤ë¥¨¥Í¥ß¡¼Ç˲õ½èÍý¤¬²Ã¤ï¤ê¤·¤Þ¤·¤¿¤Î¤Ç¡¢¥²¡¼¥à²èÌ̳°¤Ë¥¨¥Í¥ß¡¼¤¬½Ð¤ë¤³¤È¤Ï¤Ê¤¯¤Ê¤ê¤Þ¤·¤¿¡£
¤è¤Ã¤Æ¡¢EnemyController ¤Î Update ¥á¥½¥Ã¥ÉÆâ¤Ë¤¢¤ë¡¢¥²¡¼¥à²èÌ̳°¤Ë½Ð¤¿¤éÇ˲õ¤¹¤ë¡¢¤È¤¤¤¦´û¸¤Î½èÍý¤ÏÉÔÍפȤʤê¤Þ¤·¤¿¡£
¡¡
¡¡Ëº¤ì¤Ê¤¤¤¦¤Á¤Ë¡¢EnemyController ¤ò½¤Àµ¤·¡¢³ºÅö¤Î½èÍý¤ò¥³¥á¥ó¥È¥¢¥¦¥È¤·¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£


EnemyController.cs
    void Update() {

¡¡¡¡¡¡¡¡// ¤³¤Î¥¹¥¯¥ê¥×¥È¤¬¥¢¥¿¥Ã¥Á¤·¤Æ¤¤¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò½ù¡¹¤Ë°ÜÆ°¤¹¤ë
        transform.Translate(0, -0.01f, 0);

        // °ìÄêÃÏÅÀ¤Þ¤Ç¥¨¥Í¥ß¡¼¤¬°ÜÆ°¤·¤¿¤é = ¤³¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î°ÌÃÖ¤¬°ìÄêÃÍ(-1500)¤òĶ¤¨¤¿¤é
        //if (transform.localPosition.y < -1500) {

            //  ¤³¤Î¥¹¥¯¥ê¥×¥È¤¬¥¢¥¿¥Ã¥Á¤·¤Æ¤¤¤ë¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÇ˲õ¤¹¤ë
            //Destroy(gameObject);¡¡¡¡
        //}
    }

¡¡¤Ê¤ª¥³¥á¥ó¥È¥¢¥¦¥È¤ò¤¹¤ë¾ì¹ç¡¢°ÜÆ°¤µ¤»¤ë½èÍý¼«ÂΤÏɬÍפǤ¹¤Î¤Ç¡¢½èÍý¤ÎÆâÍƤò¤­¤Á¤ó¤ÈÆɤ߲ò¤¤¤Æ¡¢ÉÔÍפÊÉôʬ¤À¤±¤ò¥³¥á¥ó¥È¥¢¥¦¥È¤¹¤ë¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£



¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£

¡¡¼¡¤Ï¡¡¼ê½ç£±£³¡¡¡¼¥¨¥Í¥ß¡¼¤Î¾ðÊó¤òÍøÍѤ·¤Æ¥×¥ì¥¤¥ä¡¼¤ÎµòÅÀ¤ÎÂѵ×ÎϤò¸º»»¤¹¤ëÀ©¸æ¤Î¼ÂÁõ¡¼¡¡¤Ç¤¹¡£

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


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

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

Menu



´ðÁÃ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

private



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

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