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

¡¡¥«¡¼¥É¤Î¸ú²Ì´ØÏ¢µ¡Ç½¤Î¥½¡¼¥¹¥³¡¼¥É¤òÄ󼨤·¤Þ¤¹¡£



¥«¡¼¥É´ØÏ¢¥¯¥é¥¹¤ÎÀ°Íý


¡¡¥«¡¼¥É¤Î¼þ¤ê¤Î¥¯¥é¥¹¤¬Â¿¤¤¤Î¤Ç¡¢À°Íý¤·¤Æ¤ª¤­¤Þ¤¹¡£

£±¡¥CardController
¡¡¡¡¡¡¥«¡¼¥É¤Î¥×¥ì¥Ï¥Ö¤Ë¥¢¥¿¥Ã¥Á¤·¤Æ¡¢¥«¡¼¥É¤Î¸«¤¿ÌܤòÀ°¤¨¤¿¤ê¡¢CardData ¤ä¡¢º£²óºîÀ®¤¹¤ë CardEffect ¤ò´ÉÍý¤¹¤ë¥¯¥é¥¹¤Ç¤¹¡£

£²¡¥CardType
¡¡¡¡¡¡¥«¡¼¥É¤Î¼ïÎà¤òÅÐÏ¿¤·¤Æ¤ª¤¯ enum ¤Ç¤¹¡£

£³¡¥CardData
¡¡¡¡¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤Ç´ÉÍý¤¹¤ë¡¢¥«¡¼¥É¤Î¥Ç¡¼¥¿ÍѤΥ¯¥é¥¹
¡¡¡¡¡¡¤Ê¤ª¡¢name ÊÑ¿ô¤Î̾¾Î¤Ï¡¢CardEffectBase ¥¯¥é¥¹¤ò·Ñ¾µ¤·¤Æ¤¤¤ë¥µ¥Ö¥¯¥é¥¹(Attack ¤È¤« Recovery ¤È¤«)¤ÈƱ¤¸
¡¡¡¡¡¡±Ñ¸ì¤Î̾¾Î¤Ë¤·¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£

£´¡¥CardDataSO
¡¡¡¡¡¡¡¡¥¹¥¯¥ê¥×¥¿¥Ö¥ë¡¦¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤¹¤ë¤¿¤á¤Î¥¯¥é¥¹¤Ç¤¹¡£
¡¡¡¡¡¡¡¡¤³¤Î¥¯¥é¥¹Æâ¤Î List ¤Ç CardData ¤ò°ì¸µ´ÉÍý¤·¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹²½¤ò¹Ô¤Ã¤Æ¥«¡¼¥É¥Ç¡¼¥¿¤ò´ÉÍý¤·¤Þ¤¹¡£

¡¡¤³¤³¤Þ¤Ç¤¬¸½ºßºîÀ®ºÑ¤Î¥¯¥é¥¹¤Ç¤¹¡£



¡¡º£²ó¤Ï¾åµ­¤Ë²Ã¤¨¤Æ¡¢°Ê²¼¤Î¥¯¥é¥¹¤òºîÀ®¤·¤Þ¤¹¡£

£±¡¥ICommand
¡¡¡¡¡¡¥«¡¼¥É¤Î¸ú²Ì¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Î¥á¥½¥Ã¥É¤ò»ý¤Ä¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Ç¤¹¡£
¡¡¡¡¡¡¤³¤Á¤é¤ò¼ÂÁõ¤¹¤ë¤³¤È¤Ç¡¢¤¹¤Ù¤Æ¤Î¥«¡¼¥É¤ÏƱ¤¸¥á¥½¥Ã¥É¤ò»È¤¤¡¢¥«¡¼¥É¤Î¸ú²Ì¤ò¼Â¹Ô¤·¡¢¿¶¤ëÉñ¤¤¤òÊѤ¨¤ëÀ߷פǤ¹¡£

