i-school - £²£Ä¥¿¥Ã¥×¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¡¡È¯Å¸£²£±
¡¡¥Ð¥ì¥Ã¥ÈÍѤΥץì¥Õ¥¡¥Ö¤È BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÍøÍѤ·¡¢¥¯¥í¡¼¥ó¤µ¤ì¤¿¥Ð¥ì¥Ã¥È¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÀßÄꤷ¡¢
Ʊ¤¸¥×¥ì¥Õ¥¡¥Ö¤«¤é°Û¤Ê¤ë¥Ð¥ì¥Ã¥È¤ò¼«Æ°Åª¤ËÀ¸À®¤¹¤ë½èÍý¤ò¼ÂÁõ¤·¤Þ¤¹¡£¼êË¡¤Ï¥¨¥Í¥ß¡¼¤Î¾ì¹ç¤ÈƱ¤¸¤Ç¤¹¡£¤½¤Î¤¿¤á¡¢¶µºà¤ò¸«¤º¤Ë¡¢°ÊÁ°¤Î¼ÂÁõ¤ò¸«¤Ê¤¬¤é¿Ê¤á¤Æ¤ß¤Æ¤â¤¤¤¤¤Ç¤·¤ç¤¦¡£

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

ȯŸ£²£±¡¡¡¼¥Ð¥ì¥Ã¥ÈÍѤΥǡ¼¥¿¥Ù¡¼¥¹¤ÎÍøÍÑ­¡¡¼
£´£³¡¥Bullet ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¡¢BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ç¡¼¥¿¤ò»²¾È¤·¤ÆÈ¿±Ç¤¹¤ë½èÍý¤òÄɲ乤ë
£´£´¡¥GameData ¥¹¥¯¥ê¥×¥È¡¢BulletSelectManager ¥¹¥¯¥ê¥×¥È¡¢PlayerController ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¡¢¥Ð¥ì¥Ã¥ÈÍѤΥץì¥Õ¥¡¥Ö¤Ë BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ç¡¼¥¿¤ò»²¾È¤·¤ÆÀßÄê¤òÈ¿±Ç¤¹¤ë



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

¡¡¡¦½èÍý¤ÎÁ´ÂÎÁü¤«¤é¡¢¥í¥¸¥Ã¥¯¤òÁȤßΩ¤Æ¤Æ¼ÂÁõ¤ò¹Ô¤¦



£´£³¡¥Bullet ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¡¢BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ç¡¼¥¿¤ò»²¾È¤·¤ÆÈ¿±Ç¤¹¤ë½èÍý¤òÄɲ乤ë

£±¡¥Àß·×


¡¡BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÅÐÏ¿¤·¤Þ¤·¤¿¡£
¤³¤Á¤é¤Î¾ðÊó¤ò¥²¡¼¥àÆâ¤Ç¤âÍøÍѤǤ­¤ë¾õÂ֤ˤ·¤Æ¡¢¥Ð¥ì¥Ã¥È¤ËÈ¿±Ç¤Ç¤­¤ë¤è¤¦¤Ë½èÍý¤ò¼ÂÁõ¤·¤Æ¤¤¤­¤Þ¤¹¡£



¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ï¡¢¥¹¥¯¥ê¥×¥ÈÆâ¤ËƱ̾¤Î·¿Ì¾¤ÇÊÑ¿ô¤òºîÀ®¤¹¤ë¤³¤È¤ÇÍøÍѤ¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£

¡ã¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÍøÍѤǤ­¤ë¾õÂ֤ˤ¹¤ë¡ä
  public BulletDataSO bulletDataSO;

¡¡¾åµ­¤Î¤è¤¦¤ËÊÑ¿ô¤È¤·¤ÆÀë¸À¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢ÊÑ¿ô¤òÍøÍѤ·¤Æ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¾ðÊó¤ò¥²¡¼¥àÆâ¤ËÍøÍѤ¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡Àë¸À¤ÎÊýË¡¤Ï¾¤ÎÊÑ¿ô¤ÈÊѤï¤ê¤Þ¤»¤ó¡£¤Þ¤¿¡¢public ½¤¾þ»Ò¤Ë¤·¤ÆÀë¸À¤·¤Æ¤ª¤¯¤³¤È¤Ë¤è¤ê¡¢
¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤è¤êÅÐÏ¿¤¬½ÐÍè¤ë¾¡¢³°Éô¤Î¥¹¥¯¥ê¥×¥È¤«¤é¤â»²¾È¤·¤ÆÍøÍѤ¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡£¤³¤ì¤â¾¤ÎÊÑ¿ô¤ÈƱ¤¸¤Ç¤¹¡£



¡¡¸½ºß¡¢¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤È¤·¤Æ¥²¡¼¥àÆâ¤ÇÍøÍѤµ¤ì¤Æ¤¤¤ë¾ðÊó¤Ï¡¢Bullet ¥¹¥¯¥ê¥×¥È¤Ë¤¢¤ë¡¢°Ê²¼¤Î£²¤Ä¤ÎÊÑ¿ô¤Î¾ðÊó¤Ç¤¹¡£

    [Header("¥Ð¥ì¥Ã¥È¤Î®ÅÙ")]
    public float bulletSpeed;

    [Header("¥Ð¥ì¥Ã¥È¤Î¹¶·âÎÏ")]
    public int bulletPower;

¡¡¤¤¤Þ¤Þ¤Ç¤Ï¤³¤Á¤é¤ÎÊÑ¿ô¤ËÂФ·¤Æ¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤è¤êÀßÄê¤ò¹Ô¤Ã¤Æ¿ôÃͤò·è¤á¤Æ¤¤¤Þ¤·¤¿¡£
¤½¤Î¤¿¤á¥Ð¥ì¥Ã¥È¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥×¥ì¥Õ¥¡¥Ö¤Î¥¯¥í¡¼¥ó¤È¤·¤ÆÀ¸À®¤¹¤ë¤È¡¢¾ï¤ËƱ¤¸Â®Å٤ȹ¶·âÎϤò»ý¤Ã¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤¬À¸À®¤µ¤ì¤Æ¤¤¤Þ¤·¤¿¡£
°Û¤Ê¤ë¥Ð¥ì¥Ã¥È¤Î¾ðÊó¤òÍøÍѤ¹¤ë¤³¤È¤ò¹Í¤¨¤ë¤È¡¢¤³¤ÎÀ߷פǤÏŬÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¤Î¤Ç¡¢±¿ÍÑÊýË¡¤òÊѹ¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
¡¡


