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

¡¡Á°²ó¤Ë°ú¤­Â³¤­¤Þ¤·¤Æ¡¢¥­¥ã¥éÁªÂòµ¡Ç½¤Î¼ÂÁõ¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡¿·¤·¤¤½èÍý¤¬Â¿¤¯¤¢¤ë¾ì¹ç¡¢¤½¤ÎÅÔÅÙÄ´¤Ù¤Æ¡¢Íý²ò¤ò¿¼¤á¤Æ¤«¤é¿Ê¤á¤Æ¤¯¤À¤µ¤¤¡£
¶µºà¤ÎÄ̤ê¤Ë¼ÂÁõ¤Ç¤­¤ë¤³¤È¤È¡¢¼ÂºÝ¤Ë¼«Ê¬¤Ç¹Í¤¨¤ÆºÇ½é¤«¤éºî¤ì¤ë¤è¤¦¤Ë¤Ê¤ë¤³¤È¤È¤Ç¤Ï¡¢¤Þ¤Ã¤¿¤¯°Û¤Ê¤ê¤Þ¤¹¡£
¤½¤Î¾ì¹ç¡¢Íý²òÅ٤κ¹¤¬Â礭¤¯½Ð¤Þ¤¹¤Î¤Ç¡¢¤·¤Ã¤«¤ê¤ÈÉü½¬¤ò¹Ô¤¦¤è¤¦¤Ë¤·¤Þ¤·¤ç¤¦¡£



¡¡°Ê²¼¤Ï´°À®»þ¤Î¥µ¥ó¥×¥ëÆ°²è¤Ç¤¹¡£¤³¤Á¤é¤òÌÜɸ¤Ë¤·¤ÆÀ©ºî¤·¤Þ¤·¤ç¤¦¡£


¡ã´°À®Æ°²è¡ä




CharacterBase ¥¹¥¯¥ê¥×¥È¤ÎºîÀ®


¡¡¥­¥ã¥é¤ÎÀ©¸æ¤ò¹Ô¤¦¥¯¥é¥¹¤Î´ðÄ쥯¥é¥¹¤Ç¤¹¡£
¤¤¤ï¤æ¤ë CharacterController ¥¯¥é¥¹¤Î¤è¤¦¤Ê°ÌÃÖÉÕ¤±¤Î¥¯¥é¥¹¤Ç¤¹¡£

¡¡º£²ó¤Ï¤³¤³¤Ë¤Ï¥Õ¥©¡¼¥«¥¹¤·¤Æ¤¤¤Þ¤»¤ó¤Î¤Ç¡¢¥¯¥é¥¹¤òÀ©ºî¤¹¤ë¤Î¤ß¤Ëα¤á¤Æ¤¤¤Þ¤¹¡£
¼ÂºÝ¤Ë¤Ï¼«Ê¬¤Î¥×¥í¥¸¥§¥¯¥È¤Ë¹ç¤ï¤»¤Æ¥«¥¹¥¿¥Þ¥¤¥º¤·¤Æ¼ÂÁõ¤·¤Æ¤¯¤À¤µ¤¤¡£


CharacterBase.cs

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



¥¯¥é¥¹¤Î¹Í¤¨Êý¡¡¡¼Ê£¿ô¤Î¥Ç¡¼¥¿¤ò´ØÏ¢¤·¤Æ´ÉÍý¤¹¤ëÊýË¡¡¼


¡¡Î㤨¤Ð¡¢¥×¥ì¥¤¥ä¡¼¤Î¾ðÊó¤ä¥¢¥¤¥Æ¥à¤Î¾ðÊó¤Ê¤É¥Ç¡¼¥¿¤ò°·¤¦¾ì¹ç¤Ë¡¢Ê£¿ô¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤Î¤Þ¤È¤Þ¤ê¤È¤·¤Æ´ÉÍý¤Ç¤­¤ëÊýË¡¤¬¤¢¤ë¤È°·¤¤¤¬³Ú¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡°Ê²¼¤Î¤è¤¦¤Ë¡¢ÌîµåÁª¼ê¤ä¥µ¥Ã¥«¡¼Áª¼ê£±Ì¾Ê¬¤ò¥Ç¡¼¥¿¤È¤·¤Æ°·¤¦¤³¤È¤ò¹Í¤¨¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£

¡ãÌîµåÁª¼ê¤Î¾ì¹ç¡ä
¡¡¡¦ÇØÈÖ¹æ
¡¡¡¦ÆÀ°Õ¤Ê¼éÈ÷°ÌÃÖ
¡¡¡¦ÂÇΨ
¡¡¡¦ÁöÎÏ
¡¡¡¡¡¡¡¡¤Ê¤É



¡ã¥µ¥Ã¥«¡¼Áª¼ê¤Î¾ì¹ç¡ä
¡¡¡¦¥Ý¥¸¥·¥ç¥ó¡¦Ìò³ä(¥´¡¼¥ë¥­¡¼¥Ñ¡¼¡¢¥Ç¥£¥Õ¥§¥ó¥À¡¼¡¢¥ß¥Ã¥É¥Õ¥£¥ë¥À¡¼¡¢¥Õ¥©¥ï¡¼¥É)
¡¡¡¦ÂγÊ
¡¡¡¦¥·¥å¡¼¥ÈÎÏ
¡¡¡¦¥É¥ê¥Ö¥ëÎÏ
¡¡¡¦ÁöÎÏ
¡¡¡¡¡¡¡¡¤Ê¤É