£²¡¥CardEffectBase
¡¡¡¡¡¡¥«¡¼¥É¤Î¸ú²Ì¤òÅÐÏ¿¤¹¤ë¤¿¤á¤Î¿Æ¥¯¥é¥¹¤Ç¤¹¡£
¡¡¡¡¡¡Ãê¾Ý¥¯¥é¥¹¤È¤·¤ÆÀ߷פ·¤Þ¤¹¤Î¤Ç¡¢É¬¤º¡¢¥µ¥Ö(»Ò)¥¯¥é¥¹¤òºîÀ®¤·¤Æ·Ñ¾µ¤·¤ÆÍøÍѤ·¤Þ¤¹¡£


£³¡¥CardEffectBase ¥¯¥é¥¹¤ò·Ñ¾µ¤·¤Æ¤¤¤ë¥µ¥Ö(»Ò)¥¯¥é¥¹(Attack ¤È¤« Recovery ¤È¤«)
¡¡¡¡¡¡¼ÂºÝ¤Ë¥²¡¼¥àÆâ¤ÇÍøÍѤµ¤ì¤ë¥«¡¼¥É¤Î½èÍý¤¬½ñ¤«¤ì¤Þ¤¹¡£

£´¡¥CardEffectFactory
¡¡¡¡¡¡¡Ú£³¡Û¤ÇºîÀ®¤·¤¿¥µ¥Ö¥¯¥é¥¹¤òÀ¸À®¤¹¤ë¤¿¤á¤Î¥Õ¥¡¥¯¥È¥ê¡¼¥Ñ¥¿¡¼¥ó¤òÍøÍѤ·¤¿¥¯¥é¥¹¤Ç¤¹¡£
¡¡¡¡¡¡¤³¤Î¥¯¥é¥¹Æâ¤Ç¥«¡¼¥É¤Î¸ú²Ì¤òÀ¸À®¤·¤Þ¤¹¡£


¡¡¤³¤Î¤Û¤«¤Ë¤â¤Þ¤À¿¤¯¤Î¥«¡¼¥É´ØÏ¢¤Î¥¯¥é¥¹¤òºîÀ®¤·¤Æ¤¤¤­¤Þ¤¹¡£
Î㤨¤Ð¼ê»¥¤ò´ÉÍý¤¹¤ë¥¯¥é¥¹¡¢¥«¡¼¥É¤Î¸ú²Ì¤ò¼Â¹Ô¤·¤Æ¤¤¤¯¥¯¥é¥¹¡¢¤Ê¤É¤¬¤¢¤ê¤Þ¤¹¡£


¡ãÀ߷פΥݥ¤¥ó¥È¡ä


¡¡¥«¡¼¥É¤Î¸ú²ÌÍѤΥ¯¥é¥¹(£²¤È£³)¤Ï¤É¤ì¤â MonoBehaviour ¤ò·Ñ¾µ¤·¤Æ¤¤¤Þ¤»¤ó¡£
¤½¤Î¤¿¤á¡¢Instantiate ¥á¥½¥Ã¥É¤ò»È¤Ã¤Æ¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¤è¤¦¤ËÀ¸À®¤Ï½ÐÍè¤Þ¤»¤ó¡£
¡¡¡¡¡¡
¡¡Âå¤ï¤ê¤Ë new ¥­¡¼¥ï¡¼¥É¤òÍøÍѤ¹¤ë¤«¡¢¥ê¥Õ¥ì¥¯¥·¥ç¥ó¤È¤¤¤¦µ¡Ç½¤ò»È¤Ã¤ÆÀ¸À®¤·¤Þ¤¹¡£
º£²ó¤Ï¥ê¥Õ¥ì¥¯¥·¥ç¥ó¤òÍøÍѤ·¤Þ¤¹¡£
¡¡¡¡¡¡
¡¡CardEffectFactory ¥¯¥é¥¹¤Ï static ¥¯¥é¥¹¤Ç¤¹¡£¥²¡¼¥à¼Â¹Ô»þ¤Ë¡¢¸«¤¨¤Ê¤¤¤Ç¤¹¤¬¼«Æ°À¸À®¤µ¤ì¤Þ¤¹¡£
static ¤Ç¤¹¤Î¤Ç¡¢¤É¤Î¥¯¥é¥¹¤«¤é¤Ç¤â¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤¹¡£
¤³¤³¤Ï¥«¡¼¥É¤Î¥¤¥ó¥¹¥¿¥ó¥¹À¸À®¤òôÅö¤¹¤ë¥¯¥é¥¹¤Ç¤¹¡£
¡¡¡¡¡¡
¡¡À¸À®¤À¤±¤òôÅö¤¹¤ë¥¯¥é¥¹¤òÍÑ°Õ¤·¤Æ¡¢ÀìÌçŪ¤ËÍøÍѤ¹¤ë¤³¤È¤ò¥Õ¥¡¥¯¥È¥ê¡¼(¹©¾ì)¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó¤È¤¤¤¤¤Þ¤¹¡£
¡¡
¡¡¤É¤Î¤è¤¦¤Ê¤³¤È¤ò¤¹¤ë¤«¤È¤¤¤¦¤È¡¢