¡¡¤³¤ÎÊÑ¿ô¤ÎÀßÄê¤ÎÉôʬ¤Ë¡¢º£²óºîÀ®¤·¤¿ BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÍøÍѤ¹¤ë¤è¤¦¤Ë½èÍý¤ÎÊѹ¹¤ò¹Ô¤¤¤Þ¤¹¡£
À¸À®¤µ¤ì¤ë¥¯¥í¡¼¥ó¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÏƱ¤¸¤Ç¤¹¤¬¡¢¤½¤ÎÆâÍÆ¡¦¾ðÊó¤ËÂФ·¤Æ¡¢¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÈ¿±Ç¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢À¸À®¤µ¤ì¤¿¥Ð¥ì¥Ã¥È¤Î¿¶¤ëÉñ¤¤¤òÊѹ¹¤·¤Þ¤¹¡£

¡¡º£²ó¤Ï¥×¥ì¥¤¥ä¡¼¤Î¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤È¤·¤Æ¾ðÊó¤òÅÐÏ¿¤·¤Æ¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤Î¥Ç¡¼¥¿¤òÍøÍѤ·¤Æ¡¢¥×¥ì¥¤¥ä¡¼¤Î¥Ð¥ì¥Ã¥È¤È¤·¤Æ¿¶¤ëÉñ¤¦¤è¤¦¤ËÀ©¸æ¤·¤Þ¤¹¡£

¡¡¤³¤Î½èÍý¤ò¼«Æ°²½¤·¤Æ¡¢¥Ð¥ì¥Ã¥È¤¬À¸À®¤µ¤ì¤¿¤È¤­¤Ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤Î¾ðÊó¤Ë¹ç¤ï¤»¤Æ¡¢¥Ð¥ì¥Ã¥È¤È¤·¤Æ¤Î¿¶¤ëÉñ¤¤¤â¼«Æ°Åª¤ËÊѤï¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¤³¤Î¤è¤¦¤ÊÀ߷פˤ¹¤ë¤È¡¢£±¤Ä¤Î¥×¥ì¥Õ¥¡¥Ö¤«¤é¡¢¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î¥Ð¥ì¥Ã¥È¤òºî¤ê½Ð¤¹¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£


£²¡¥Bullet ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¡¢BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ç¡¼¥¿¤ò»²¾È¤·¤ÆÈ¿±Ç¤¹¤ë½èÍý¤òÄɲ乤ë


¡¡À߷פ˴ð¤Å¤¤¤Æ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ÇÀßÄꤷ¤Æ¤¤¤¿¾ðÊó¤ò BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î BulletData ¥¯¥é¥¹¤Î¾ðÊó¤ò»²¾È¤¹¤ë¤è¤¦¤ËÊѹ¹¤·¤Þ¤¹¡£

¡¡¤Þ¤º¤Ï BulletData ¥¯¥é¥¹¤Î¾ðÊó¤ò°·¤¨¤ë¤è¤¦¤Ë¡¢BulletData ·¿¤ÎÊÑ¿ô¤òÍÑ°Õ¤·¤Þ¤¹¡£¤³¤ÎÊÑ¿ô¤Ë¡¢¥Ð¥ì¥Ã¥È¤È¤·¤ÆɬÍפʤ¹¤Ù¤Æ¤Î¥Ç¡¼¥¿¤¬Æþ¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
®ÅÙ¡¢¹¶·âÎÏ¡¢¤½¤·¤Æ¥Ð¥ì¥Ã¥È¤Î²èÁü¤Î¾ðÊó¤Ê¤É¤¬Æþ¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤³¤Î¥Ç¡¼¥¿¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡Ö¤É¤Î¤è¤¦¤Ê¥Ð¥ì¥Ã¥È¤È¤·¤Æ¿¶¤ëÉñ¤¦¤«¡×·è¤Þ¤ê¤Þ¤¹¡£
¤³¤ÎÊÑ¿ô¤òÍøÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢BulletData ¥¯¥é¥¹¤Î¾ðÊó¤ò»²¾È¤·¤ÆÍøÍѽÐÍè¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡BulletData ¥¯¥é¥¹¤Î¾ðÊó¤Ï¡¢³°Éô¤Î¥¹¥¯¥ê¥×¥È¤«¤é°ú¿ô¤Ç¼õ¤±¼è¤ë¤è¤¦¤ËÀ߷פ·¤Þ¤¹¡£
¤¤¤Þ¤Þ¤Ç ShotBullet ¥á¥½¥Ã¥É¤Ç Vector3 ·¿¤Îȯ¼Í¤¹¤ëÊý¸þ¤Î¾ðÊó¤ò¼õ¤±¼è¤Ã¤Æ¤¤¤Þ¤·¤¿¤¬¡¢¤³¤Î°ú¿ô¤Ë BulletData ·¿¤òÀë¸À¤òÄɲ䷤ơ¢¤³¤³¤Ç¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ò¼õ¤±¼è¤ì¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£

¡¡¤³¤³¤ÇÂçÀڤʥݥ¤¥ó¥È¤¬¤¢¤ê¤Þ¤¹¡£
¡¡BulletData ¥¯¥é¥¹¤Î¾ðÊó¤ò·èÄꤹ¤ë¤Î¤Ï¡¢Bullet ¥¹¥¯¥ê¥×¥È¦¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤³¤ì¤â¥¨¥Í¥ß¡¼¤ÈƱ¤¸À߷פǤ¹¡£
Bullet ¥¹¥¯¥ê¥×¥È¤Ç¤Ï¡¢°ú¿ô¤È¤·¤ÆÆϤ¤¤¿ BulletData ¥¯¥é¥¹¤Î¾ðÊó¤òÍøÍѤ·¤Æ¡¢ÀßÄê¤ò¹Ô¤¦¤³¤È¤Ç¡¢¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÈ¿±Ç¤·¤Æ¥¨¥Í¥ß¡¼¤ËÌò³ä¤òÍ¿¤¨¤ë¤³¤È¤¬»Å»ö¤Ç¤¹¡£