¡¡¤³¤Î¤è¤¦¤Ë¡¢£±¤Ä¤ÎÁª¼ê¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤Ë¤¢¤¿¤Ã¤Æ¤ÏÊ£¿ô¤Î¾ðÊó¤¬É¬ÍפǤ¹¤¬¡¢¤½¤ì¤é¤Ï¥Ð¥é¥Ð¥é¤Ë¤Ê¤Ã¤Æ¤¤¤Æ¤Ï´ØÏ¢À­¤¬Ê¬¤«¤ê¤Þ¤»¤ó¡£

¡¡¥×¥í¥°¥é¥à¤Ç¤Ï¤³¤Î¤è¤¦¤Ê¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤¿¤á¤Ë¥¯¥é¥¹¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¡¡
¡¡¥¯¥é¥¹¤ÎÌò³ä¤ÏÊÑ¿ô¤ÎÀë¸À¤È¥á¥½¥Ã¥É¤ÎÀë¸À¤¬¹Ô¤¨¤ë¤³¤È¤Ç¤¹¤¬¡¢ÊÑ¿ô¤ÎÉôʬ¤ò¡¢¤½¤ì¤¾¤ì¤ÎÁª¼ê¤Î¾ðÊó¤ò°·¤¦ÃͤȤ·¤ÆÍøÍѤ·¤Þ¤¹¡£

¡¡¤³¤Î¤è¤¦¤Ê´ÑÅÀ¤ÇÁª¼êÍѤΥǡ¼¥¿¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¤òºîÀ®¤·¡¢¤½¤ÎÃæ¤Ë´ØÏ¢¤·¤Æ¤¤¤ëÊ£¿ô¤Î¥Ç¡¼¥¿¤òÊÑ¿ô¤È¤·¤ÆÀë¸À¤·¤Æ´ÉÍý¤¹¤ë¤³¤È¤Ç¡¢
£±¤Ä¤Î¥¯¥é¥¹¤ÇÁª¼ê¤Î¾ðÊó¤òɽ¸½¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¡¡ÌîµåÁª¼ê¤òÎã¤Ë¤¹¤ë¤È¡¢¤³¤Î¤è¤¦¤Ê¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£

public class BaseBallPlayerData {

    public int uniform number;          // ÇØÈÖ¹æ
¡¡  public string defensivePositon;     // ÆÀ°Õ¤Ê¼éÈ÷°ÌÃÖ
¡¡  public float battingAverage;        // ÂÇΨ   
¡¡  public float runSpeed;              // ÁöÎÏ

}

¡¡¤³¤Î¤è¤¦¤Ë¥¯¥é¥¹¤ò³èÍѤ¹¤ë¤³¤È¤Ç¡¢£±¤Ä¤Î¾ðÊó¤ò¹½À®¤¹¤ë¤¿¤á¤ËɬÍפÊÊ£¿ô¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¤³¤Î¹Í¤¨Êý¤ò¥Ù¡¼¥¹¤Ë¡¢º£²ó¤Î¾ì¹ç¤Ë¤Ï¡¢¥­¥ã¥é´Ø·¸¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¤È¡¢¤½¤ì¤ò«¤Í¤Æ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤¹¤ëµ¡Ç½¤òºîÀ®¤·¤Æ¤¤¤­¤Þ¤¹¡£
¡¡

¥³¥ì¥¯¥·¥ç¥óµ¡Ç½


¡¡Àè¤Û¤ÉÌîµåÁª¼ê¤Î¥Ç¡¼¥¿¤ò BaseBallPlayerData ¥¯¥é¥¹¤È¤·¤Æɽ¸½¤·¤Þ¤·¤¿¡£

¡¡¤³¤Î¥¯¥é¥¹¤Ë¤ÏÁª¼ê£±Ì¾Ê¬¤Î¥Ç¡¼¥¿¤ò´ÉÍý¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£¤Ç¤¹¤¬¡¢Ìîµå¤ä¥µ¥Ã¥«¡¼¡¢¤½¤ì°Ê³°¤Î¤â¤Î¤Î¿¤¯¤Ï¡¢£±¤Ä¤Î¥Ç¡¼¥¿¤À¤±¤Ç¤Ï¾ðÊó¤¬Â­¤ê¤Þ¤»¤ó¡£
¾¯¤Ê¤¯¤Æ¤âÌîµå¤Î¾ì¹ç¤Ë¤Ï£¹Ì¾(Áê¼ê¤âɬÍפʤΤǣ±£¸Ì¾)ʬ¤Î BaseBallPlayerData ¤¬É¬Íפˤʤê¤Þ¤¹¡£
¤Ê¤¼¤Ê¤é¡¢BaseBallPlayerData ¤Ë¤Ï£±Ì¾Ê¬¤Î¥Ç¡¼¥¿¤·¤«´ÉÍý½ÐÍè¤Þ¤»¤ó¤Î¤Ç¡¢¤½¤ì¤ò¿Í¿ôʬÍÑ°Õ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤Ìõ¤Ç¤¹¡£



¡¡¤³¤¦¤·¤¿¤È¤­¡¢Æ±Ì¾¤Î¥¯¥é¥¹·²¤ò£±¤Ä¤Î¤Þ¤È¤Þ¤ê¤È¤·¤Æ´ÉÍý¤Ç¤­¤ëÆþ¤ìʪ¤Î¤è¤¦¤Ê¤â¤Î¤¬¤¢¤ë¤È°·¤¤¤¬³Ú¤Ë¤Ê¤ê¤Þ¤¹¡£
£¹Ì¾Ê¬¤Î BaseBallPlayerData ¥¯¥é¥¹¤ÎÊÑ¿ô¤ò£¹¸ÄÍÑ°Õ¤·¤¿¤Î¤Ç¤Ï´ÉÍý¤·¤Æ¤¤¤ë¤³¤È¤Ë¤Ï¤Ê¤ê¤Þ¤»¤ó¡£

