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

¡¡Éð´ï¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤òºîÀ®¤·¤Þ¤¹¡£¤³¤Îµ¡Ç½¤òºîÀ®¤·¤Æ¤ª¤¯¤³¤È¤Ë¤è¤ê¡¢»ÈÍѤ·¤Æ¤¤¤ëÉð´ï¤ÎÆÃÄê¡¢Éð´ï¤ÎÀÚ¤êÂؤ¨¤È¤¤¤Ã¤¿µ¡Ç½¤¬¼ÂÁõ²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡°Ê²¼¤ÎÆâÍƤǽçÈ֤˼ÂÁõ¤ò¿Ê¤á¤Æ¤¤¤­¤Þ¤¹¡£
º£²ó¤ÏÆâÍƤ¬¿·¤·¤¤¤â¤Î¤Ð¤«¤ê¤Ç¡¢Èó¾ï¤Ë¿¼¤¤Ãμ±¡¦µ»½Ñ¤òÆÀ¤é¤ì¤ëÆâÍƤˤʤäƤ¤¤Þ¤¹¤¬¡¢ÅöÁ³¡¢Æñ¤·¤¤ÆâÍƤˤâ¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£

¼ê½ç£±£¸¡¡¡ÝÉð´ïÍѤΥǡ¼¥¿¥Ù¡¼¥¹ºîÀ®¡Ý



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

¡¡¡¦¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ÎºîÀ®¤È¥Ç¡¼¥¿¤ÎÅÐÏ¿

°ÊÁ°³Ø½¬¤·¤¿ÆâÍƤÎÉü½¬¤â¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢¤³¤³¤Ç¤·¤Ã¤«¤ê¤ÈÍý²ò¤ò¿¼¤á¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£

¡¡¡¦enum ¤À¤±¤Î¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤ÎºîÀ®
¡¡¡¦¥¯¥é¥¹Æâ¤ËÊ̤Υ¯¥é¥¹¤òºîÀ®¤¹¤ë(Æþ¤ì»Ò¥¯¥é¥¹)
¡¡¡¦[System.Serializable¡Ê¥·¥ê¥¢¥é¥¤¥¶¥Ö¥ë¡Ë] °À­
¡¡¡¦List ¤Î½é´ü²½
¡¡¡¦Æþ¤ì»Ò¥¯¥é¥¹¤ò³°Éô¤Î¥¯¥é¥¹¤ÇÀë¸À¤¹¤ëÊýË¡



¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥ÈºîÀ®¤Î¤¿¤á¤Î½àÈ÷¤ò¹Ô¤¦

£±¡¥Àß·×


¡¡¥¨¥Í¥ß¡¼¤ä¥¢¥¤¥Æ¥à¤Ê¤É¤Î¥Ç¡¼¥¿¤Ê¤É¤ò°·¤¦¾ì¹ç¤Ë¡¢Ê£¿ô¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤Î¤Þ¤È¤Þ¤ê¤È¤·¤Æ´ÉÍý¤Ç¤­¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¤è¤¦¤Ê¤â¤Î¤¬¤¢¤ë¤È°·¤¤¤¬³Ú¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡Unity¤Ë¤Ï¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤È¤¤¤¦µ¡Ç½¡Ê¤³¤Á¤é¤Ï¥¢¥»¥Ã¥È¤È¤·¤Æ¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò°·¤¦ÊýË¡¡Ë¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢º£²ó¤Ï¤³¤Îµ¡Ç½¤òÍøÍѤ·¤Æ¤¤¤­¤Þ¤¹¡£

¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë¤¿¤á¤Ë¤Ï¡¢ÀìÍѤΥ¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤ÎºîÀ®ÊýË¡¤ò³Ø½¬¤·¤Þ¤¹¡£

¡¡º£²óºîÀ®¤¹¤ë¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ÏÉð´ï¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ëÌÜŪ¤ÇºîÀ®¤ò¹Ô¤¤¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢¥¹¥¯¥ê¥×¥ÈÆâ¤Ë¤Ï¡¢Éð´ï¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë¤¿¤á¤Î WeaponData ¥¯¥é¥¹¤òÍÑ°Õ¤·¤Þ¤¹¡£

¡¡WeaponData ¥¯¥é¥¹¤Ï¡¢Éð´ï£±¤Äʬ¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤Ë¤Þ¤È¤á¤Æ¤¤¤ë¾ðÊ󷲤Ǥ¹¡£
¸½ºß¤ÎÉð´ï¤Ï¸ÇÄêÃͤȤ·¤Æ¡¢PlayerController ¥¯¥é¥¹Æâ¤ËÃÆ¿ô¤ä¹¶·âÎϤȤ¤¤Ã¤¿Ãͤò¸ÄÊ̤ËÍÑ°Õ¤·¤Æ¤¤¤Þ¤¹¤¬¡¢
¤³¤ì¤ò£±¤Ä¤Î¥Ç¡¼¥¿·²¤È¤·¤Æ¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¤¬ WeaponData ¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¤³¤Î WeaponData ¥¯¥é¥¹¤Ï¡¢¥²¡¼¥à¤ËÅо줹¤ëÉð´ï¤Î¿ô¤À¤±ÍÑ°Õ¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¤Î¤Ç¡¢¤½¤ì¤ò´ÉÍý¤¹¤ë¤¿¤á¤Ë List µ¡Ç½¤òÍøÍѤ·¤Þ¤¹¡£