¡¡À¸À®¤µ¤ì¤¿¥Ð¥ì¥Ã¥È¤Î¥¯¥í¡¼¥ó¤ËÂФ·¤Æ¡¢¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ò·èÄꤷ¡¢¡Ö¤³¤Î¾ðÊó¤ò»È¤Ã¤Æ¥Ð¥ì¥Ã¥È¤ËÌò³ä¤òÍ¿¤¨¤Æ¿¶¤ëÉñ¤¤¤òÊѤ¨¤Æ¤¯¤À¤µ¤¤¡×¤ÈÌ¿Îá¤ò½Ð¤¹¤Î¤Ï¥Ð¥ì¥Ã¥È¤òÀ¸À®¤·¤Æ¤¤¤ë¦¡¢
¤Ä¤Þ¤ê PlayerController ¥¹¥¯¥ê¥×¥È¦¤Ç¤Î½èÍý¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¤³¤ÎÌò³äʬô¤Î¹Í¤¨Êý¤Ë¤Ä¤¤¤Æ¤â¤·¤Ã¤«¤ê¤È³Ø½¬¤·¤ÆÍý²ò¤ò¿¼¤á¤Æ¤¯¤À¤µ¤¤¡£



¡¡°Ê¾å¤Î¤³¤È¤è¤ê¡¢¤³¤Î BulletData ¥¯¥é¥¹¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾ðÊó¤Ë¤Ä¤¤¤Æ¤Ï¡¢¤³¤Î¥¹¥¯¥ê¥×¥ÈÆâ¤Ç¸ÄÊ̤ËÀßÄê¤ò¹Ô¤¦É¬Íפ¬¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
ÂоݤȤʤëÊÑ¿ô¤Ï bulletSpeed ÊÑ¿ô¤È bulletPower ÊÑ¿ô¤Ç¤¹¡£¤³¤Î¤¦¤Á¡¢bulletPower ÊÑ¿ô¤Ë¤Ä¤¤¤Æ¤Ï¸åÄøÊѹ¹¤ò¹Ô¤¤¤Þ¤¹¡£
²¿¸Î¤Ê¤é¤Ð¡¢¤³¤ÎÊÑ¿ô¤Ï³°Éô¤Î¥¹¥¯¥ê¥×¥È¤Ë¤ª¤¤¤Æ»²¾È¤·¤ÆÍøÍѤµ¤ì¤Æ¤¤¤ëÃͤǤ¢¤ë¤¿¤á¡¢¤³¤ÎÃͤò½¤Àµ¤·¤¿¤êºï½ü¤·¤Æ¤·¤Þ¤¦¤È¡¢Bullet ¥¹¥¯¥ê¥×¥È°Ê³°¤Î¾ì½ê¤Ë¥¨¥é¡¼¤¬½Ð¤Æ¤·¤Þ¤¦¤«¤é¤Ç¤¹¡£

¡¡BulletData ¥¯¥é¥¹¤Ë¤Ï¡¢¥Ð¥ì¥Ã¥È¤Î¼ïÎà¤Î¾ðÊó¤È¥Ð¥ì¥Ã¥È¤ÎÍøÍѼԤξðÊó¤â´Þ¤Þ¤ì¤Æ¤ª¤ê¡¢BulletType ·¿¤È LiberalType ·¿¤È¤¤¤¦ enum ¤¬¤½¤ì¤ËÅö¤¿¤ê¤Þ¤¹¡£
¤³¤Î¾ðÊó¤ò»²¾È¤¹¤ì¤Ð¡¢À¸À®¤µ¤ì¤¿¥Ð¥ì¥Ã¥È¤¬¤É¤Î¤è¤¦¤Ê¼ïÎà¤Î¥Ð¥ì¥Ã¥È¤Ê¤Î¤«¡¢¤½¤ì¤òȯ¼Í¤¹¤ë¤Î¤Ï¥×¥ì¥¤¥ä¡¼¤Ê¤Î¤«¡¢¤¢¤ë¤¤¤Ï¥¨¥Í¥ß¡¼¤Ê¤Î¤«¡¢¤½¤ì¤é¤òȽÃǤò¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡£

¡¡BulletData ¥¯¥é¥¹Æâ¤ÎÊÑ¿ô¤Ï¤¹¤Ù¤Æ public ½¤¾þ»Ò¤Ë¤è¤Ã¤ÆÀë¸À¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢BulletData ¥¯¥é¥¹¤Î¾ðÊó¤ò¼èÆÀ¤·¤Æ¤¤¤ëÊÑ¿ô¤«¤é¤Ï
¤³¤ì¤é¤Î public ½¤¾þ»Ò¤ÎÊÑ¿ô¤Î¾ðÊó¤ò¤¹¤Ù¤ÆÍøÍѤǤ­¤Þ¤¹¡£
Î㤨¤Ð¡¢LiberalType ¤ò»²¾È¤·¤¿¤¤¾ì¹ç¤Ë¤Ï°Ê²¼¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

  // BulletData ¥¯¥é¥¹¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë LiberalType ¤Î¾ðÊ󤬡¢Boss ¤ÎÎóµó»Ò¤Ç¤¢¤ë¾ì¹ç
  if(bulletData.liberalType == EnemyType.Boss) {  }