¡¡BaseBallPlayerData ¥¯¥é¥¹£¹Ì¾Ê¬¤ò£±¤Ä¤ÎÊÑ¿ô¤Ç¤Þ¤È¤á¤Æ´ÉÍý¤·¤Æ¤¯¤ì¤ë¤â¤Î¤È¤·¤Æ¡¢C# ¤Ç¤Ï¥³¥ì¥¯¥·¥ç¥ó¤È¤¤¤¦µ¡Ç½¤òÍøÍѤ¹¤ë¤³¤È¤Ç¼Â¸½¤Ç¤­¤Þ¤¹¡£

¡¡C# ¤Î¥³¥ì¥¯¥·¥ç¥ó¤Ë¤Ï¡¢List¡¢Dectionary ¤È¤¤¤¦µ¡Ç½¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£(ÇÛÎó¤Ï¥³¥ì¥¯¥·¥ç¥ó¤Ç¤Ï¤Ê¤¤¤Î¤ÇÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£)


¡ã³Æ¥¯¥é¥¹¤ò£±¤Ä¤º¤ÄÀë¸À¡¡¢ª¡¡¤³¤ì¤Ï£±¤Ä¤ÎÊÑ¿ô¤Ë¤Þ¤È¤Þ¤Ã¤Æ¤¤¤Ê¤¤¡ä
¡¡BaseBallPlayerData player0;
  BaseBallPlayerData player1;
  BaseBallPlayerData player2;

¡¡¡¡¡¡¡¡¡§

  BaseBallPlayerData player8;
¡¡
¡¡¡¡¢­

¡ã¥³¥ì¥¯¥·¥ç¥óµ¡Ç½¤ò»È¤¤¡¢£±¤Ä¤ÎÊÑ¿ô¤ÇƱ¥¯¥é¥¹¤Î°Û¤Ê¤ë¥Ç¡¼¥¿¤òɽ¸½¤¹¤ë¡ä
¡¡List<BaseBallPlayerData> playerList;¡¡¡¡// List



¡¡Unity ¤Ç¤Ï¤³¤Î¤¦¤Á¡¢ScriptableObject ¥¯¥é¥¹¤È List ¤Îµ¡Ç½¤ò³èÍѤ·¤ÆºîÀ®¤Ç¤­¤ë¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤È¤¤¤¦µ¡Ç½¤¬ÍÑ°Õ¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¤³¤Î¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Îµ¡Ç½¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤òºîÀ®¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

¡¡¤Ê¤ª¡¢¥³¥ì¥¯¥·¥ç¥óµ¡Ç½¤Ï¤¢¤¯¤Þ¤Ç¤âÊ£¿ô¤ÎƱ¥¯¥é¥¹¤Î¾ðÊó¤ò¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤³¤È¤¬¥á¥¤¥ó¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢¥³¥ì¥¯¥·¥ç¥óµ¡Ç½¤ò»È¤¨¤Ð¤½¤ì¤¬¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤Ê¤ë¡¢¤È¤¤¤¦¤³¤È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
¤¢¤¯¤Þ¤Ç¤â Unity ¤ÎÍÑ°Õ¤·¤Æ¤¤¤ë ScriptableObject ¥¯¥é¥¹¤È List ¤ò³èÍѤ¹¤ë¤³¤È¤Ç¥Ç¡¼¥¿¥Ù¡¼¥¹¤òºîÀ®¤·¤Æ¤¤¤Þ¤¹¡£

¡¡¤³¤ÎÉôʬ¤Îǧ¼±¤ò´Ö°ã¤¨¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£


»²¹Í¥µ¥¤¥È
MicroSoft
¥³¥ì¥¯¥·¥ç¥ó


¡¡ÃΤé¤Ê¤¤Ã±¸ì¤¬½Ð¤Æ¤­¤¿¤È¤­¤Ë¤ÏÀѶËŪ¤Ë¡¢¥Í¥Ã¥È¤Ë¸ø³«¤µ¤ì¤Æ¤¤¤ë¸ø¼°¤Î¥Þ¥Ë¥å¥¢¥ë¡¢¤ï¤«¤ê¤ä¤¹¤¯¤Þ¤È¤á¤¿µ­»ö¤Ê¤É¤ò¸«¤Ä¤±¤ÆÄ´¤Ù¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£


¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È


¡¡ScriptableObject(¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È)¤Ï¡¢Unity¥¨¥Ç¥£¥¿¾å¤Ç´Êñ¤Ë¥Ç¡¼¥¿¤ò´ÉÍý¤Ç¤­¤ëµ¡Ç½¤Ç¤¹

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

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

¡¡CharaData ¥¯¥é¥¹¤Ï¡¢¥­¥ã¥é´ØÏ¢¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤Ë¤Þ¤È¤á¤Æ¤¤¤ë¾ðÊ󷲤Ǥ¹¡£
¥­¥ã¥é¤ÎÄ̤·Èֹ桢¥­¥ã¥é¤Î²èÁü¤Ê¤É¡¢¤³¤ì¤é¤ò£±¤Ä¤Î¥Ç¡¼¥¿·²¤È¤·¤Æ¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£

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

¡¡¤³¤Î£²¤Ä¤Î¾ðÊó¤ò´ÉÍý¤·¤Æ´°À®¤¹¤ë¤Î¤¬¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ê¤ê¤Þ¤¹¡£
¤½¤Î¤¿¤á¤Ë¥¯¥é¥¹¤È¤·¤Æ¡¢CharaDataSO ¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£