¡¡¤³¤Î£²¤Ä¤Î¾ðÊó¤ò´ÉÍý¤·¤Æ´°À®¤¹¤ë¤Î¤¬¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ê¤ê¤Þ¤¹¡£
¤É¤Î¤è¤¦¤Ê¹½À®¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤«¤Ï¥¹¥¯¥ê¥×¥ÈºîÀ®¸å¤ËÀâÌÀ¤ò¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤ò¤·¤Ã¤«¤ê¤È³Ø½¬¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡¤Ê¤ª¡¢º£²ó¤ÏÍøÍѤ·¤Æ¤¤¤Þ¤»¤ó¤¬¡¢Éð´ï¤Î¼ïÎà(¥¿¥¤¥×)¤òÅÐÏ¿¤¹¤ë¤¿¤á¤Î WeaponType ¤ò enum ¤Ë¤ÆºîÀ®¤·¤Æ¤â¤è¤¤¤Ç¤·¤ç¤¦¡£


£²¡¥WeapoType ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë


¡¡»²¹ÍÍѤˡ¢Éð´ï¤Î¼ïÎà¤òÅÐÏ¿¤·¤Æ¤ª¤¯¤¿¤á¤Î enum ¤ÎºîÀ®ÊýË¡¤òÄ󼨤·¤Þ¤¹¡£
¼ê½ç£±£±¤Ç¤â³Ø½¬¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢Éü½¬¤È¤·¤ÆºîÀ®¤·¤Æ¤ª¤¯¤È¤¤¤¤¤Ç¤·¤ç¤¦¡£

¡¡enum (¥¤¡¼¥Ê¥à)¤òÍøÍѤ·¤Æ¡¢Éð´ï¤Î¼ïÎà¤ò»öÁ°¤ËÅÐÏ¿¤·¡¢¤³¤Î¾ðÊó¤òÉð´ï¤Î»ý¤Ä¾ðÊó¤È¤·¤Æ WeaponData ¥¯¥é¥¹Æâ¤ËÀßÄê¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
enum ¤Î¤ß¤Ç¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë¾ì¹ç¡¢using ¤ÎÀë¸À¤ä¡¢MonoBehaviour(¥â¥Î¥Ó¥Ø¥¤¥Ó¥¢) ¥¯¥é¥¹¤Î·Ñ¾µ¤ÏÉÔÍפǤ¹ ¡£
¤½¤·¤Æ¤É¤Î¥¹¥¯¥ê¥×¥È¤«¤é¤Ç¤â ÊÑ¿ô¤ÎÂåÆþ¤Ê¤·¤ÇÍøÍѲÄǽ ¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡enum ¤Ç¤Ï¥²¡¼¥àÆâ¤ËÅо줵¤»¤¿¤¤¼ïÎà¤Î¾ðÊó¤ò¡¢Îóµó»Ò(¤ì¤Ã¤­¤ç¤·)¤È¤¤¤¦·Á¤Ç¼ïÎà¤òºîÀ®¤Ç¤­¤Þ¤¹¡£
º£²ó¤ÏÉð´ï¤Î¼ïÎà¤È¤¤¤¦¾ðÊó¤ò WeaponType ¤È¤¤¤¦Ì¾Á°¤ÇºîÀ®¤·¡¢¤½¤ÎÃæ¤Ë Éð´ï¤Î¼ïÎà ¤òÅÐÏ¿¤·¤Æ¤ª¤­¤Þ¤¹¡£
¤³¤ì¤ÏÄɲòÄǽ¤Ê¾ðÊó¤Ç¤¹¤Î¤Ç¡¢À衹¤Ë Éð´ï¤Î¼ïÎबÁý¤¨¤Æ¤âÂбþ¤Ç¤­¤Þ¤¹ ¡£

WeaponType.cs

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


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