¡¡¤³¤Î½èÍý¤òÍøÍѤ·¤Æ¡¢BulletData ¤«¤é¹¶·âÎÏ¡¢Â®ÅÙ¡¢¤½¤·¤Æ¥Ð¥ì¥Ã¥È¤Î²èÁü¤Î¾ðÊó¤ò»²¾È¤·¤Æ¡¢¥Ð¥ì¥Ã¥È¤ËÀßÄê¤ò¹Ô¤¤¤Þ¤¹¡£
BulletData ¤Î¼èÆÀ¤Ï ShotBullet ¥á¥½¥Ã¥É¤òÄ̤¸¤Æ¹Ô¤¤¤Þ¤¹¤Î¤Ç¡¢¤½¤Î¸å¡¢¤½¤Î¥Ç¡¼¥¿¤òÍøÍѤ·¤Æ¥Ð¥ì¥Ã¥È¤Î²èÁü¤òÀßÄꤹ¤ë¤è¤¦¤ËÀ߷פ·¤Þ¤¹¡£
²èÁü¤òÊѹ¹¤¹¤ë¤¿¤á¤Ë¤Ï¡¢Image ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¾ðÊó¤¬É¬Íפˤʤê¤Þ¤¹¤Î¤Ç¡¢SerializeField °À­¤ÇÊÑ¿ô¤òÀë¸À¤·¤Æ¤ª¤­¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢¤³¤Î¼ê½ç¤ò¼ÂÁõ¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¤¤¤Þ¤Þ¤Ç Knob ¤Î²èÁü¤Ç¤¢¤Ã¤¿¥Ð¥ì¥Ã¥È¤Î²èÁü¤¬¡¢¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤È¤·¤ÆÅÐÏ¿¤·¤¿²èÁü¤ËÊѹ¹¤µ¤ì¤Æ¥²¡¼¥àÆâ¤ËÈ¿±Ç¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¤½¤ì°Ê³°¤Î¾ðÊó¤â BulletData ¤Ë¤Ï´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢¸½ºß¤Ï¤³¤ì¤é¤Î¾ðÊó¤À¤±¤ò³èÍѤ·¤Þ¤¹¡£

¡¡°ÊÁ°¤«¤é³Ø½¬¤·¤Æ¤¤¤ë¤è¤¦¤Ë¡¢ÊÑ¿ô¤ËÂåÆþ¤µ¤ì¤Æ¤¤¤ë¾ðÊ󤫤é¤Ï¡¢public ½¤¾þ»Ò¤Î¾ðÊó¤ò¤µ¤é¤Ë¼èÆÀ¤·¤ÆÍøÍѤǤ­¤Þ¤¹¡£
¥Ô¥ê¥ª¥É¤ò»È¤Ã¤¿½èÍý¤Ë¤Ä¤¤¤ÆÍý²ò¤ò¿¼¤á¤Æ¤¤¤Ã¤Æ¤¯¤À¤µ¤¤¡£


Bullet.cs

¡¡<=¡¡¥¯¥ê¥Ã¥¯¤·¤¿¤é³«¤­¤Þ¤¹


¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é¡¢¥×¥ì¥Õ¥¡¥Ö¤Î Bullet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
public ½¤¾þ»Ò¤È SerializeField °À­¤ÇÀë¸À¤·¤¿¾ðÊó¤òɽ¼¨¤µ¤ì¤Æ¤¤¤ì¤ÐÌäÂꤢ¤ê¤Þ¤»¤ó¡£


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



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


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


¡¡Prefabs ¥Õ¥©¥ë¥À¤Ë¤¢¤ë Bullet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Î°ìÈÖ¾å¤Ë¤¢¤ë Open Prefab ¥Ü¥¿¥ó¤ò²¡¤·¤Æ¡¢¥×¥ì¥Õ¥¡¥Ö¤ÎÊÔ½¸¥â¡¼¥É¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡¿·¤·¤¯Äɲ䵤줿ÊÑ¿ô¤Î¤¦¤Á¡¢bulletData ÊÑ¿ô¤Ï²¿¤âÀßÄê¤ò¤·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡£
¤³¤ÎÉôʬ¤Ë¡¢PlayerContorller ¥¹¥¯¥ê¥×¥È¦¤«¤éÆϤ¤¤¿ bulletData ¤Î¾ðÊ󤬼«Æ°Åª¤ËÆþ¤ê¤Þ¤¹¡£
¤½¤¦¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¤³¤Î¥Ç¡¼¥¿¤òÍøÍѤ·¤Æ¥Ð¥ì¥Ã¥È¤ÎÌò³ä¡¢¿¶¤ëÉñ¤¤¤¬¼«Æ°Åª¤ËÀßÄꤵ¤ì¤Þ¤¹¡£


bulletData


¡¡imgImage ÊÑ¿ô¤Ë¤Ï¡¢Æ±Ì¾¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Æ¤¯¤À¤µ¤¤¡£
Image ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¾ðÊó¤¬ÅÐÏ¿¤µ¤ì¤Þ¤¹¡£¤³¤ÎÊÑ¿ô¤òÍøÍѤ·¤Æ¡¢BulletData ¥¯¥é¥¹¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë²èÁü¤Î¾ðÊó¤òÍøÍѤ·¡¢
¥Ð¥ì¥Ã¥È¤¬À¸À®¤µ¤ì¤ë¤¿¤Ó¤Ë¡¢¼«Æ°Åª¤Ë¥Ð¥ì¥Ã¥È¤Î²èÁü¤òÀßÄꤷ¤Æº¹¤·Âؤ¨¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£


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



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


£´£´¡¥GameData ¥¹¥¯¥ê¥×¥È¡¢BulletSelectManager ¥¹¥¯¥ê¥×¥È¡¢PlayerController ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¡¢¥Ð¥ì¥Ã¥ÈÍѤΥץì¥Õ¥¡¥Ö¤Ë BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ç¡¼¥¿¤ò»²¾È¤·¤ÆÀßÄê¤òÈ¿±Ç¤¹¤ë

£±¡¥Àß·×