¡¡¤É¤Î¤è¤¦¤Ê¹½À®¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤«¤Ï¥¹¥¯¥ê¥×¥ÈºîÀ®¸å¤ËÀâÌÀ¤ò¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤½¤Á¤é¤ò¤·¤Ã¤«¤ê¤È³Ø½¬¤·¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£
¿¿»÷¤ò¤·¤Æºî¤Ã¤Æ¤ß¤¿¤ê¡¢Éü½¬¤ò½Å¤Í¤Æ¤¤¤¯¤³¤È¤Ç¥×¥í¥°¥é¥à¤ÏÍý²ò¤¬¿¼¤Þ¤ê¡¢½èÍý¤Î¥¤¥á¡¼¥¸¤¬¤ï¤¯¤è¤¦¤Ë¤Ê¤ê¡¢½ñ¤±¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£


CharaData ¥¹¥¯¥ê¥×¥È¤ÎºîÀ®


¡¡¥­¥ã¥é¤Î¥Ç¡¼¥¿¡¢¤ª¤è¤Ó¡¢¥­¥ã¥é¤Ê¤É¤Î¥Ç¡¼¥¿¤òÅÐÏ¿¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£
¥¯¥é¥¹¤Ï·Ñ¾µ¤·¤Þ¤»¤ó¤Î¤Ç¡¢MonoBehaviour ¥¯¥é¥¹¤Ïºï½ü¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡MonoBehaviour ¥¯¥é¥¹¤ò·Ñ¾µ¤·¤Ê¤¤¥¯¥é¥¹¤È¤·¤ÆºîÀ®¤¹¤ë¤³¤È¤Ç¡¢
¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ëɳ¤Å¤«¤Ê¤¤¡¢¥Ç¡¼¥¿´ÉÍý¤Î¤ß¤Î¥¯¥é¥¹¤È¤·¤ÆÀ©ºî¤·¤Æ¤ª¤­¤Þ¤¹¡£

¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤¿ºÝ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤é CharaData ¥¯¥é¥¹¤Î¾ðÊó¤òÀßÄê¤Ç¤­¤ë¤è¤¦¤Ë
[System.Serializable] °À­¤ò¥¯¥é¥¹¤Î¾å¤ËÉÕÍ¿¤·¤Æ¤¯¤À¤µ¤¤¡£


CharaData.cs

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


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


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


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

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


CharaDataSO ¥¹¥¯¥ê¥×¥È¤ÎºîÀ®


¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë¤¿¤á¤ËɬÍ×¤Ê CharaDataSO ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥ÈÀìÍѤΠScriptableObject ¥¯¥é¥¹¤ò·Ñ¾µ¤·¡¢[CreateAssetMenu] °À­¤òµ­½Ò¤¹¤ë¤³¤È¤ÇºîÀ®²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡
¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ï¡¢»ØÄꤷ¤¿¥Ç¡¼¥¿¤òÊ£¿ô¤Î¥Ç¡¼¥¿¤È¤·¤Æ¤Þ¤È¤á¤Æ´ÉÍý¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤È¤·¤Æ¤ÎÌò³ä¤ò²Ì¤¿¤¹¤³¤È¤¬²Äǽ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£

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

¡¡£±¡¥¥­¥ã¥é´ØÏ¢¤Î¾ðÊóñ°Ì¤Ç¤Î¥Ç¡¼¥¿(¥­¥ã¥é¥Ç¡¼¥¿¤ÎÄ̤·Èֹ桢¥µ¥à¥Í¥¤¥ë¤Ë»È¤¦²èÁü¤Ê¤É¤Î¥Ç¡¼¥¿·²)¤ò°·¤¦¥¯¥é¥¹
¡¡£²¡¥¥­¥ã¥é´ØÏ¢¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë List(¥ê¥¹¥È)¤È ScriptableObject ¤ò·Ñ¾µ¤·¤¿¥¯¥é¥¹

¡¡¤³¤Î¤¦¤Á£±¤ÏÀè¤Û¤ÉºîÀ®¤·¤¿ CharaData ¤¬Åö¤¿¤ê¤Þ¤¹¡£
¤³¤³¤Ç¤Ï£²¤Î¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£



¡¡CharaDataSO ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤·¤Þ¤¹¡£
¤³¤Î¥¹¥¯¥ê¥×¥È¤òÍøÍѤ¹¤ë¤³¤È¤Ç¡¢CharaData ¤ò«¤Í¤¿¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¢¥»¥Ã¥È¤È¤·¤ÆºîÀ®¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

¡¡[CreateAssetMenu]°À­¤ÎÉÕÍ¿¤È¡¢ScriptableObject ¥¯¥é¥¹¤ò·Ñ¾µ¤¹¤ë¤³¤È¤ò˺¤ì¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡¤Þ¤¿ CharaData ¤Î List Æ⤫¤é¡¢»ØÄꤷ¤¿ ID ¤Î¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë¤¿¤á¤Î¥á¥½¥Ã¥É¤òÍÑ°Õ¤·¤Æ¤ª¤­¤Þ¤¹¡£


CharaDataSO.cs

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


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


¡ãList.Find ¥á¥½¥Ã¥É¡ä


¡¡List¤Ë¤Ï Find ¤È¤¤¤¦¥á¥½¥Ã¥É¤¬ÍÑ°Õ¤µ¤ì¤Æ¤Þ¤¹¡£
List Æâ¤ÎÍ×ÁǤòÀèƬ¤«¤é¸¡º÷¤·¤Æ¡¢»ØÄꤷ¤¿¾ò·ï¤Ë¹çÃפ·¤¿ºÇ½é¤ÎÍ×ÁÇ£±¤Ä¤ò¼è¤ê½Ð¤·¤ÆÌá¤êÃͤȤ·¤ÆÊÖ¤·¤Æ¤¯¤ì¤ë½èÍý¤Ç¤¹¡£
Find ¥á¥½¥Ã¥É¤Ï foreach ʸ¤Çµ­½Ò¤¹¤ëÆâÍƤÈƱ¤¸½èÍý¤ò£±¹Ô¤Ç½èÍý¤Ç¤­¤Þ¤¹¡£