¡ÚCardData ¤Î name ¤ÈƱ¤¸Ì¾¾Î¤Î CardEffectBase ¥¯¥é¥¹¤ò·Ñ¾µ¤·¤Æ¤¤¤ë¥µ¥Ö¥¯¥é¥¹(Attack ¤È¤« Recovery ¤È¤«)¤òưŪ¤Ë¥¤¥ó¥¹¥¿¥ó¥¹¤·¤Þ¤¹¡£¡Û

¡¡Î㤨¤Ð¡¢CardData ¤Î name ¤Ë Attack ¤ÈÅÐÏ¿¤·¤Æ¤ª¤¤¤Æ¡¢¤½¤Î̾Á°¤Î¥¯¥é¥¹¤¬Â¸ºß¤¹¤ë¤«¡¢¤¹¤Ù¤Æ¤Î¥Õ¥©¥ë¥À¤ò¸¡º÷¤·¤Þ¤¹¡£
³ºÅö¤¹¤ë¥¯¥é¥¹¤¬¤¢¤Ã¤¿¤È¤­¡¢¥ê¥Õ¥ì¥¯¥·¥ç¥ó¤Îµ¡Ç½¤ò»È¤Ã¤Æ¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤µ¤»¤Þ¤¹¡£
¡¡¡¡¡¡
¡¡¥ê¥Õ¥ì¥¯¥·¥ç¥ó¤Ë¤Ï¤¤¤¯¤Ä¤«¤Îµ¡Ç½¤¬¤¢¤ê¤Þ¤¹¤¬¡¢Ê¸»úÎó¤ò Type ·¿¤ËÊÑ´¹¤¹¤ë¤³¤È¤Ç¡¢Æ±Ì¾¤Î¥¯¥é¥¹¤ò¥¤¥ó¥¹¥¿¥ó¥¹½ÐÍè¤Þ¤¹¡£
¤³¤Î¤è¤¦¤Ë¤·¤Æ¡¢¥«¡¼¥É¤Î¸ú²Ì¼«ÂΤò¥¤¥ó¥¹¥¿¥ó¥¹¤È¤·¤ÆÀ¸À®¤·¤Þ¤¹¡£
¡¡¡¡¡¡
¡¡¤³¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Ë MonoBehaviour ¥¯¥é¥¹¤ò·Ñ¾µ¤»¤º¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤·¤Ê¤¤¹½Â¤¤Ë¤·¤Æ¤¤¤ë¤Î¤Ï¡¢½èÍý¤ÎÉé²Ù¤òÄ㸺¤µ¤»¤¿¤¤¤¿¤á¤Ç¤¹¡£
¡¡¡¡¡¡
¡¡¥«¡¼¥É¤ò£´Ë祻¥Ã¥È¤·¤Æ¡¢¤µ¤é¤Ë¡¢¤½¤Î¥«¡¼¥É¤Ë¥¯¥é¥¹¤ò¥¢¥¿¥Ã¥Á¤·¤Æ¡¢¤È¤¤¤¦½èÍý¤ò¹Ô¤¦¤³¤È¤â²Äǽ¤Ç¤¹¤¬¡¢
¤½¤Î¾ì¹ç¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¸ú²Ì¤âɳ¤Å¤¯·Á¤Ë¤Ê¤ë¤¿¤á¡¢Í»Ä̤¬Íø¤­¤Ë¤¯¤¯¡¢¤¹¤Ù¤Æ Instantiate ¥á¥½¥Ã¥É¤ä GetComponent ¤ò¶´¤à¤Î¤ÇÁ´ÂÎŪ¤Ë½èÍý¤â½Å¤¯¤Ê¤ê¤Þ¤¹¡£
¡¡¡¡¡¡
¡¡º£²ó¤Î¾ì¹ç¡¢CardController ¤Ë CardData ¤È¤¤¤¦¸«¤¨¤Ê¤¤¥Ç¡¼¥¿¾ðÊó¤È¡¢CardEffectBase ¤«¤éÇÉÀ¸¤·¤¿ Attack ¤ä Recovery ¤È¤¤¤Ã¤¿¸ú²Ì¤â¸«¤¨¤Ê¤¤¥¤¥ó¥¹¥¿¥ó¥¹¤Î¾õÂ֤ǴÉÍý¤·¤Þ¤¹¡£
¥¢¥¿¥Ã¥Á¤ÏÉÔÍפǤ¹¤·¡¢Instantiate ¤â GetComponent ¤âÉÔÍפˤʤê¤Þ¤¹¡£
¡¡¡¡¡¡
¡¡¤Ê¤ª¡¢¥ê¥Õ¥ì¥¯¥·¥ç¥ó¼«ÂΤâ½Å¤¤½èÍý¤Ç¤¹¤¬¡¢¸¡º÷+À¸À®¤Î¤ß¤Ç½ª¤ï¤ë¤Î¤Ç¡¢¥È¡¼¥¿¥ë¤Ç¸«¤ë¤È¡¢º£²ó¤Ï¤³¤Á¤é¤ÎÊý¤¬·Ú¤¤½èÍý¤Ç¤¹¡£