¡¡Bullet ¥¹¥¯¥ê¥×¥È¤Ë¤Ï BulletData ¤òÍøÍѤ¹¤ë¤¿¤á¤Î½èÍý¤ò¼ÂÁõ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤·¤¿¡£
¤¢¤È¤Ï¡¢BulletData ¤ò¤É¤Î¤è¤¦¤Ë¤¹¤ì¤Ð Bullet ¥¹¥¯¥ê¥×¥È¤ËÆϤ±¤ë¤³¤È¤¬¤Ç¤­¤ë¤Î¤«¡¢¤½¤ì¤ò¹Í¤¨¤Æ¤¤¤­¤Þ¤¹¡£
¡¡
¡¡°ÊÁ°¤Ë¤â³Ø½¬¤·¤¿¤è¤¦¤Ë¡¢¥í¥¸¥Ã¥¯¤ò¹Í¤¨¤ë¤¿¤á¤Ë¤Ï¡¢ÌÜŪ¤È¤¹¤ëÁ´ÂΤνèÍý¤Î¥¤¥á¡¼¥¸¤òºî¤ë¤³¤È¡¢¤½¤Î½èÍý¤Î¥¹¥¿¡¼¥ÈÃÏÅÀ¤È¥´¡¼¥ëÃÏÅÀ¤òÌÀ³Î¤Ë¤¹¤ë¤³¤È¤¬ÂçÀڤǤ¹¡£
º£²ó¤Ç¤¢¤ì¤Ð¡¢¥¹¥¿¡¼¥ÈÃÏÅÀ¤ÏÀ¸À®¤µ¤ì¤¿¥Ð¥ì¥Ã¥È¤Ë¤Ê¤ê¤Þ¤¹¤·¡¢¥´¡¼¥ëÃÏÅÀ¤Ï Bullet ¥¹¥¯¥ê¥×¥È¤Ë BulletData ¤òÆϤ±¤ë¤³¤È¤Ç¤¹¡£
À¸À®¤µ¤ì¤¿¥Ð¥ì¥Ã¥È¡¢¤È¤¤¤¦¤³¤È¤Ï¡¢¥Ð¥ì¥Ã¥È¤òÀ¸À®¤·¤Æ¤¤¤ë¥¹¥¯¥ê¥×¥È¤Ë¤Ê¤ê¤Þ¤¹¤·¡¢¥´¡¼¥ëÃÏÅÀ¤Ï¤½¤Î¤Þ¤Þ Bullet ¥¹¥¯¥ê¥×¥È¤Î ShotBullet ¥á¥½¥Ã¥É¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¤³¤ì¤ò¼ç¼´¤Ë¡¢¤É¤Î¤è¤¦¤Ê¥í¥¸¥Ã¥¯¤ò¹Í¤¨¤Æ¥¹¥¯¥ê¥×¥È¤ËÌ¿Îá¤ò½Ð¤·¤Æ¤¤¤±¤ì¤Ð¤è¤¤¤«¹Í¤¨¤Æ¤¤¤¯¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¢
¤Þ¤º¤Ï¡¢Bullet ¥¹¥¯¥ê¥×¥È¤ØÅϤ¹¤¿¤á¤Î BulletData ¤ò¤É¤Î¤è¤¦¤Ë¤·¤Æ´ÉÍý¤¹¤ë¤Î¤«¡¢¤½¤ÎÊýË¡¤«¤é¹Í¤¨¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£



¡¡¸½ºß¥²¡¼¥à²èÌ̤ò¥¿¥Ã¥×¤¹¤ë¤È¥Ð¥ì¥Ã¥È¤¬À¸À®¤µ¤ì¤Þ¤¹¡£¤¿¤À¤·¤³¤Î¥Ð¥ì¥Ã¥È¤Ë¤Ï¤Þ¤À²¿¤â¾ðÊó¤¬ÆϤ¤¤Æ¤¤¤Þ¤»¤ó¡£
¤½¤Î¤¿¤á¡¢BulletData ¤Ï¶õ¤Ã¤Ý¤Î¾õÂ֤Ǥ¹¡£¤³¤³¤Ë¥Ð¥ì¥Ã¥È¤Î¾ðÊó¤òÆϤ¯¤è¤¦¤Ë¤¹¤ì¤Ð¡¢¥´¡¼¥ëÃÏÅÀ¤¬´°À®¤Ç¤¹¡£

¡¡¤µ¤Æ¡¢ÆϤ±¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤È¤Ï¡¢¤¤¤Ã¤¿¤¤²¿¤Ë¤Ê¤ë¤Î¤Ç¤·¤ç¤¦¤«¡£

¡¡º£¸å¤Ï¡¢¥Ð¥ì¥Ã¥È¤ÎÁªÂò¤¬Æþ¤Ã¤Æ¤­¤Þ¤¹¤¬¡¢¸½ºß¤Ï¤Þ¤À¤½¤Î¤è¤¦¤ÊÍ×ÁǤϤ¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¾ðÊ󤫤é¹Í¤¨¤Þ¤¹¡£
¸½ºß¤Ï¥×¥ì¥¤¥ä¡¼ÍѤΥХì¥Ã¥È¤Î¥Ç¡¼¥¿¤Î¤ßÅÐÏ¿¤µ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤ì¤ò½é´ü¤Î¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤È¤·¤ÆÍøÍѤ¹¤ë¤È¹Í¤¨¤Æ¤¯¤À¤µ¤¤¡£
°Ê¾å¤Î¤³¤È¤è¤ê¡¢¥²¡¼¥à¤ÎºÇ½é¤Ï¡¢½é´üÀßÄê¤È¤Ê¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÀßÄꤷ¡¢´ÉÍý¤¹¤ë¤³¤È¤¬¤Ç¤­¤ì¤Ð¡¢¤½¤Î¥Ç¡¼¥¿¤ò BulletData ¤È¤·¤Æ Bullet ¥¹¥¯¥ê¥×¥È¤Ø¤ÈÅϤ¹¤³¤È¤¬½ÐÍ褽¤¦¤Ç¤¹¡£
¡¡
¡¡¤Ä¤Þ¤ê¡¢¡Ö¸½ºß»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¡×¤È¤¤¤¦¾ðÊó¤òÀßÄꤷ¡¢´ÉÍý¤¹¤ëɬÍפ¬¤¢¤ë¤È¤¤¤¦¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
¤³¤Á¤é¤Î¾ðÊó¤ò¤É¤Î¥¹¥¯¥ê¥×¥È¤Ç´ÉÍý¤¹¤ë¤è¤¦¤Ë¤¹¤ë¤«¤â¡¢º£¸å¤ÎÀßÄê¤Ë´Ø¤ï¤Ã¤Æ¤­¤Þ¤¹¡£
Àè¤Û¤É¤â½ñ¤¤¤¿¤è¤¦¤Ë¡¢º£¸å¤Ï¥Ð¥ì¥Ã¥È¤òÁªÂò¤¹¤ëµ¡Ç½¤¬Äɲ䵤ì¤ëͽÄê¤Ç¤¹¡£´ÉÍý¤¹¤ë¡¢¤È¤¤¤¦¤³¤È¤Ï¡¢¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ò¥Ð¥ì¥Ã¥È¤òÁªÂò¤¹¤ë¤¿¤Ó¤Ë¹¹¿·¤·¡¢
¾ï¤ËÁªÂò¤µ¤ì¤¿¾õÂ֤ǴÉÍý¤ò¤¹¤ë¡¢¤È¤¤¤¦É¬Íפ¬À¸¤Þ¤ì¤Æ¤­¤Þ¤¹¡£