Find ¤Î¾ì¹ç
    /// <summary>
    /// ID ¤Ë¤è¤ë¥­¥ã¥é¤Î¸¡º÷¤È¼èÆÀ
    /// </summary>
    /// <param name="searchId"></param>
    /// <returns></returns>
    public CharaData GetCharaDataFromId(int searchId) {
        return charaDataList.Find(data => data.id == searchId);
    }

foreach ¤ÇƱ¤¸½èÍý¤ò½ñ¤¤¤¿¾ì¹ç
  foreach (CharaData data in charaDataList) {
      if (data.id == searchId) {
          return data;
      }
  }

¡¡¤³¤Î£²¤Ä¤Î½èÍý¤ÏƱ¤¸ÆâÍƤˤʤê¤Þ¤¹¡£
ºÇ½é¤Ë¹çÃפ·¤¿Ãͤ¬Âоݤˤʤê¤Þ¤¹¤Î¤Ç¡¢¤Þ¤È¤á¤ÆÊ£¿ô¼èÆÀ¤·¤¿¤¤¾ì¹ç¤ä¡¢¹çÃפ¹¤ë¾ò·ï¤òËþ¤¿¤¹Í×ÁǤ¬Ê£¿ô¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¤³¤Î½èÍý¤À¤±¤Ç¤Ï¼ÂÁõ¤Ç¤­¤Þ¤»¤ó¡£


»²¹Í¥µ¥¤¥È
Samurai BlogÍÍ
¡ÚC#ÆþÌç¡ÛList¤ÎÍ×ÁǤò¸¡º÷¤¹¤ëFind¤Î»È¤¤Êý(FindAll/FindIndex)


CharaDataSO ¥¹¥¯¥ê¥×¥È¤Î¹½Â¤¤Ë¤Ä¤¤¤Æ


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

¡¡£±¡¥¥­¥ã¥é´ØÏ¢¤Î¾ðÊóñ°Ì¤Ç¤Î¥Ç¡¼¥¿(¥­¥ã¥é¥Ç¡¼¥¿¤ÎÄ̤·Èֹ桢¥µ¥à¥Í¥¤¥ë¤Ë»È¤¦²èÁü¤Ê¤É¤Î¥Ç¡¼¥¿·²)¤ò°·¤¦¥¯¥é¥¹
¡¡£²¡¥¥­¥ã¥é´ØÏ¢¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë List(¥ê¥¹¥È)¤È ScriptableObject ¤ò·Ñ¾µ¤·¤¿¥¯¥é¥¹


£±¡¥¥­¥ã¥é´ØÏ¢¤Î¾ðÊóñ°Ì¤Ç¤Î¥Ç¡¼¥¿(¥­¥ã¥é¥Ç¡¼¥¿¤ÎÄ̤·Èֹ桢¥µ¥à¥Í¥¤¥ë¤Ë»È¤¦²èÁü¤Ê¤É¤Î¥Ç¡¼¥¿·²)¤ò°·¤¦¥¯¥é¥¹

ÍøÅÀ¤Ï¡¢£±¤Ä¤Î CharaData ¥¯¥é¥¹Æâ¤Ë¤Ï£±¤Äʬ¤Î¥­¥ã¥é´ØÏ¢¤ÎÁ´¥Ç¡¼¥¿¤¬ÅÐÏ¿¤Ç¤­¤ë¤³¤È¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢¥­¥ã¥é¥Ç¡¼¥¿¤ÎÄ̤·ÈÖ¹æÍÑ¡¢¥­¥ã¥é¤Î²èÁüÍѤȤ¤¤¦¤è¤¦¤ËÊÑ¿ô¤ò¸ÄÊ̤˺î¤ëɬÍפϤʤ¯¡¢
CharaData ¤Î id¡¢CharaData ¤Î sprite ¤È¤¤¤¦·Á¤Ç CharaData ¤ò»²¾È¤·¤ÆÍøÍѤǤ­¤ëÉôʬ¤Ç¤¹¡£

¡¡Î㤨¤Ð¡¢CharaData.id ¤Èµ­½Ò¤¹¤ì¤Ð¡¢¤½¤ì¤Ï¤½¤Î CharaData ¥¯¥é¥¹¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë id ¤ÎÃͤò»²¾È¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

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

[System.Serializable]¡¡¡¡//¡¡¢«¡¡¥¯¥é¥¹¤Ë System.Serializable °À­¤òÉÕÍ¿¤¹¤ë
public class CharaData
{
    public int id;
    public string name;
    public Sprite sprite;  // ¥­¥ã¥é¤Î²èÁü
    public CharacterBase CharacterPrefab;  // À¸À®¤¹¤ë¥­¥ã¥é

    public int hp;
    public float moveSpeed;
    public float jumpPower;
}

¡¡¤³¤Î¤è¤¦¤Ë¥­¥ã¥é´ØÏ¢¤Î¾ðÊó¤ËɬÍפˤʤë¥Ç¡¼¥¿¤ò¥¯¥é¥¹¤È¤·¤Æ¤Þ¤È¤á¤Æ¤ª¤¯¤³¤È¤Ç´ÉÍý¤ÈÍøÍѤ¬Íưפˤʤê¤Þ¤¹¡£

