i-school - £²£Ä¤Þ¤ë¤Ð¤Ä¥²¡¼¥à(»°ÌÜʤÙ)¡¡¼ê½ç£±£´
¡¡°Ê²¼¤ÎÆâÍƤǽçÈ֤˼ÂÁõ¤ò¿Ê¤á¤Æ¤¤¤­¤Þ¤¹¡£

¼ê½ç£±£´¡¡¡¼MVP ¥Ñ¥¿¡¼¥ó¤Ø¤Î¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°¡¼
£²£°¡¥MVP ¥Ñ¥¿¡¼¥ó¤Ø¤Î¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°



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

¡¡¡¦´û¸¤Î½èÍý¤ò¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°¤·¤Æ MVP ¥Ñ¥¿¡¼¥ó¤ËÊѹ¹¤¹¤ë



£²£°¡¥MVP ¥Ñ¥¿¡¼¥ó¤Ø¤Î¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°

£±¡¥Àß·×


¡¡Grid ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î°ìÏ¢¤ÎÆ°ºî¤Î¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°¤ò¹Ô¤¤¡¢MVP ¥Ñ¥¿¡¼¥ó¤ËÊѹ¹¤·¤Æ¤¤¤­¤Þ¤¹¡£

¡¡¤¤¤Þ¤Þ¤Ç¤Ï¼ÂÁõ¤·¤Æ¤¤¤Ê¤¤Éôʬ¤Î½èÍý¤ò MVP ¥Ñ¥¿¡¼¥ó¤Ë¤ÆÀ߷פ·¤Æ¼ÂÁõ¤ò¹Ô¤Ã¤Æ¤­¤Þ¤·¤¿¤¬¡¢
º£²ó¤Ï¤¹¤Ç¤ËÆ°ºî¤·¤Æ¤¤¤ë Grid ´ØÏ¢¤Î½èÍý¤ò¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°¤·¡¢MVP ¥Ñ¥¿¡¼¥ó¤ËÊѹ¹¤·¤Æ¤¤¤­¤Þ¤¹¡£
Grid ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤ë Grid ¥¹¥¯¥ê¥×¥È¤ÎÆâÍƤò View ¤È Model ¤Î£²¤Ä¤Î¥¯¥é¥¹¤Ëʬ³ä¤·¤Þ¤¹¡£
Model ¥¯¥é¥¹¤Ë¤Ï MainGame ¤¬´ÉÍý¤ò¹Ô¤¤¤Þ¤¹¡£

¡¡View ¤Ë¤Ä¤¤¤Æ¤Ï Presenter ¥¯¥é¥¹¤Ë¤Æ´ÉÍý¤ò¹Ô¤¤¤Þ¤¹¡£
¤Ê¤ª¡¢Button ¤Îµ¡Ç½¤Ë¤Ä¤¤¤Æ¤Ï¡¢View ¥¯¥é¥¹¤Ë´ÉÍý¤µ¤»¤ëÊýË¡¤È Model ¥¯¥é¥¹¤Ë´ÉÍý¤µ¤»¤ëÊýË¡¤È¤¬¤¢¤ê¡¢°ì³µ¤Ë¤É¤Á¤é¤È¤Ï¸À¤¨¤Ê¤¤Éôʬ¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
º£²ó¤Ï View ¥¯¥é¥¹¤Ë¤Æ´ÉÍý¤·¤Æ¤¤¤Þ¤¹¤¬¡¢Â¾¤Îµ­»ö¤Ç¤Ï Model ¥¯¥é¥¹¤Ë¤Æ´ÉÍý¤·¤Æ¤¤¤ë¾ì¹ç¤â¤¢¤ê¤Þ¤¹¡£


Grid_View ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë


¡¡¤¤¤Þ¤Þ¤Ç¤Î View ¥¯¥é¥¹¤ÈƱ¤¸¤è¤¦¤Ë UI ɽ¼¨µ¡Ç½¤ÎÀ©¸æ½èÍý¤Î¤ß¤òµ­½Ò¤·¤Æ¤¤¤Þ¤¹¡£

¡¡½èÍý¤ÎÆâÍƤò¸«¤ëÁ°¤Ë¡¢¸½ºß¤Î Grid ¥¯¥é¥¹¤ò¸µ¤Ë¡¢¼«Ê¬¤Ç¹Í¤¨¤Æ½ñ¤¤¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£


Grid_View.cs

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




Grid_Model ¥¹¥¯¥ê¥×¥È¤òºîÀ®¤¹¤ë


¡¡enum ¤â ReactiveProperty ¤È¤·¤ÆºîÀ®¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¤Î¤Ç¡¢GridOwnerType ¤òReactiveProperty ¤È¤·¤ÆÀë¸À¤·¡¢¹ØÆɽÐÍè¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£