¡¡¤³¤¦¤¤¤Ã¤¿Éôʬ¤Þ¤Ç¤ò¹Í¤¨¤Æ¡¢¤É¤Î¥¹¥¯¥ê¥×¥È¤Ë¾ðÊó¤ò´ÉÍý¤µ¤»¤Æ¤¤¤±¤Ð¤è¤¤¤«¤ò¸¡Æ¤¤·¤ÆÀ߷פò¹Ô¤Ã¤Æ¤¤¤¯É¬Íפ¬¤¢¤ë¡¢¤È¤¤¤¦¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£



¡¡º£²ó¤Î¥²¡¼¥à¤Ë¤Ï¤É¤Î¥¹¥¯¥ê¥×¥È¤Ç¤â»²¾È¤¬¤Ç¤­¤ë¥¹¥¯¥ê¥×¥È¤È¤·¤Æ¡¢GameData ¥¹¥¯¥ê¥×¥È¤¬¤¢¤ê¤Þ¤¹¡£
¤³¤Á¤é¤Ë¡¢¸½ºß»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤·¤Æ¤â¤é¤¦¤è¤¦¤Ë¤·¤Þ¤¹¡£

¡¡Íýͳ¤È¤·¤Æ¤Ï¡¢¤É¤Î¥¹¥¯¥ê¥×¥È¤«¤é¤Ç¤â»²¾È¤¬¤Ç¤­¤ë¤È¤¤¤¦ÍøÅÀ¤òÀ¸¤«¤¹¤¿¤á¤Ç¤¹¡£
Àè¤ò¹Í¤¨¤ë¤È¡¢¸½ºß»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤ò»²¾È¤¹¤ë°Ê³°¤Ë¡¢¤½¤Î¥Ð¥ì¥Ã¥È¤Î¾ðÊó¤òÊѹ¹¤·¤¿¤ê¡¢¤È¤¤¤¦½èÍý¤âɬÍפˤʤê¤Þ¤¹¤Î¤Ç¡¢
´ÉÍý¤·¤Æ¤¤¤ë¥¹¥¯¥ê¥×¥È¤Ï¡¢¿§¡¹¤Ê¥¹¥¯¥ê¥×¥È¤«¤é¸Æ¤Ó½Ð¤µ¤ì¤¿¤ê¤¹¤ë²ÄǽÀ­¤¬¹â¤¤¤Ï¤º¤Ç¤¹¡£
¤½¤¦¤¤¤Ã¤¿¤â¤Î¤Ï¡¢GameData ¥¹¥¯¥ê¥×¥È¤Î¤è¤¦¤Ê¥·¥ó¥°¥ë¥È¥ó¥¯¥é¥¹¤Ë´ÉÍý¤ò¤µ¤»¤ë¤³¤È¤ÇÍøÊØÀ­¤¬Áý¤·¤Þ¤¹¡£

¡¡Î㤨¤Ð£³¤Ä¤Î¥¹¥¯¥ê¥×¥È¤Ë½¤Àµ¤¬É¬Íפʾõ¶·¤Ë¤Ê¤Ã¤¿¤È¤­¡¢GameData ¥¹¥¯¥ê¥×¥È¤Ç¤¢¤ì¤Ð¡¢
³Æ¥¹¥¯¥ê¥×¥È¤ËÊÑ¿ô¤ÎÀë¸À¤Ê¤·¤ÇÍøÍѤǤ­¤Þ¤¹¤Î¤ÇÉÔɬÍפËÊÑ¿ô¤òÁý¤ä¤¹¤³¤È¤âËɤ°¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡°Ê¾å¤Î¤³¤È¤ò¹Í¤¨¤ë¤È¡¢¸½ºß»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤Î¾ðÊó¤ò GameData ¥¹¥¯¥ê¥×¥È¤Ç´ÉÍý¤ò¤µ¤»¤Æ
ÀßÄê(Êѹ¹)¤¹¤ëºÝ¤ä¡¢¾ðÊó¤ò¼èÆÀ¤¹¤ë¤¿¤á¤Î¥á¥½¥Ã¥É¤òÍÑ°Õ¤·¤Æ¤ª¤¤¤Æ¡¢¤½¤Î¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ç¾ðÊó¤òÊѹ¹¤·¤¿¤ê¡¢»²¾È¤Ç¤­¤ë¤è¤¦¤ÊÀ߷פˤ·¤Þ¤¹¡£



¡¡½é´ü¥Ð¥ì¥Ã¥È¤ÎÀßÄê¤Ë¤Ä¤¤¤Æ¤Ï¡¢GameData ¥¹¥¯¥ê¥×¥È¤ËÍÑ°Õ¤·¤¿¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤ÇÀßÄꡦÊѹ¹¤Ç¤­¤ë¤è¤¦¤Ë¤¹¤ë¤È¤·¤¿¾ì¹ç¡¢
¤Ç¤Ï¼¡¤Ë¡¢¤É¤Î¥¹¥¯¥ê¥×¥È¤Ç¤³¤Î½é´ü¥Ð¥ì¥Ã¥È¤ÎÀßÄê¤Î½èÍý¤ò¼Â¹Ô¤¹¤ì¤Ð¤¤¤¤¤Î¤«¤ò¹Í¤¨¤Æ¤¤¤­¤Þ¤¹¡£

¡¡¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤Ï BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤òÍøÍѤ¹¤ë¤Î¤Ç¤¹¤«¤é¡¢
ɬÁ³Åª¤Ë¡¢¤³¤Î BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò´ÉÍý¤¹¤ë¥¹¥¯¥ê¥×¥È¤«¤é¡¢GameData ¥¹¥¯¥ê¥×¥È¤ËÍÑ°Õ¤·¤¿ÀßÄêÍѤΥ᥽¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤¬ÍýÁÛŪ¤Ç¤¹¡£
°ú¿ô¤Ë BulletData ¤òÅϤ¹¤è¤¦¤Ë¤¹¤ì¤Ð¡¢¤½¤ì¤ò¤½¤Î¤Þ¤Þ GameData ¥¹¥¯¥ê¥×¥È¤ËÍÑ°Õ¤·¤¿ÊÑ¿ô¤ËÂåÆþ(ÅÐÏ¿)¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡°Ê¾å¤Î¤³¤È¤ò¤Õ¤Þ¤¨¤Æ¡¢BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò´ÉÍý¤¹¤ë¥¹¥¯¥ê¥×¥È¤ò¤É¤Î¥¹¥¯¥ê¥×¥È¤Ë¤¹¤ë¤«¡¢¹Í¤¨¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£