¡¡£³¤Ä°Ê¾å¤Î¾ðÊó¤ò´ÉÍý¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢enum ¤Ç¤½¤Î¼ïÎà¤òÅÐÏ¿¤·¤Æ¤ª¤¯¤³¤È¤ò¤ª¤¹¤¹¤á¤·¤Þ¤¹¡£
enum ¤òÍøÍѤ¹¤ë¾ì¹ç¡¢¤½¤ÎÅÐÏ¿¤·¤Æ¤¢¤ëÎóµó»Ò¤«¤é¤·¤«¾ðÊó¤ò»ØÄê¤Ç¤­¤Þ¤»¤ó¤Î¤Ç¡¢
Î㤨¤Ð¡¢Ê¸»úÎó¤È°Û¤Ê¤ê¡¢»ØÄê¤ËºÝ¤·¤ÆÂǤÁ´Ö°ã¤¨¤¬È¯À¸¤·¤Þ¤»¤ó¤Î¤Ç¡¢ÉÔÈ÷¤ÎÃͤ¬Æþ¤ë¤³¤È¤âËɤ°¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡¥²¡¼¥à¤ÎÆâÍƤ˱þ¤¸¤¿ enum ¤ò¹Í¤¨¤ÆºîÀ®¤·¤Æ±¿ÍѤ·¤Þ¤¹¡£
¥×¥ì¥¤¥ä¡¼¤Î¾õÂÖÍÑ(ÆÇ¡¢º®Íð¡¢áã¤ì¤È¤«)¡¢¥¢¥¤¥Æ¥à¤Î¼ïÎà(¾ÃÌ×ÉÊ¡¢Éð´ï¡¢Ëɶñ¡¢¤Ê¤É)¡¢
¥²¡¼¥à¤Î¾õÂÖ´ÉÍý(¥²¡¼¥à³«»ÏÁ°¡¢¥²¡¼¥àÃæ¡¢¥²¡¼¥à½ªÎ»¡Ë¤Ê¤É¡¢Èó¾ï¤Ë±þÍѤ¬Íø¤¯µ¡Ç½¤Ç¤¹¡£



¡¡¤Ê¤ª enum ¤Ç¤Ï³ÆÎóµó»Ò¤Ë¼«Æ°Åª¤ËÀ°¿ô¤ÎÈֹ椬Ϳ¤¨¤é¤ì¤Þ¤¹ ¡£°ìÈ־夫¤é 0 ¤ÇÏ¢È֤ˤʤäƤ¤¤Þ¤¹ ¡£
º£²ó¤Î¾ì¹ç¤Ç¤¢¤ì¤Ð¡¢Normal ¤Ë¤Ï 0¡¢Fire ¤Ë¤Ï 2 ¤Î¿ô»ú¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Þ¤¹¡£

¡¡¤³¤ÎÈÖ¹æ¤Ï¸«¤¨¤Ê¤¤¾ðÊó¤Ç¤¹¤¬¡¢Îóµó»Ò¤ò int ·¿¤Ë¥­¥ã¥¹¥È¤ò¹Ô¤¦¤³¤È¤Ç¼èÆÀ¤·¤ÆÍøÍѽÐÍè¤Þ¤¹¡£
²¼µ­¤ÎÎã¤Î¾ì¹ç¡¢enumValue ¤Ë¤Ï 1 ¤¬ÂåÆþ¤µ¤ì¤Þ¤¹¡£

¡ãenum ¤ÎÎóµó»Ò¤Î¥­¥ã¥¹¥È¡ä
int  enumValue = (int)WeaponType.Freeze;

¤Þ¤¿¡¢Îóµó»Ò¤ÎÀë¸À»þ¤Ë¿ô»ú¤ò»ØÄꤷ¤ÆÂåÆþ¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£¤½¤Î¾ì¹ç¤Ë¤ÏÏ¢È֤ǤϤʤ¯¡¢»ØÄꤷ¤¿¿ôÃͤò¼èÆÀ½ÐÍè¤Þ¤¹¡£

¡ã¿ô»ú¤ÎÂåÆþ¤ÎÎã(º£²ó¤³¤ÎÊý¼°¤ÏÍøÍѤ·¤Þ¤»¤ó)¡ä
WeaponType.cs
public enum WeaponType {
    Normal = 10,
    Freeze = 5,
    Fire = 100
}

¡¡¾åµ­¤Î¤è¤¦¤ËÂåÆþ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢Îóµó»Ò¤ò int ·¿¤Ë¥­¥ã¥¹¥È¤¹¤ë¤È¡¢ÂåÆþ¤·¤Æ¤¢¤ëÃͤ¬¼èÆÀ½ÐÍè¤Þ¤¹¡£
º£²ó¤Ï¿ô»ú¤ÎÂåÆþ¤Ï¹Ô¤Ã¤Æ¤¤¤Þ¤»¤ó¤Î¤Ç°ìÈÖ¾å¤ÎÎóµó»Ò¤Ë¤Ï 0 ¤«¤é½çÈ֤˺ÎÈÖ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£


£³¡¥WeaponData ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë


¡¡Éð´ï¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤Ë¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤¿¤á¤Î¾ðÊ󷲤Ȥ·¤Æ¡¢WeaponData ¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£
¤³¤³¤Ë´Þ¤Þ¤ì¤ëÊÑ¿ô¤¬¡¢Éð´ï£±¤Ä¤¢¤¿¤ê¤ÎÊÝÍ­¤¹¤ë¥Ç¡¼¥¿·²¤Ë¤Ê¤ê¤Þ¤¹¡£


WeaponData.cs

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


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


£´¡¥WeaponDataSO ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë


¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë¤¿¤á¤ËɬÍ×¤Ê WeaponDataSO ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥ÈÀìÍѤΠScriptableObject ¥¯¥é¥¹¤ò·Ñ¾µ¤·¡¢[CreateAssetMenu] °À­¤òµ­½Ò¤¹¤ë ¤³¤È¤ÇºîÀ®²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ï¡¢»ØÄꤷ¤¿¥Ç¡¼¥¿¤òÊ£¿ô¤Î¥Ç¡¼¥¿¤È¤·¤Æ¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤Æ¤ÎÌò³ä¤ò²Ì¤¿¤¹¤³¤È¤¬²Äǽ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£

¡¡º£²ó»ØÄꤷ¤Æ´ÉÍý¤·¤¿¤¤¥Ç¡¼¥¿¤ÏÉð´ï¤Î¥Ç¡¼¥¿¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥ÈÆâ¤ËɬÍפʾðÊó¤Ï°Ê²¼¤Î£²¤Ä¤Ç¤¹¡£

¡¡£±¡¥Éð´ï£±¤Äñ°Ì¤Ç¤Î¥Ç¡¼¥¿(ÃÆ¿ô¡¢¹¶·âÎÏ¡¢²èÁü¤Ê¤É¤Î¥Ç¡¼¥¿·²)¤ò°·¤¦¥¯¥é¥¹ = WeaponData ¥¯¥é¥¹
¡¡£²¡¥Éð´ï¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë List(¥ê¥¹¥È) = WeaponDataSO ¥¯¥é¥¹

¡¡¡Ú£±¡Û¤Î WeaponData ¥¯¥é¥¹¤Ë¤Ä¤¤¤Æ¤ÏºîÀ®¤¬½ªÎ»¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¡Ú£²¡Û¤Î¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£

¡¡¤Þ¤º¤ÏºÇ½é¤Ë¥¹¥¯¥ê¥×¥È¤òµ­½Ò¤·¤Æ¤«¤é¡¢ÆâÍƤò³Îǧ¤·¤Þ¤·¤ç¤¦¡£



WeaponDataSO.cs

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


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


£µ¡¥¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¹½Â¤¤Ë¤Ä¤¤¤Æ


½èÍý¤ÎÆâÍƤˤĤ¤¤Æ¡¢½çÈ֤˳Îǧ¤·¤Æ¤¤¤­¤Þ¤¹¡£

¡¡£±¡¥Éð´ï£±¤Äñ°Ì¤Ç¤Î¥Ç¡¼¥¿(ÃÆ¿ô¡¢¹¶·âÎÏ¡¢²èÁü¤Ê¤É¤Î¥Ç¡¼¥¿·²)¤ò°·¤¦¥¯¥é¥¹ = WeaponData ¥¯¥é¥¹
¡¡£²¡¥Éð´ï¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë List(¥ê¥¹¥È) = WeaponDataSO ¥¯¥é¥¹


£±¡¥Éð´ï£±¤Äñ°Ì¤Ç¤Î¥Ç¡¼¥¿(ÃÆ¿ô¡¢¹¶·âÎÏ¡¢²èÁü¤Ê¤É¤Î¥Ç¡¼¥¿·²)¤ò°·¤¦¥¯¥é¥¹ = WeaponData ¥¯¥é¥¹

¡¡PlayerController ¥¹¥¯¥ê¥×¥È¤Ë¤Æ´ÉÍý¤·¤Æ¤¤¤¿Éð´ï¤ÎÃÆ¿ô¤ä¹¶·âÎϤò¸ÄÊ̤ÎÊÑ¿ô¤Ç¤Ï¤Ê¤¯¡¢
£±¤Ä¤Î¥Ç¡¼¥¿Ã±°Ì¤È¤·¤Æ´ÉÍý¤Ç¤­¤ë¤è¤¦¤Ë¡¢ WeaponData ¥¯¥é¥¹¤È¤·¤ÆºîÀ®¤·¤Æ¡¢¤³¤Á¤é¤Ë¤Æ´ÉÍý¤ò¹Ô¤¦¤è¤¦¤Ë¤·¤Þ¤¹¡£
ÍøÅÀ¤Ï¡¢£±¤Ä¤Î WeaponData ¥¯¥é¥¹Æâ¤Ë¤Ï£±¤Äʬ¤ÎÉð´ï¤ÎÁ´¥Ç¡¼¥¿¤¬ÅÐÏ¿¤Ç¤­¤ë¤³¤È¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢ÃÆ¿ôÍÑ¡¢¹¶·âÎÏÍѤȤ¤¤¦¤è¤¦¤ËÊÑ¿ô¤ò¸ÄÊ̤˺î¤ëɬÍפϤʤ¯¡¢WeaponData ¤Î bulletPower¡¢WeaponData ¤Î reloadTime ¤È¤¤¤¦·Á¤Ç WeaponData ¤ò»²¾È¤·¤ÆÍøÍѤǤ­¤Þ¤¹¡£
Î㤨¤Ð¡¢WeaponData.bulletPower ¤Èµ­½Ò¤¹¤ì¤Ð¡¢¤½¤ì¤Ï¤½¤Î WeaponData ¥¯¥é¥¹¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë bulletPower ¤ÎÃͤò»²¾È¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¤³¤³¤«¤é¤Ï¥Ô¥ê¥ª¥É¤Ë¤è¤ë»²¾È½èÍý¤¬Áý¤¨¤Æ¤¤¤­¤Þ¤¹¤Î¤Ç¡¢¤·¤Ã¤«¤ê¤È½èÍý¤òÆɤ߲ò¤¤¤Æ¤¤¤­¤Þ¤·¤ç¤¦¡£

[System.Serializable]
public class WeaponData {
    public string weaponName;
    public int weaponNo;
    public int maxBullet;
    public float reloadTime;
    public int bulletPower;
    public float shootInterval;
    public float shootRange;
    public Sprite weaponIcon;
}

¤³¤Î¤è¤¦¤ËÉð´ï£±¤Äʬ¤ËɬÍפˤʤë¥Ç¡¼¥¿¤ò¥¯¥é¥¹¤È¤·¤Æ¤Þ¤È¤á¤Æ¤ª¤¯¤³¤È¤Ç´ÉÍý¤ÈÍøÍѤ¬Íưפˤʤê¤Þ¤¹ ¡£
¤Þ¤¿¡¢Éð´ï¤Î¾ðÊó¤òÁý¤ä¤·¤¿¤¤(¸ú²ÌÈϰϤ䡢Éð´ï¤Î¼ïÎࡦ°À­¤Ê¤É)¾ì¹ç¤Ë¤Ï¡¢¤³¤Î WeaponData ¥¯¥é¥¹Æâ¤Ë ·¿¤ÈÊÑ¿ô¤òÄɵ­¤¹¤ì¤Ð¡¢¹¥¤­¤Ê¤À¤±Áý¤ä¤¹¤³¤È¤â½ÐÍè¤Þ¤¹¡£


Éð´ï¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë List(¥ê¥¹¥È) = WeaponDataSO ¥¯¥é¥¹

¡¡WeaponData ¥¯¥é¥¹¤Ë¤Ï¤Ö¤­¤Î¾ðÊó¤ò¤Þ¤È¤á¤ÆÅÐÏ¿¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Þ¤·¤¿¡£
¤³¤Î¥Ç¡¼¥¿¤ÏÉð´ï£±¤Äʬ¤Ç¤¹¤Î¤Ç¡¢¤â¤·¤âÊ£¿ô¤ÎÉð´ï¤Î¥Ç¡¼¥¿¤òÍÑ°Õ¤·¤ÆÅÐÏ¿¤·¤¿¤¤¾ì¹ç¡¢
¤³¤Î WeaponData ¥¯¥é¥¹¤òÊ£¿ôÍÑ°Õ¤·¤Æ¡¢¤½¤ì¤ò£±¤Ä¤Ë«¤Í¤Æ´ÉÍý¤¹¤ë¤¿¤á¤ÎÊÑ¿ô¤¬É¬Íפˤʤê¤Þ¤¹¡£

¡¡¤³¤¦¤¤¤Ã¤¿£±¤Ä¤ÎƱ¤¸¥Ç¡¼¥¿·²¤ò¤Þ¤È¤Þ¤Ã¤¿¤â¤Î¤ò¥³¥ì¥¯¥·¥ç¥ó¤È¤¤¤¤¤Þ¤¹¡£
C# ¤Ë¤Ï¥³¥ì¥¯¥·¥ç¥ó¤ò´ÉÍý¤¹¤ëÊýË¡¤È¤·¤Æ¡¢Dictinary(¥Ç¥£¥¯¥·¥ç¥Ê¥ê¡¼) ¤È List(¥ê¥¹¥È) ¤¬¤¢¤ê¤Þ¤¹¡£



¡¡List ¥¯¥é¥¹¤Ï <T> ¤Ë¥¸¥§¥Í¥ê¥Ã¥¯·¿¡ÊǤ°Õ¤Î·¿¡Ë¤ò»ØÄꤷ¤Æ¡¢Æ±¤¸¥Ç¡¼¥¿·¿¤ò¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¥³¥ì¥¯¥·¥ç¥óµ¡Ç½¤ò»ý¤Ä¥¯¥é¥¹¤Ç¤¹¡£
ÇÛÎó¤È°Û¤Ê¤ê¡¢Í×ÁǤò¼«Í³¤ËÄɲᦺï½ü¤Ç¤­¤Þ¤¹¡£(Í×ÁÇ¿ô¤¬²ÄÊѤ¹¤ë)
List ¤Ï¥µ¥¤¥º(Ťµ)¤¬²ÄÊѲÄǽ¤ÊÇÛÎó¤Î¥¤¥á¡¼¥¸¤Ç¤¹¡£

¡¡List ¤òÍøÍѤ¹¤ë¾ì¹ç¤Ë¤ÏÇÛÎó¤ÈƱÍͤ˽é´ü²½¤¬²Äǽ¤Ç¤¹¤¬¡¢List¤Ç¤Ï½é´ü²½»þ¤ËÍ×ÁÇ¿ô¤ÎÀë¸À¤¬ÉÔÍפǤ¹¡£

¡ãÇÛÎó¤Î½é´ü²½¡ä
  WeaponData [] weaponDatas = new WeaponData[3];       // <=  Í×ÁÇ¿ô¤ÎÀë¸À¤¬É¬Í×

¡ãList ¤Î½é´ü²½¡ä
  List<WeaponData> weaponDatasList = new List<WeaponData>();   // <=  Í×ÁÇ¿ô¤ÎÀë¸À¤¬ÉÔÍ×

¡¡¤½¤Î¤¿¤á´ðËÜŪ¤Ë¤Ï¡¢Í½¤áÍ×ÁÇ¿ô¤Î³ÎÄꤷ¤Æ¤¤¤ë¥Ç¡¼¥¿¤ò°·¤¦¾ì¹ç¤Ë¤ÏÇÛÎó¤ò¡¢Í×ÁÇ¿ô¤¬Ì¤³ÎÄê¤Ç¤¢¤Ã¤¿¤ê²ÄÊÑŤǤ¢¤ë¥Ç¡¼¥¿¤Ë¤Ä¤¤¤Æ¤ÏList¤òÍøÍѤ¹¤ë¤è¤¦¤Ë¹Í¤¨¤Æ¤¯¤À¤µ¤¤¡£


»²¹Í¥µ¥¤¥È
.net columnÍÍ
¡Ú½é´ü²½¤ÎÊýË¡¡ÛC#¤ÇÇÛÎó¤ä¥ê¥¹¥È¤ò½é´ü²½¤¹¤ë¤Ë¤Ï¡©
https://www.fenet.jp/dotnet/column/language/713/



¡¡public ½¤¾þ»Ò¤Ë¤Æ List ¤òÀë¸À¤¹¤ë¤³¤È¤Ç¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¾å¤Ç¥µ¥¤¥º¤ÎÊѹ¹¤¬²Äǽ¤Ç¤¹¡£
Î㤨¤ÐÉð´ï¤Î¥Ç¡¼¥¿¤ò£³¤Äʬºî¤Ã¤ÆÅÐÏ¿¤·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ç List ¤Î¥µ¥¤¥º¤ò 3 ¤ËÀßÄꤹ¤ì¤Ð
WeaponData ¥¯¥é¥¹¤¬ 3 ¤Ä¡¢Element 0 ¡Á Element 2 ¤È¤·¤ÆºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢¤³¤³¤ËÉð´ï¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤º¤Ä¡¢¹ç·×£³¤ÄʬÅÐÏ¿¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡ãWeaponData ¥¯¥é¥¹¤ò°·¤¦ List¡ä
    public List<WeaponData> weaponDatasList = new List<WeaponData>();


£¶¡¥¡ã¥¯¥é¥¹Æâ¤ËÊ̤Υ¯¥é¥¹¤òºîÀ®¤¹¤ë(Æþ¤ì»Ò¥¯¥é¥¹)¡ä


¡¡º£²ó¤Ï WeaponData ¥¯¥é¥¹¤È WeaponDataSO ¥¯¥é¥¹¤È¤òÊÌ¡¹¤Î¥¹¥¯¥ê¥×¥È¤Ëµ­½Ò¤·¤Æ¤¤¤Þ¤¹¤¬¡¢
°ÊÁ°¤Ë¤â³Ø½¬¤·¤Æ¤¤¤ëÆþ¤ì»Ò¹½Â¤¤ò³èÍѤ¹¤ë¤³¤È¤Ç¡¢£±¤Ä¤Î¥¹¥¯¥ê¥×¥ÈÆâ¤Ë£²¤Ä¤Î¥¯¥é¥¹¤òºîÀ®¤¹¤ë¤³¤È¤â½ÐÍè¤Þ¤¹¡£
¸½ºß¤Ç¤¢¤ì¤Ð¡¢RailPathData ¥¯¥é¥¹¤ÇÍøÍѤ·¤Æ¤¤¤ëÊýË¡¤Ë¤Ê¤ê¤Þ¤¹¡£

¡ãÆþ¤ì»Ò¹½Â¤»þ¤ÎºîÀ®Îã¡ä
WeaponDataSO.cs

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


¡¡WeaponDataSO ¥¯¥é¥¹¤ÎÀë¸À¥Õ¥£¡¼¥ë¥É¤Ë¤ª¤¤¤Æ¡¢Ê̤Υ¯¥é¥¹¤òºîÀ®¤·¤Æ¤¤¤Þ¤¹¡£º£²ó¤Ï WeaponData ¥¯¥é¥¹¤Ç¤¹¡£
¤³¤Î¤è¤¦¤ËC#¤Ç¤Ï¡¢£±¤Ä¤ÎÆÈΩ¤·¤¿¥¯¥é¥¹¡Ê¥Õ¥¡¥¤¥ë¡Ë¤È¤·¤Æ¤Ç¤Ï¤Ê¤¯¡¢¤¢¤ë¥¯¥é¥¹¤ÎÃæ¤ËÊ̤Υ¯¥é¥¹¤òºîÀ®¤·¤Æ¤â»ÈÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
¤³¤Î¤è¤¦¤Ê¹½Â¤¤òÆþ¤ì»Ò¡Ê¥Í¥¹¥È¡Ë¥¯¥é¥¹¤È¸À¤¤¤Þ¤¹¡£

¡¡ÆÃÄê¤Î¥¯¥é¥¹¤Ç¤Î¤ß»ÈÍѤ¹¤ë¤³¤È¤¬³ÎÄꤷ¤Æ¤¤¤ë¤è¤¦¤Ê¡¢»ÈÍÑÈϰϤζ¹¤¤¥¯¥é¥¹¤Ç¤¢¤ì¤Ð¡¢
¤³¤Î¤è¤¦¤ËÆþ¤ì»Ò¥¯¥é¥¹¤Ë¤·¤¿Êý¤¬¥¹¥¯¥ê¥×¥È¡¦¥Õ¥¡¥¤¥ë¤¬Áý¤¨¤º¤ËºÑ¤ß¤Þ¤¹¡£
¡¡¤Þ¤¿À߷׾塢¥Õ¥¡¥¤¥ë¤Ë¤Ï¤·¤¿¤¯¤Ê¤¤(±£¤·¤Æ¤ª¤­¤¿¤¤)¥¯¥é¥¹¤òºîÀ®¤¹¤ë¾ì¹ç¤Ë¤âÍѤ¤¤é¤ì¤Þ¤¹¡£

¡¡»ÈÍÑÊýË¡¤Ï¾¤Î¥¯¥é¥¹¤ÈƱ¤¸¤Ç¤¹¡£»²¾È¤¹¤ë¾ì¹ç¤Ï¡¢WeaponDataSO.WeaponData ¤È¤¤¤¦½ñ¼°¤Ç¡¢Æþ¤ì»Ò¥¯¥é¥¹¤Î¤¢¤ë¥¯¥é¥¹¤Î¸å¤Ë¡¢Æþ¤ì»Ò¥¯¥é¥¹¤ò½çÈ֤˵­½Ò¤·¤Þ¤¹¡£


£·¡¥[System.Serializable¡Ê¥·¥ê¥¢¥é¥¤¥¶¥Ö¥ë¡Ë]°À­


¡¡Æþ¤ì»Ò¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥¯¥é¥¹¤Î£±¹Ô¾å¤Ë¤Ï¾åµ­¤ÎÀë¸À¤¬¤¢¤ê¤Þ¤¹¡£[ ]¤ÇÀë¸À¤µ¤ì¤¿ÀßÄêÃͤϡÖ°À­¡×¤È¸Æ¤Ð¤ì¤ë¾ðÊó¤Ë¤Ê¤ê¡¢ÆÃÊ̤ʰÕÌ£¤ò»ý¤Á¤Þ¤¹¡£

¡¡º£²óÍøÍѤ·¤Æ¤¤¤ë[System.Serializable]°À­¤Ï¡¢System¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ëÀßÄêÃͤǤ¢¤ê¡¢¤³¤Á¤é¤òÀë¸À¤¹¤ë¤³¤È¤ÇÆþ¤ì»Ò¥¯¥é¥¹¤Î¾ðÊó¤ò¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ëɽ¼¨¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¤³¤ì¤ò½ñ¤­Ëº¤ì¤Æ¤·¤Þ¤¦¤È¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ë WeaponData ¤¬É½¼¨¤µ¤ì¤º¡¢¥Ç¡¼¥¿¤ò¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤éÅÐÏ¿¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤»¤ó¡£
using System; ¤òÀë¸À¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï [Serializable] ¤È¤À¤±µ­½Ò¤¹¤ì¤ÐŬÍѤµ¤ì¤Þ¤¹¡£
Àë¸À¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ë¤Ï [System.Serializable] ¤Èµ­½Ò¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£


WeaponDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë

£±¡¥Àß·×


¡¡WeaponDataSO ¥¹¥¯¥ê¥×¥È¤ò¸µ¤Ë WeaponDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Þ¤¹¡£
WeaponDataSO ¥¹¥¯¥ê¥×¥È¤ËÍÑ°Õ¤·¤Æ¤¢¤ë WeaponData ·¿¤Î List ¤Ç¤¢¤ë weaponDatasList ÊÑ¿ô¤¬¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÌò³ä¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¡£


£²¡¥¡ã¥¯¥é¥¹¤Î¥ê¥¹¥È²½¤Ë¤è¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹ºîÀ®¡ä


¡¡WeaponData ¥¯¥é¥¹¤Ï£±¤Ä¤Î¥Ç¡¼¥¿¾ðÊó¤ò°·¤¦¤³¤È¤¬½ÐÍè¤Þ¤¹¡£º£²ó¤Ç¤¢¤ì¤ÐÉð´ï£±¤Äʬ¤Î¾ðÊó¤Ç¤¹¡£
¤½¤Î¤¿¤áÊ£¿ô¤ÎÉð´ï¤Î¾ðÊó¤ò¤Þ¤È¤á¤Æ°·¤¦É¬Íפ¬¤¢¤ëº£²ó¤Î¤è¤¦¤Ê¾ì¹ç¤Ë¤Ï¡¢¤½¤Îʬ¤À¤± WeaponData ¥¯¥é¥¹¤òÄɲ䷤ƺîÀ®¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£

¡¡¤½¤ì¤é¤ò´ÉÍý¤¹¤ë¤¿¤á¤Ë WeaponData ·¿¤Î List ¤òºî¤ê¡¢¤Þ¤È¤á¤Æ´ÉÍý¤ò½ÐÍè¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤Þ¤¹¡£
¤³¤³¤ÇÂçÀڤʤ³¤È¤Ï¡¢£±¤Ä£±¤Ä¤ÎÊ̤ÎÊÑ¿ô¤Ë¸ÄÊÌ¤Ë WeaponData ¤¬Â¸ºß¤·¤Æ¤¤¤¿¤Î¤Ç¤Ï¤Þ¤È¤á¤Æ´ÉÍý¤·¤Æ¤¤¤ë¤³¤È¤Ë¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
WeaponData ¤Î¥ê¥¹¥È¤È¤Ï¤¹¤Ê¤ï¤Á¡¢WeaponData ¤ò¤Þ¤È¤á¤Æ°·¤Ã¤Æ¤¤¤ë¥Ç¡¼¥¿¤Î½¸¹çÂΤˤʤê¤Þ¤¹¤Î¤Ç¡¢¤³¤³¤Ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤ÆÌò³ä¤òÀ®Î©¤µ¤»¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£


£³¡¥WeaponDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë


¡¡ºÇ½é¤Ë¡¢¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥Õ¥©¥ë¥À¤òºîÀ®¤·¤Æ¤ª¤­¤Þ¤¹¡£
Project Æâ¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤­¡¢Datas ¥Õ¥©¥ë¥À¤òºîÀ®¤·¤Æ¤¯¤À¤µ¤¤¡£
¤³¤ÎÃæ¤ËºîÀ®¤µ¤ì¤¿¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÆþ¤ì¤Æ´ÉÍý¤·¤Þ¤¹¡£



¡¡Unity ¤Îº¸¾å¤Î¥á¥Ë¥å¡¼¤è¤ê¡¢Assets => Create => Create WeaponDataSO ¤òÁªÂò¤·¤Þ¤¹¡£
¿·¤·¤¯ WeaponDataSO ¤È¤¤¤¦¥Õ¥¡¥¤¥ë¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£Ì¾Á°¤Ï¤½¤Î¤Þ¤Þ¤Ç¹½¤¤¤Þ¤»¤ó¡£

¡¡¤³¤Î¥¢¥¤¥³¥ó¤Î·Á¤¬°ã¤¦¥Õ¥¡¥¤¥ë¤¬¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ê¤ê¤Þ¤¹¡£
¤³¤ì¤Ï¥¢¥»¥Ã¥È¤È¤·¤Æ¼è¤ê°·¤ï¤ì¤ë¤è¤¦¤Ë¤Ê¤ë¾ðÊó¤Ç¤¹¡£

¡¡WeaponDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò Datas ¥Õ¥©¥ë¥À¤Ø°ÜÆ°¤·¤Æ¤¯¤À¤µ¤¤¡£
º£¸å¤â¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤¿¤é¡¢Datas ¥Õ¥©¥ë¥ÀÆâ¤Ç´ÉÍý¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£


¡ã¥Õ¥©¥ë¥À´ÉÍý¡ä¡¡



¡¡Áᮥ¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò³èÍѤ·¤Æ¡¢Éð´ï¤Î¥Ç¡¼¥¿¤òÅÐÏ¿¤·¤Æ¤¤¤­¤Þ¤·¤ç¤¦¡£


£´¡¥WeaponDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ÎÀßÄê¤ò¹Ô¤¦


¡¡ºîÀ®¤µ¤ì¤¿ WeaponDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
WeaponDataSO ¥¹¥¯¥ê¥×¥È¤Ë¤ÆÀë¸À¤·¤¿ weaponDatasList ÊÑ¿ô¤¬¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ëɽ¼¨¤µ¤ì¤Æ¡¢ Size¤¬ 0 ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¤³¤ì¤¬¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ÎÃæ¿È¤Ç¤¹¡£

¡¡Size ¤ËǤ°Õ¤Î¿ô¤òÆþÎϤ¹¤ë¤È¡¢Æ±¿ô¤Î Element ¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£¤³¤ì¤¬ List ¤Ç´ÉÍý¤¹¤ë WeaponData ¥¯¥é¥¹¤Î¾ðÊ󷲤ˤʤê¤Þ¤¹¡£


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



¡¡¤Þ¤º¤ÏÉð´ï¤Î¥Ç¡¼¥¿¤ò£³¤ÄʬÅÐÏ¿¤·¤Æ¤ª¤­¤¿¤¤¤È»×¤¤¤Þ¤¹¡£
weaponDatasList ÊÑ¿ô¤Î Size ¤ò 3 ¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£Element 0 ¡Á 2 ¤¬²¼¤ËºîÀ®¤µ¤ì¤Þ¤¹¡£

¡¡Element ¤È¤Ï List ¤ÎÍ×ÁÇ(Ãæ¿È)¤Î¤³¤È¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢Element £±¤Ä¤¬ WeaponData £±¤Ä¤Ë¤Ê¤ê¤Þ¤¹¡£Element ¤ÎÈÖ¹æ¤Ï 0 ¤«¤é»Ï¤Þ¤ê¤Þ¤¹¡£

¡¡°Ê¾å¤Î¤³¤È¤«¤é¡¢£±¤Ä¤Î Element ¤Ë¤Ï£±¤Ä¤Î WeaponData ¥¯¥é¥¹¤ÎÆâÍƤòÀßÄê¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¤³¤Î¤È¤­¡¢WeaponData ¥¯¥é¥¹¤Î¾å¤Ë [Serializable] °À­¤òÀë¸À¤·¤Æ¤¤¤ë¤Î¤Ç¡¢WeaponData ¥¯¥é¥¹¤ÎÆâÍƤ¬¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ëɽ¼¨¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
[Serializable] °À­¤ò³èÍѤ¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤éÉð´ï¤Î¾ðÊó¤ò£±¤Ä¤º¤Ä¡¢WeaponData ñ°Ì¤ÇÅÐÏ¿½ÐÍè¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£



¡¡²¼µ­¤Î²èÁü¤Î¤è¤¦¤ËÀßÄê¤ò¹Ô¤Ã¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
²èÁü¤Ï Textures ¥Õ¥©¥ë¥À¤Ë¤¢¤ëÉð´ïÍѤβèÁü¥Õ¥¡¥¤¥ë¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Æ¤¯¤À¤µ¤¤¡£
¤â¤·¤â£³¤Ä¤Î²èÁü¤¬¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢°ÊÁ°¤Ë¥À¥¦¥ó¥í¡¼¥É¤·¤Æ¤¢¤ëÉð´ïÍѤβèÁü¤ò¤¤¤¯¤Ä¤«ÁªÂò¤·¤Æ¡¢¿·¤·¤¯¥¤¥ó¥Ý¡¼¥È¤·¤ÆÍøÍѤ·¤Æ¤¯¤À¤µ¤¤¡£


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



¡¡³Æ¿ôÃͤä²èÁü¤ÏǤ°Õ¤Ç¤¹¤¬¡¢weaponNo ¤ÎÃͤÀ¤±¤Ï°Û¤Ê¤ëÈÖ¹æ¤ÇÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¤Ç¤­¤ì¤Ð 0 ¤«¤éÏ¢ÈÖ¤¬ÍýÁۤǤ¹¡£
¤³¤ÎÈÖ¹æ¤ÏÉð´ïÍѤθÄÂÎÈÖ¹æ¤È¤·¤ÆÍøÍѤ¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢Æ±¤¸ÈÖ¹æ¤ò½ÅÊ£¤·¤ÆÀßÄꤷ¤Æ¤·¤Þ¤¦¤È¡¢Æ±¤¸ÈÖ¹æ¤ÎÉð´ï¤¬Ê£¿ô¸ºß¤¹¤ë¤³¤È¤Ë¤Ê¤ê¡¢
ÈÖ¹æ¤Ë¤è¤Ã¤ÆÉð´ï¤òÆÃÄꤹ¤ë¤³¤È¤¬½ÐÍè¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£


£µ¡¥¡ãÆþ¤ì»Ò¥¯¥é¥¹¤ò³°Éô¤Î¥¯¥é¥¹¤ÇÀë¸À¤¹¤ëÊýË¡¡ä


¡¡WeaponDataSO ¥¹¥¯¥ê¥×¥ÈÆâ¤ËÆþ¤ì»Ò¥¯¥é¥¹¤È¤·¤ÆºîÀ®¤·¤Æ¤¤¤ë WeaponData ¥¯¥é¥¹¤ò³°Éô¤Î¥¯¥é¥¹¤ÇÍѤ¤¤ë¾ì¹ç¤Ë¤Ï¡¢Æþ¤ì»Ò¤Î¿Æ¥¯¥é¥¹¤òµ­½Ò¤·¤¿¾å¤ÇÀë¸À¤¹¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡²¼µ­¤Î¤è¤¦¤Ë½ñ¤­¤Þ¤¹¡£

  WeaponDataSO.WeaponData weaponData;

  WeaponDataSO.weaponDatasList[index].bulletPower;



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

¡¡=>¡¡¼¡¤Ï¡¡¼ê½ç£±£¹¡¡¡¼»ÈÍѤ·¤Æ¤¤¤ëÉð´ï¤Î¾ðÊó¤Î´ÉÍýµ¡Ç½¡¼¡¡¤Ç¤¹¡£

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


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

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

Menu



´ðÁÃ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

private



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

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