Grid_Model.cs

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




Grid ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÊ£À½¤·¤Æ¡¢Grid_Model ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¡¢ÀßÄê¤ò¹Ô¤¦


¡¡Prefabs ¥Õ¥©¥ë¥À¤Ë¤¢¤ë Grid ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò ctrl + D ¥Ü¥¿¥ó¤ÇÊ£À½¤·¤Þ¤¹¡£
̾¾Î¤ò Grid_Model ¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£

¡¡Àè¤Û¤ÉºîÀ®¤·¤¿ View ¤È Model ¤Î¥¹¥¯¥ê¥×¥È¤ò¥¢¥¿¥Ã¥Á¤·¡¢¥¢¥µ¥¤¥ó¤ÎÀßÄê¤ò¹Ô¤Ã¤Æ¤¯¤À¤µ¤¤¡£


¥Õ¥©¥ë¥À²èÁü



¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¹½Â¤



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




MainGame ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡Grid_Model ¥¯¥é¥¹¤ò´ÉÍý¤¹¤ë¤¿¤á¡¢¿·¤·¤¤ÊÑ¿ô¤ÎÀë¸À¤òÄɲä·¤Þ¤¹¡£
À¸À®¤ò¹Ô¤¦ºÝ¤Î¥¯¥é¥¹¤âÊѹ¹¤Ë¤Ê¤ë¤¿¤á¡¢¥×¥ì¥Õ¥¡¥ÖÍѤ˿·¤·¤¤ÊÑ¿ô¤ÎÀë¸À¤âÄɲä·¤Þ¤¹¡£

¡¡InitialSettings ¥á¥½¥Ã¥É¤È OnClickGrid ¥á¥½¥Ã¥É¤È PutOpponentGrid ¥á¥½¥Ã¥É¤Î½èÍý¤ò
¿·¤·¤¯ºîÀ®¤·¤¿¥¯¥é¥¹¤òÍøÍѤ¹¤ë·Á¤Ë½¤Àµ¤·¤Þ¤¹¡£

¡¡Restart ¥á¥½¥Ã¥É¤òºîÀ®¤·¡¢¥ê¥¹¥¿¡¼¥È¤¹¤ëºÝ¤Î½èÍý¤òÄɲä·¤Þ¤¹¡£¡¡


MainGame_Model.cs

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



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


¡¡¿·¤·¤¤ÊÑ¿ô¤ËɬÍפʾðÊó¤ò¥¢¥µ¥¤¥ó¤·¤Æ¤ª¤­¤Þ¤·¤ç¤¦¡£
¤É¤ÎÊÑ¿ô¤Ë¤É¤Î¤è¤¦¤Ê¾ðÊó¤¬É¬Íפˤʤë¤Î¤«¡¢¥×¥í¥°¥é¥à¤òÆɤ߲ò¤¤¤Æ¼«Ê¬¤Ç¹Í¤¨¤Æ¥¢¥µ¥¤¥ó¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£


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



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


Presenter ¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë


¡¡Start ¥á¥½¥Ã¥ÉÆâ¤Î TODO Éôʬ¤ò£²¤«½ê¼ÂÁõ¤·¤Þ¤¹¡£


Presenter.cs

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



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


¡¡¿·¤·¤¯Äɲä·¤¿ÊÑ¿ô¤Ë¾ðÊó¤ò¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£


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


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


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


¡¡¥²¡¼¥à¤Î½èÍý¤Îή¤ì¤òÇÄ°®¤·¤¿¾å¤Ç¡¢¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆÆ°ºî¤Î³Îǧ¤ò¹Ô¤¤¤Þ¤·¤ç¤¦¡£
º£²ó¤Ï¥ê¥Õ¥¡¥¯¥¿¥ê¥ó¥°¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¤¤¤Þ¤Þ¤Ç¤ÈƱ¤¸¤è¤¦¤Ë¥²¡¼¥à¤¬Æ°ºî¤·¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤¡£



¡¡¤ª¤Ä¤«¤ì¤µ¤Þ¤Ç¤·¤¿¡ª

¡¡°Ê¾å¤Ç¤³¤Î¥²¡¼¥à¤ÎÀ©ºî¤Ï´°À®¤Ë¤Ê¤ê¤Þ¤¹¡£
º£¸å¤â½èÍý¤Î²þÎɤ䡢µ¡Ç½¤ÎÄɲá¢Â¾¤Î¥²¡¼¥à¤Ø¤Î±þÍѤò¹Í¤¨¤Æ¡¢½èÍý¤ÎÍý²ò¤ò¿¼¤á¤Æ¤¤¤Ã¤Æ¤¯¤À¤µ¤¤¡ª