¡¡°Ê¾å¤Ç½é´ü¥Ð¥ì¥Ã¥È¤ÎÀßÄê¤Ë¤Ä¤¤¤Æ¤Ï½èÍý¤Îή¤ì¤¬¸«¤¨¤Þ¤·¤¿¡£ºÇ¸å¤Ï¡¢¥¹¥¿¡¼¥ÈÃÏÅÀ¤Î½¤Àµ¤Ç¤¹¡£
¥Ð¥ì¥Ã¥È¤òÀ¸À®¤·¤Æ¤¤¤ë¤Î¤Ï PlayerController ¥¹¥¯¥ê¥×¥È¤Ç¤¹¤·¡¢¤³¤Á¤é¤«¤é¸½ºß¤â ShotBullet ¥á¥½¥Ã¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤Þ¤¹¡£
ShotBullet ¥á¥½¥Ã¥É¤ÏÀè¤Û¤É Bullet ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿ºÝ¤Ë BulletData ¤ò°ú¿ô¤Ç¼õ¤±¼è¤ì¤ë¤è¤¦¤ËÁë¸ý(°ú¿ô)¤òÍÑ°Õ¤·¤Æ¤¢¤ê¤Þ¤¹¡£

¡¡¤³¤Î¥á¥½¥Ã¥É¤Ë GameData ¥¹¥¯¥ê¥×¥È¤ò»²¾È¤·¤Æ¡¢¸½ºß»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ò°ú¿ô¤È¤·¤ÆÅϤ¹¤è¤¦¤Ë¤¹¤ì¤Ð¡¢
BulletData ¤Î¾ðÊó¤ò̵»ö¤Ë ShotBullet ¥á¥½¥Ã¥É¤ËÆϤ±¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£



¡¡½èÍý¤Î¥¤¥á¡¼¥¸¤Ï¤ï¤­¤Þ¤·¤¿¤«¡©
ʸ»ú¥Ù¡¼¥¹¤Ç½èÍý¤ò¤Þ¤È¤á¤Æ¤­¤Þ¤·¤¿¤¬¡¢Ã¼Åª¤Ë½èÍý¤Î½çÈ֤Ƚ¤ÀµÅÀ¤ò¤Þ¤È¤á¤ë¤È¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¡ã¥í¥¸¥Ã¥¯¤Îή¤ì¡ä
¡¡£±¡¥GameData ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢¸½ºß»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÅÐÏ¿¤¹¤ë¤¿¤á¤ÎÊÑ¿ô¤òÀë¸À¤¹¤ë¡£¤Þ¤¿¡¢¤³¤Î¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÊѹ¹¤·¤¿¤ê¡¢»²¾È¤·¤¿¤ê¤Ç¤­¤ë¥á¥½¥Ã¥É¤òÍÑ°Õ¤¹¤ë
¡¡£²¡¥BulletSelectManager ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÍøÍѤ·¤Æ¡¢½é´ü¤Î¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ò¡¢GameData ¥¹¥¯¥ê¥×¥È¤ËÍÑ°Õ¤·¤¿¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ÎÊÑ¿ô¤ËÂåÆþ¤¹¤ë
¡¡£³¡¥PlayerController ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢¥Ð¥ì¥Ã¥È¤òÀ¸À®¤·¤¿ºÝ¤Ë Bullet ¥¹¥¯¥ê¥×¥È¤Î°ú¿ô¤Ë¡¢Êý¸þ¤Î¾ðÊó¤È°ì½ï¤Ë¡¢¸½ºß»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤·¤ÆÅϤ¹
¡»£´¡¥Bullet ¥¹¥¯¥ê¥×¥È¤Ë PlayerController ¥¹¥¯¥ê¥×¥È¤«¤éÊý¸þ¤Î¾ðÊó¤È¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¾ðÊó¤¬ÆϤ¯¤Î¤Ç¡¢¤½¤ì¤òÍøÍѤ·¤Æ¥Ð¥ì¥Ã¥È¤Î¿¶¤ëÉñ¤¤¡Ê¹¶·âÎÏ¡¢Â®ÅÙ¡¢²èÁü¤Ê¤É)¤òÀßÄꤹ¤ë

¡¡¡»£´¤ÎÉôʬ¤¬¼ÂÁõ¤Î½ªÎ»¤·¤Æ¤¤¤ëÉôʬ¤Ë¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢»Ä¤ê¤ÎÉôʬ¤Î¥í¥¸¥Ã¥¯¤ò¼ÂÁõ¤·¤Æ¤¤¤­¤Þ¤¹¡£


£²¡¥GameData ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡¸½ºßÁªÂò¤·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÊÝ»ý¤·¡¢¤½¤ì¤ò»²¾È¤µ¤»¤ë¤¿¤á¤ÎÊÑ¿ô¤È¥á¥½¥Ã¥É¤òÍÑ°Õ¤·¤Þ¤¹¡£
GameData ¥¯¥é¥¹¤Ç´ÉÍý¤·¤Æ¤ª¤¯¤³¤È¤Ë¤è¤ê¡¢¤¤¤º¤ì¤Î¥¹¥¯¥ê¥×¥È¤«¤é¤â»²¾È¤¬Íưפˤʤê¤Þ¤¹¡£


GameData.cs

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


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

¡¡GameData ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
¿·¤·¤¯ SerializeField°À­¤ÇÀë¸À¤·¤¿ BulletData ·¿¤ÎÊÑ¿ô¤¬Äɲ䵤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤Á¤é¤Ë¸½ºß¥²¡¼¥àÆâ¤Ç»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤òÂåÆþ¤·¤ÆÍøÍѤ·¤Æ¤¤¤­¤Þ¤¹¡£


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




£³¡¥BulletSelectManager ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÍøÍѤǤ­¤ë¤è¤¦¤Ë¤·¤Æ½é´ü¥Ð¥ì¥Ã¥È¤ÎÀßÄê¤ò¹Ô¤¦