£±¡¥ICommand


¡¡¥«¡¼¥É¤Î¸ú²Ì¤ò¼Â¹Ô¤¹¤ë¤¿¤á¤Î¥á¥½¥Ã¥É¤ò»ý¤Ä¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Ç¤¹¡£
¤³¤Á¤é¤ò¼ÂÁõ¤¹¤ë¤³¤È¤Ç¡¢¤¹¤Ù¤Æ¤Î¥«¡¼¥É¤ÏƱ¤¸¥á¥½¥Ã¥É¤ò»È¤¤¡¢¥«¡¼¥É¤Î¸ú²Ì¤ò¼Â¹Ô¤·¡¢¿¶¤ëÉñ¤¤¤òÊѤ¨¤ëÀ߷פǤ¹¡£

ICommand.cs

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



£²¡¥CardEffectBase


¡¡¥«¡¼¥É¤Î¸ú²ÌÍѤοƥ¯¥é¥¹¤Ç¤¹¡£
Ãê¾Ý¥¯¥é¥¹¤È¤·¤ÆÀ߷פ·¤Þ¤¹¤Î¤Ç¡¢É¬¤º¡¢»Ò¥¯¥é¥¹¤òºîÀ®¤·¤Æ·Ñ¾µ¤·¤ÆÍøÍѤ·¤Þ¤¹¡£


CardEffectBase.cs

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



£³¡¥»Ò¥¯¥é¥¹(¥µ¥Ö¥¯¥é¥¹)¤Î¥µ¥ó¥×¥ë


¡¡¤³¤³¤Ç¤Ï CardEffectBase ¤ò·Ñ¾µ¤·¡¢Attack ¥¯¥é¥¹¤òºîÀ®¤·¤Æ¤¤¤Þ¤¹¡£


Attack.cs

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





£´¡¥CardEffectFactory