¡¡¤Þ¤¿¡¢´ÉÍý¤¹¤ë¾ðÊó¤òÁý¤ä¤·¤¿¤¤(¥­¥ã¥é¤Î¹¶·âÎÏ¡¢É¬»¦µ»¤Î̾Á°¤Ê¤É)¾ì¹ç¤Ë¤Ï¡¢
¤³¤Î CharaData ¥¯¥é¥¹Æâ¤Ë·¿¤ÈÊÑ¿ô¤òÄɵ­¤¹¤ì¤Ð¡¢¹¥¤­¤Ê¤À¤±Áý¤ä¤¹¤³¤È¤â½ÐÍè¤Þ¤¹¡£


£²¡¥¥­¥ã¥é´ØÏ¢¤Î¥Ç¡¼¥¿¤ò¤Þ¤È¤á¤ë List(¥ê¥¹¥È)¤È ScriptableObject ¤ò·Ñ¾µ¤·¤¿¥¯¥é¥¹


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

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



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

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

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

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

¡ãList ¤Î½é´ü²½­¢¡¡¤³¤Á¤é¤Ç¤â½é´ü²½¤Ç¤­¤Þ¤¹¡ä
  List<CharaData > charaDataList = new ();   // <=  Í×ÁÇ¿ô¤ÎÀë¸À¤¬ÉÔÍ×

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


»²¹Í¥µ¥¤¥È
.net columnÍÍ
¡Ú½é´ü²½¤ÎÊýË¡¡ÛC#¤ÇÇÛÎó¤ä¥ê¥¹¥È¤ò½é´ü²½¤¹¤ë¤Ë¤Ï¡©



¡¡public ½¤¾þ»Ò¤Ë¤Æ List ¤òÀë¸À¤¹¤ë¤³¤È¤Ç¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¾å¤Ç¥µ¥¤¥º¤ÎÊѹ¹¤¬²Äǽ¤Ç¤¹¡£

¡¡Î㤨¤Ð¥Ç¡¼¥¿¤ò£³¤Äʬºî¤Ã¤ÆÅÐÏ¿¤·¤¿¤¤¾ì¹ç¤Ë¤Ï¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ç List ¤Î¥µ¥¤¥º¤ò 3 ¤ËÀßÄꤹ¤ì¤Ð
CharaData ¥¯¥é¥¹¤¬ 3 ¤Ä¡¢Element 0 ¡Á Element 2 ¤È¤·¤ÆºîÀ®¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢¤³¤³¤Ë¥­¥ã¥é´ØÏ¢¤Î¥Ç¡¼¥¿¤ò£±¤Ä¤º¤Ä¡¢¹ç·×£³¤ÄʬÅÐÏ¿¤¹¤ë¤³¤È¤¬½ÐÍè¤Þ¤¹¡£

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


¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤ÎºîÀ®¤ÈÀßÄê


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

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

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

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



¡¡¤½¤ì¤Ç¤ÏºîÀ®¤·¤Þ¤·¤ç¤¦¡£

¡¡Asset ¥Õ¥©¥ë¥ÀÆâ¤Ç Create ¢ª Create CharaDataSO ¤òÁªÂò¤·¤Æ¡¢¿·¤·¤¤¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥»¥Ã¥È¤òºîÀ®¤·¤Þ¤¹¡£
ͽ¤á Datas ¥Õ¥©¥ë¥À¤Ê¤É¤òºîÀ®¤·¤Æ¤ª¤¤¤Æ¡¢¤½¤ÎÃæ¤ÇºîÀ®¤¹¤ë¤È´ÉÍý¤·¤ä¤¹¤¯¤Ê¤ê¤Þ¤¹¡£
¤½¤Î¾ì¹ç¤Ë¤Ï¡¢Datas ¥Õ¥©¥ë¥ÀÆâ¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤ò³«¤­¡¢Create ¢ª Create CharaDataSO ¤òÁªÂò¤·¤Þ¤¹¡£

¡¡¥Õ¥©¥ë¥ÀÆâ¤Ë CharaDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥»¥Ã¥È¤¬ºîÀ®¤µ¤ì¤Þ¤¹¡£Ì¾Á°¤Ï¤½¤Î¤Þ¤Þ¤ÇÌäÂꤢ¤ê¤Þ¤»¤ó¡£


¥á¥Ë¥å¡¼



Datas ¥Õ¥©¥ë¥À


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


ÅÐÏ¿


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

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

¡¡CharaDataSO ¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¢¥»¥Ã¥È¤òÁªÂò¤·¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤«¤é CharaData ¤Ë¥­¥ã¥é¤Î¾ðÊó¤òÅÐÏ¿¤·¤Þ¤¹¡£

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

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

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



¡¡¤Þ¤º¤Ï id ÊÑ¿ô¤ò 0 ¤«¤éÏ¢ÈÖ¤ÇÀßÄꤷ¡¢Æ±¤¸ÈÖ¹æ¤ò»È¤ï¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡³Æ¿ôÃͤ䥭¥ã¥é¤ÏǤ°Õ¤Ç¤¹¤¬¡¢No ¤ÎÃͤÀ¤±¤Ï°Û¤Ê¤ëÈÖ¹æ¤ÇÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¤Ç¤­¤ì¤Ð 0 ¤«¤éÏ¢ÈÖ¤¬ÍýÁۤǤ¹¡£
¤³¤ÎÈÖ¹æ¤Ï¥Ç¡¼¥¿ÍѤθÄÂÎÈÖ¹æ¤È¤·¤ÆÍøÍѤ¹¤ë²ÄǽÀ­¤¬¤¢¤ê¤Þ¤¹¤Î¤Ç¡¢Æ±¤¸ÈÖ¹æ¤ò½ÅÊ£¤·¤ÆÀßÄꤷ¤Æ¤·¤Þ¤¦¤È¡¢
Ʊ¤¸ÈÖ¹æ¤Î¸ÄÂΤ¬Ê£¿ô¸ºß¤¹¤ë¤³¤È¤Ë¤Ê¤ê¡¢ÈÖ¹æ¤Ë¤è¤Ã¤Æ¥Ç¡¼¥¿¤òÆÃÄꤹ¤ë¤³¤È¤¬½ÐÍè¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£