¡¡BulletSelectManager ¥¹¥¯¥ê¥×¥È¤Ë BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò´ÉÍý¤µ¤»¤ÆÍøÍѤǤ­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¤Þ¤¿¡¢½é´ü¤Î¥Ð¥ì¥Ã¥È¤Î¾ðÊó¤ò GameData ¥¯¥é¥¹Æâ¤ËÅÐÏ¿¤·¡¢PlayerController ¥¹¥¯¥ê¥×¥È¤Ç»²¾È¤·¤ÆÍøÍѽÐÍè¤ë¤è¤¦¤Ë¤·¤Æ¤ª¤­¤Þ¤¹¡£


BulletSelectManager.cs


¡¡¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤¿¤é¥»¡¼¥Ö¤·¤Þ¤¹¡£
BulletSelectManager ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¡¢¿·¤·¤¯ SerializeField °À­¤ÇÀë¸À¤·¤¿ÊÑ¿ô¤¬Äɲ䵤ì¤Æ¤¤¤ë¤³¤È¤È³Îǧ¤·¤Þ¤¹¡£


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



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


¡¡bulletDataSO ÊÑ¿ô¤Ë¡¢Datas ¥Õ¥©¥ë¥À¤Ë¤¢¤ë BulletDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¡¢ÊÑ¿ô¤Ë¥¢¥µ¥¤¥ó¤·¤Æ¤¯¤À¤µ¤¤¡£
BulletDataSO ¥¹¥¯¥ê¥×¥È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢Ãí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£


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



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


£µ¡¥PlayerController ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡¸½ºß¤Ï¡¢¥Ð¥ì¥Ã¥È¤ÎÀ¸À®½èÍý¤ò¹Ô¤Ã¤¿¤¢¤È¤Ë¡¢Bullet ¥¹¥¯¥ê¥×¥È¤ËÂФ·¤Æ¡¢È¯¼Í¤¹¤ëÊý¸þ¤ò ShotBullet ¥á¥½¥Ã¥É¤Ë°ú¿ô¤òÍøÍѤ·¤ÆÃͤòÅϤ·¤Æ¤¤¤Þ¤¹¡£
¤³¤Î°ú¿ô¤Ë¤Ï BulletData ·¿¤Î¾ðÊó¤¬Äɲ䵤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢GameData ¥¹¥¯¥ê¥×¥È¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¸½ºß»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ò°ú¿ô¤È¤·¤ÆÅϤ¹¤è¤¦¤Ë½èÍý¤òÄɲä·¤Þ¤¹¡£
GameData ¥¹¥¯¥ê¥×¥È¤Ë¤Ï¸½ºß»ÈÍѤ·¤Æ¤¤¤ë¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë¤¿¤á¤Î¥á¥½¥Ã¥É¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤ÎÌá¤êÃͤò³èÍѤ·¤Æ°ú¿ô¤ò»ØÄꤷ¤Þ¤·¤ç¤¦¡£


PlayerController.cs

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


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


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


¡¡¤¹¤Ù¤Æ¤Î¼ÂÁõ¤¬´°Î»¤·¤Þ¤·¤¿¤Î¤Ç¡¢¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ½çÈ֤˽èÍý¤ÎÆâÍƤò³Îǧ¤·¤Æ¤¤¤­¤Þ¤¹¡£

¡¡¤Þ¤º¤Ï¥²¡¼¥à¼Â¹Ô¤·¡¢¥Ð¥ì¥Ã¥ÈÁªÂò¥Ü¥¿¥ó¤¬£´¤ÄÀ¸À®¤µ¤ì¤Æ¤«¤é¡¢¥²¡¼¥à¤ò°ì»þÄä»ß¤·¤Æ¤¯¤À¤µ¤¤¡£
GameData ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Æ¡¢currentBulletData ÊÑ¿ô¤ÎÃͤò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£
¤³¤³¤Ë½é´ü¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤¬ÂåÆþ¤µ¤ì¤Æ¤¤¤ì¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£


¡ãGameData ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü¡¡¥²¡¼¥à¤ò¼Â¹Ô¤¹¤ë¤È½é´ü¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤¬ÂåÆþ¤µ¤ì¤ë¡ä





¡¡¥²¡¼¥à¤òºÆ³«¤·¤Æ¡¢¥Ð¥ì¥Ã¥È¤òȯ¼Í¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£À¸À®¤µ¤ì¤¿ Bullet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤â BulletData ¤ÎÃͤ¬ÂåÆþ¤µ¤ì¤Æ
¤½¤Î¥Ç¡¼¥¿¤Ë´ð¤Å¤¤¤¿¥Ð¥ì¥Ã¥È¤È¤·¤Æ¿¶¤ëÉñ¤Ã¤Æ¤¤¤ì¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£²èÁü¤À¤±¤Ç¤Ï¤Ê¤¯¡¢Â®ÅÙ¡¢¹¶·âÎϤʤɤÎÃͤâ³Îǧ¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£


¡ãÀ¸À®¤µ¤ì¤¿ Bullet ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î BulletData ¤Ë½é´ü¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤¬ÂåÆþ¤µ¤ì¤ë¡ä





¡ã¼ÂÁõÆ°²è­¡¡¡GameData ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Î BulletData ¤Ë½é´ü¥Ð¥ì¥Ã¥È¤Î¥Ç¡¼¥¿¤¬ÂåÆþ¤µ¤ì¤ë¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯


¡ã¼ÂÁõÆ°²è­¢¡¡GameData ¤Î BulletData ¤òÍøÍѤ·¡¢È¯¼Í¤µ¤ì¤¿¥Ð¥ì¥Ã¥È¤Î²èÁü¤¬Êѹ¹¤µ¤ì¤Æ¤¤¤ë¡ä
Æ°²è¥Õ¥¡¥¤¥ë¤Ø¤Î¥ê¥ó¥¯


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

¡¡¼¡¤Ï¡¡È¯Å¸£²£²¡¡¡Ý¥Ð¥ì¥Ã¥ÈÍѤΥǡ¼¥¿¥Ù¡¼¥¹¤ÎÍøÍÑ­¢¡Ý¡¡¤Ç¤¹¡£