¡¡¥µ¥Ö¥¯¥é¥¹¤òÀ¸À®¤¹¤ë¤¿¤á¤Î¥Õ¥¡¥¯¥È¥ê¡¼¥Ñ¥¿¡¼¥ó¤òÍøÍѤ·¤¿¥¯¥é¥¹¤Ç¤¹¡£
¤³¤Î¥¯¥é¥¹Æâ¤Ç¥ê¥Õ¥ì¥¯¥·¥ç¥ó¤Îµ¡Ç½¤òÍøÍѤ·¡¢¥«¡¼¥É¤Î¸ú²Ì¤òÀ¸À®¤·¤Þ¤¹¡£

CardEffectFactory.cs

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



¡ãActivator.CreateInstance¡ä

¡¡
¡¡Activator ¥¯¥é¥¹¤¬¥ê¥Õ¥ì¥¯¥·¥ç¥ó¤ò¹Ô¤¦¤¿¤á¤Î¥¯¥é¥¹¤Ç¤¹¡£
ÊÑ¿ô¤ËÂåÆþ¤»¤º¤ËÍøÍѤǤ­¤ë¥á¥½¥Ã¥É¤¬¤¢¤ê¡¢¤½¤Î£±¤Ä¤¬¡¢¥¯¥é¥¹¤ò¥¤¥ó¥¹¥¿¥ó¥¹¤¹¤ë¤¿¤á¤Î CreateInstance ¥á¥½¥Ã¥É¤Ç¤¹¡£
Âè1°ú¿ô¤Ë»ØÄꤷ¤¿ Type ·¿¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤òÀ¸À®¤·¡¢(CardEffectBase) ·¿¤Ë¥­¥ã¥¹¥È¤·¤¿¾å¤Çº¸ÊÕ¤ÎÊÑ¿ô¤ËÂåÆþ¤·¤Æ¤¤¤Þ¤¹¡£
¡¡¤³¤Î¤È¤­¡¢¥­¥ã¥¹¥È¤·¤Æ¤¤¤ë·¿¤Ï¿Æ¥¯¥é¥¹¤Î CardEffectBase ·¿¤Ç¤¹¤¬¡¢
¼ÂºÝ¤ËÀ¸À®¤µ¤ì¤ë¤Î¤Ï CardData ¤Î name ¤Ç»ØÄꤷ¤¿ Attack ¤ä Recovery ¤È¤¤¤Ã¤¿»Ò¥¯¥é¥¹¤Ë¤Ê¤ê¤Þ¤¹¡£

¡¡¤³¤Î¥Õ¥¡¥¯¥È¥ê¡¼¥¯¥é¥¹¤¬¤¢¤ì¤Ð¡¢º£¸å¤Ï¤É¤ó¤Ê¥«¡¼¥É¤Î¸ú²Ì¤Î¥¯¥é¥¹¤¬Áý¤¨¤Æ¤¤¤Ã¤Æ¤â¡¢
CardEffectBase ¥¯¥é¥¹¤µ¤¨·Ñ¾µ¤·¤Æ¤¤¤ì¤Ð¡¢¤³¤Î¥¯¥é¥¹Æâ¤Î½èÍý¤ò°ìÀÚÊѤ¨¤ë¤³¤È¤Ê¤¯¡¢¥¤¥ó¥¹¥¿¥ó¥¹¤¬À¸À®½ÐÍè¤Þ¤¹¡£
¡¡¤³¤ì¤¬·Ñ¾µ¤ò¤Ä¤«¤Ã¤¿Ãê¾Ý²½¤Î²¸·Ã¤Î£±¤Ä¤Ç¤¹¡£
Ʊ»þ¤Ë¥²¡¼¥àÆâ¤ËɬÍפʵ¡Ç½¤âºî¤ê½Ð¤»¤Æ¤¤¤Þ¤¹¤·¡¢¥«¡¼¥É¤Î¼ïÎबÁý¤¨¤Æ¤â¡¢¤³¤Î¥¯¥é¥¹¤Ï½¤Àµ¤¬ÉÔÍפȤ¤¤¦ÅÀ¤¬Â礭¤Ê¥Ý¥¤¥ó¥È¤Ç¤¹¡£

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


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

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

Menu



´ðÁÃ

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

private



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

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