¡¡name ÊÑ¿ô¤Ë¤Ï¥­¥ã¥é¤Î̾Á°¤òÅÐÏ¿¤·¤Þ¤¹¡£

¡¡sprite ÊÑ¿ô¤Ë¤Ï¡¢¥­¥ã¥é¤Î²èÁü¤ò¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£Ç¤°Õ¤Î²èÁü¤ò¥¤¥ó¥Ý¡¼¥È¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡¤½¤ì°Ê³°¤ÎÉôʬ¤Ï°ìö¡¢ÀßÄê¤Ê¤·¤ÇÌäÂꤢ¤ê¤Þ¤»¤ó¡£


¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü(¥µ¥ó¥×¥ë¡£¤³¤Î¥­¥ã¥é¤Î¤è¤¦¤Ë¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó)



¡¡°Ê¾å¤Ç¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ï´°À®¤Ç¤¹¡£


GameData ¥¹¥¯¥ê¥×¥È¤ÎºîÀ®


¡¡¥²¡¼¥àÆâ¤Î¥Ç¡¼¥¿¤òÊÝ»ý¤¹¤ë¥¯¥é¥¹¤Ç¤¹¡£

¡¡¥·¥ó¥°¥ë¥È¥ó¥¯¥é¥¹¤Ç¡¢¤«¤Ä¥·¡¼¥óÁ«°Ü»þ¤Ë¤âÇË´þ¤µ¤ì¤Ê¤¤¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¤¹¤ë¤³¤È¤Ç
¤É¤Î¥¯¥é¥¹¤«¤é¤Ç¤âÊÑ¿ô¤ä¥á¥½¥Ã¥É¤Ë¥¢¥¯¥»¥¹¤Ç¤­¡¢¥·¡¼¥óÁ«°Ü¸å¤âÍøÍѤ¹¤ë¤³¤È¤¬¤Ç¤­¤ë¥¯¥é¥¹¤È¤·¤ÆÀ߷פ·¤Þ¤¹¡£

¡¡enum ¤ò£²¤ÄºîÀ®¤·¤Æ¤¤¤Þ¤¹¤¬¡¢¤³¤Á¤é¤Ï¥¯¥é¥¹³°Éô¤Ë¤ÆÀë¸À¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢
ÊÌ¥Õ¥¡¥¤¥ë¤È¤·¤ÆºîÀ®¤·¤Æ¤âÌäÂꤢ¤ê¤Þ¤»¤ó¡£


GameData.cs

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


¡¡ÆâÉô¥Ç¡¼¥¿¤Ë¤Ä¤¤¤Æ¤Ï¥×¥í¥Ñ¥Æ¥£¤òÍøÍѤ·¤Æ³°Éô¥¯¥é¥¹¤ËÄ󶡤·¤Æ¤¤¤Þ¤¹¡£


¡ãenum(Îóµó)·¿¡ä


¡¡C# ¤Ë¤ÏÆÃÄê¤ÎÃͤ·¤«¼è¤é¤Ê¤¤¥Ç¡¼¥¿¤Ë´Ø¤·¤Æ¡¢¤¢¤é¤«¤¸¤áÅÐÏ¿¤·¤Æ¤ª¤¤¤Æ¡¢¤½¤ÎÈÏ°ÏÆâ¤Ç¤Î¤ß¥Ç¡¼¥¿¤ò°·¤¦¤è¤¦¤Ë»ØÄ꤬½ÐÍè¤Þ¤¹¡£
¤³¤ì¤ò enum (ÆɤßÊý¤Ï¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤¹¤¬¡¢¥¤¥Ë¥å¡¼¥à¤¬°ìÈÌŪ¤Ç¤¹) ¤È¤¤¤¦¥­¡¼¥ï¡¼¥É¤òÍøÍѤ¹¤ë¤³¤È¤ÇºîÀ®¤Ç¤­¤Þ¤¹¡£
enum ¤ò¥­¡¼¥ï¡¼¥É¤È¤·¤ÆÀë¸À¤·¡¢¤½¤Î¸å¤Ë·¿Ì¾¤ò½ñ¤­¤Þ¤¹¡£¤½¤Î¸å¡¢{¡¡}¥Ö¥í¥Ã¥¯¤ÎÃæ¤ËÎóµó»Ò¤È¤¤¤¦·Á¤ÇÅÐÏ¿¤·¤¿¤¤¥Ç¡¼¥¿¤òÀë¸À¤·¤Þ¤¹¡£

/// <summary>
/// ¥­¥ã¥é¤Î¥ª¡¼¥Ê¡¼¤Î¼ïÎà
/// </summary>
public enum OwnerType {
    Player,
    Opponent
}

/// <summary>
/// ¥·¡¼¥ó¤Î̾Á°
/// </summary>
public enum SceneName {
    CharaSelect,
    Battle
}

¡¡¤Þ¤¿ enum ¤ÎÎóµó»Ò¤Ë¤ÏÆüËܸì¤Ç¤âÀë¸À¤Ç¤­¤Þ¤¹¡£

/// <summary>
/// ¥­¥ã¥é¤Î¥ª¡¼¥Ê¡¼¤Î¼ïÎà
/// </summary>
public enum OwnerType {
    ¥×¥ì¥¤¥ä¡¼,
    ÂÐÀïÁê¼ê
}


»²¹Í¥µ¥¤¥È
MicroSoft
Îóµó·¿ (C# ¥ê¥Õ¥¡¥ì¥ó¥¹)
https://docs.microsoft.com/ja-jp/dotnet/csharp/lan...
SamuraiBlog ÍÍ
¡ÚC#ÆþÌç¡Ûenum(Îóµó·¿)¤Î»È¤¤ÊýÁí¤Þ¤È¤á(ʸ»úÎó/int/foreach)
https://www.sejuku.net/blog/50547


¡ã¥·¥ó¥°¥ë¥È¥ó¥¯¥é¥¹¡ä


¡¡¥·¥ó¥°¥ë¥È¥ó¤È¤Ï¡¢¿ô¿¤¯¤¢¤ë¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó¤Î£±¤Ä¤Ç¤¹¡£¤½¤Î¥¯¥é¥¹¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤¬É¬¤º£±¤Ä¤Ç¤¢¤ë¤³¤È¤òÊݾڤ¹¤ë¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó¤Î¤³¤È¤ò¸À¤¤¤Þ¤¹¡£

¡¡GameData ¥¯¥é¥¹¤Ç¤Ï¡¢¤³¤Î¥·¥ó¥°¥ë¥È¥ó¤òºÎÍѤ·¤Æ¤¤¤Þ¤¹¡£¤Ä¤Þ¤ê¡¢¥²¡¼¥àÃæ¤òÄ̤¸¤Æ¡¢¤³¤ÎGameData ¥¯¥é¥¹¤¬£±¤Ä¤·¤«Â¸ºß¤Ç¤­¤Ê¤¤¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
¼ÂÁõÎã¤ÏÊ£¿ô¤¢¤ê¤Þ¤¹¤¬¡¢°ìÈÖÆɤߤ䤹¤¤Êý¼°¤Çµ­½Ò¤·¤Æ¤¤¤Þ¤¹¡£

¡¡¤³¤Î¥·¥ó¥°¥ë¥È¥ó¤Ë¤è¤Ã¤Æ¥¤¥ó¥¹¥¿¥ó¥¹¤¬£±¤Ä¤«À¸À®¤µ¤ì¤Ê¤¤¤³¤È¤¬Êݾڤµ¤ì¤Þ¤¹¤Î¤Ç¡¢¤³¤ÎGameData ¥¯¥é¥¹¤Ø¤Î»²¾È¤Ï¡¢¤¤¤º¤ì¤Î¥¯¥é¥¹¤«¤é¤Ç¤¢¤Ã¤Æ¤âÊÑ¿ô¤ò²ð¤µ¤º¤Ë»²¾È¤ò¹Ô¤¨¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£



¡¡Î㤨¤Ð¡¢Enemy¤È¤¤¤¦¥¯¥é¥¹¤¬¤¢¤ê¡¢¤½¤ÎEmeny¥¯¥é¥¹¤ò»ý¤Ä¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬£µ¤Ä¤¢¤Ã¤¿¾ì¹ç¡¢¡Ö¤É¤Î¡×Enemy¥¯¥é¥¹¤Ç¤¢¤ë¤«¤ò³ÎÄê¤Ç¤­¤Ê¤¤¤È¡¢ÂоݤȤʤëEnemy¥¯¥é¥¹¤Ø¤Ï»²¾È¤Ç¤­¤Þ¤»¤ó¡£
¤½¤Î¤¿¤á¡¢Enemy·¿¤ÎÊÑ¿ô¤òÍÑ°Õ¤·¤Æ¡¢¤½¤ÎÊÑ¿ô¤Ø»²¾È¤·¤¿¤¤Enemy¥¯¥é¥¹¤òÂåÆþ¤¹¤ë¤³¤È¤Ë¤è¤Ã¤Æ¡¢¤Ï¤¸¤á¤ÆEnemy¥¯¥é¥¹¤Î¾ðÊó¤ò°·¤¦¤³¤È¤¬¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¤Ç¤¹¤¬¥·¥ó¥°¥ë¥È¥ó¤Ç¤¢¤ëGameData ¥¯¥é¥¹¤Î¾ì¹ç¤Ë¤Ï¡¢¤³¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ï¾ï¤Ë£±¤Ä¤·¤«¤Ê¤¤¤³¤È¤¬Êݾڤµ¤ì¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¡Ö¤É¤Î¡×¤È¤¤¤¦»ØÄê¤ÎÉôʬ¤¬ÉÔÍפˤʤê¤Þ¤¹¡£
¤Ä¤Þ¤êÊÑ¿ô¤Ø¤ÎÂåÆþ¤¬ÉÔÍפˤʤê¤Þ¤¹¡£

¡¡GameData ¤È¤¤¤¦»ØÄê¤Ï¤¹¤Ê¤ï¤Á¡¢¼«Æ°Åª¤Ë¤¿¤À£±¤Ä¤Î GameData ¤Ø¤Î»²¾È¤¬¹Ô¤ï¤ì¤Þ¤¹¡£


GameData ¤ÎºîÀ®


¡¡¥Ò¥¨¥é¥ë¥­¡¼¤Ë¤Æ Create Empty ¤Ç¿·¤·¤¤¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¡¢GameData ¥¹¥¯¥ê¥×¥È¤ò¥¢¥¿¥Ã¥Á¤·¤Þ¤¹¡£


¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¥­¥ã¥é





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

¡¡¢ª¡¡¼¡¤Ï ¥­¥ã¥éÁªÂòµ¡Ç½¤Î¼ÂÁõ­£ ¤Ç¤¹¡£

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


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

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

Menu



´ðÁÃ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

private



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

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