ºÇ½ª¹¹¿·¡§
orika_ex_miyako 2022ǯ06·î15Æü(¿å) 23:05:08ÍúÎò
£±£¹¡¥CanvasÆâ¤Ë¥Ñ¥º¥ë¥²¡¼¥àÍѤÎUIÉôÉʤòºîÀ®¤¹¤ë£¡Ê»Ä¤ê»þ´Öɽ¼¨Éôʬ¡Ë £²£°¡¥GameData¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë¢¡¡»Ä¤ê»þ´Ö¤òÅÐÏ¿¤·¤Æ´ÉÍý¤Ç¤¤ë¤è¤¦¤Ë¤¹¤ë £²£±¡¥UI´ÉÍý¤ò¹Ô¤¦UIManager¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë¡»Ä¤ê»þ´Öɽ¼¨¤Î¹¹¿·¡Ë £²£²¡¥GameManager¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤¹¤ë¦¡¡»Ä¤ê»þ´Ö¤ò¥«¥¦¥ó¥È¤¹¤ë½èÍý¤òÄɲ乤ë
¡¡¿·¤·¤¤³Ø½¬ÆâÍƤϡ¢°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£
¡¦ToString()¥á¥½¥Ã¥É¤Î°ú¿ô¡Ú£²£±¡Û ¡¦TODO¤Î»È¤¤Êý¡Ú£²£²¡Û
¡¡TopUI¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¾å¤Ç±¦¥¯¥ê¥Ã¥¯¤ò¹Ô¤¤¡¢UI => Image ¤òÁªÂò¤·¡¢¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºîÀ®¤·¤Þ¤¹¡£Ì¾Á°¤òTimes¤ËÊѹ¹¤·¤Þ¤¹¡£
Times¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤Ï¡¢»Ä¤ê»þ´Öɽ¼¨Éô¤ÎÇطʲèÁü¤òÀßÄꤹ¤ë¤È¤È¤â¤Ë¡¢¤³¤Î²èÁü¾å¤Ëɽ¼¨¤¹¤ëText(»Ä¤ê»þ´Ö¤Î¿ô»ú)¤ò´ÉÍý¤¹¤ëÌò³ä¤ò»ý¤¿¤»¤Þ¤¹¡£
¡¡Timee¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£RectTransfrom¥³¥ó¥Ý¡¼¥Í¥ó¥È¡¢¤¢¤ë¤¤¤ÏScene¥Ó¥å¡¼Æâ¤Ç°ÌÃÖ¤òÂ礤µ¤òÄ´À°¤·¤Þ¤¹¡£
²èÁü¤ò»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¡ÊºÙ¤«¤¤¿ô»ú¤ÏŬµ¹ÀÚ¤ê¾å¤²¤Æ¤¯¤À¤µ¤¤¡Ë
¡¡¤Ä¤Å¤¤¤ÆImage¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎSourceImage¤Ë»Ä¤ê»þ´Öɽ¼¨Éôʬ¤ÎÇطʤȤʤë²èÁü¤òÀßÄꤷ¤Þ¤¹¡£
¤³¤³¤Ç¤Ï̵ÎÁ²èÁü¤òõ¤·¤Æ¤¤Æ¥¤¥ó¥Ý¡¼¥È¤·¤ÆÍøÍѤ·¤Æ¤¤¤Þ¤¹¤¬¡¢²èÁü¤Ï¼«Í³¤ËÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
¡¡¹ç¤ï¤»¤ÆImage¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ë¤¢¤ë Raycast Target ¤Î¥Á¥§¥Ã¥¯¤ò³°¤·¤Þ¤¹¡£
Times¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü

Times¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¡¡Scene¥Ó¥å¡¼²èÁü

¡¡Á°²ó¤Î¼ê½ç¤ÇºîÀ®¤·¤¿TextBasePrefab¤òTimes¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤ÆÇÛÃÖ¤·¤Þ¤¹¡£
TextBasePrefab¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥Ò¥¨¥é¥ë¥¡¼¤ÎTimes¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¤È¤·¤ÆÇÛÃÖ¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡Ì¾Á°¤ò txtTimer ¤ËÊѹ¹¤·¤Þ¤¹¡£¤³¤ì¤Ï»Ä¤ê»þ´Öɽ¼¨¤ÎÉôʬ¤Î¿ô»úɽ¼¨¤ÎÌò³ä¤ò»ý¤Á¤Þ¤¹¡£
¡¡txtTimer ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Æ¡¢RectTransfrom¥³¥ó¥Ý¡¼¥Í¥ó¥È¡¢¤¢¤ë¤¤¤ÏScene¥Ó¥å¡¼¤òÍøÍѤ·¤Æ°ÌÃÖ¤ÈÂ礤µ¤òÄ´À°¤·¤Þ¤¹¡£
²¼µ¤Î²èÁü¤ò»²¹Í¤Ë¡¢Å¬µ¹¤Ê°ÌÃÖ¤ÈÂ礤µ¤ËÄ´À°¤ò¤·¤Æ¤¯¤À¤µ¤¤¡£
¡¡Text¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎTextÍó¤Ë¤Ï¥Ç¥Ð¥Ã¥°ÍѤËŬµ¹¤Ê¿ô»ú¤òÆþ¤ì¤Æ¤ª¤¤Þ¤¹(0¡¤999¤Ê¤É)¡£Outline¤ÎÀßÄê¤Ê¤É¤â¿ô»ú¤ò¸«¤Ê¤¬¤é°ì½ï¤Ë¹Ô¤¤¤Þ¤·¤ç¤¦¡£
¤³¤ì¤Ç¾ï¤Ë²èÌ̾å¤Ë¤Ï»Ä¤ê»þ´Ö¤Î¿ô»ú¤¬É½¼¨¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
txtTimer ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü¡

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

Scene¥Ó¥å¡¼²èÁü

¡¡¡¡°Ê¾å¤Ç»Ä¤ê»þ´Öɽ¼¨¤Ë´ØÏ¢¤¹¤ëUIÉôÉʤκîÀ®¤Ï½ªÎ»¤Ç¤¹¡£
¡¡GameData¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢»Ä¤ê»þ´Ö¤ÎÀßÄêÃÍ(initTime)¤È¸½ºß¤Î»Ä¤ê»þ´Ö(gameTime)¤È¤ò¡¢¤½¤ì¤¾¤ìÊÑ¿ô¤òÍÑ°Õ¤·¤Æ´ÉÍý¤Ç¤¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡initTimeÊÑ¿ô¤Ï»Ä¤ê»þ´Ö¤ÎÀßÄêÃͤǤ¹¡£¤³¤ÎÃͤ¬¥²¡¼¥àÆâ¤Ë¤ª¤±¤ë»Ä¤ê»þ´Ö¤Î½é´üÃͤˤʤê¤Þ¤¹¡£´ð½àÃͤÏ60(ÉÃ)¤Ç¤¹¡£Ç¤°Õ¤ÎÃͤˤ·¤Æ¤¯¤À¤µ¤¤¡£
¤³¤ÎinitTimeÊÑ¿ô¤ò»ÈÍѤ¹¤ë¥¯¥é¥¹¤ÏGameData¥¯¥é¥¹Æâ¤Î¤ß¤Ç¤¹¤Î¤Çprivate½¤¾þ»Ò¤ÇÀë¸À¤·¤Æ¤¤¤Þ¤¹¤¬¡¢ÀßÄêÃͤò¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ÇÁàºî½ÐÍ褿Êý¤¬
¥Ç¥Ð¥Ã¥°¤Ê¤É¤â¤·¤ä¤¹¤¤¤¿¤á¡¢SerializeField°À¤ò¤Ä¤±¤Æ¡¢¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤Ç¤ÎÀßÄ꤬¹Ô¤¨¤ë¤è¤¦¤Ë¤·¤Æ¤¤¤Þ¤¹¡£
¡¡gameTimeÊÑ¿ô¤Ï¡¢¥²¡¼¥à¤¬»Ï¤Þ¤Ã¤Æ¤«¤é¤Î¼ÂºÝ¤Î»þ´Ö·Ð²á¤ò¬Äꤹ¤ëÃͤǤ¹¡£½é´üÃͤȤ·¤ÆinitTimeÊÑ¿ô¤ÎÃͤ¬Í¿¤¨¤é¤ì¤Æ¡¢»þ´Ö·Ð²á¤Ë¹ç¤ï¤»¤Æ¸º¾¯¤µ¤»¤Þ¤¹¡£
¤³¤ÎÃͤò¡Ú£±£¹¡Û¤ÇºîÀ®¤·¤¿ txtTimer ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎText¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ëɳ¤Å¤±¤ò¹Ô¤Ã¤Æ¥²¡¼¥à²èÌ̤λĤê»þ´Ö¤ò¹¹¿·¤·¤Þ¤¹¡£
¤³¤ÎÃͤÏpublic ½¤¾þ»Ò¤ÇÀë¸À¤·¤Æ¤¤¤Þ¤¹¤¬¡¢0¤Î¤Þ¤Þ¤Ë¤·¤Æ¤ª¤¤¤Æ¤¯¤À¤µ¤¤¡£¥²¡¼¥à¤¬³«»Ï¤µ¤ì¤ë¤ÈInitGame¥á¥½¥Ã¥É¤ÇÀßÄꤵ¤ì¤Þ¤¹¡£
¤Ç¤Ï¤Ê¤¼public½¤¾þ»Ò¤Ê¤Î¤«¤È¤¤¤¦¤È¡¢GamanManager¥¯¥é¥¹¡ÊGameData¤Ç¤Ï¤Ê¤¤³°Éô¤Î¥¯¥é¥¹¡Ë¤Ç»ÈÍѤ¹¤ë¤¿¤á¤Ç¤¹¡£
¡¡¤½¤ì¤Ç¤Ï½¤Àµ¤·¤Æ¤¤¤¤Þ¤¹¡£
GameData.cs
¡¡GameData¥¹¥¯¥ê¥×¥È¤Î½¤Àµ¤¬½ªÎ»¤·¤Þ¤·¤¿¤é¡¢GameData¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
InitTimeÊÑ¿ô¤Ë¤Ï 60 ¡¢GameTimeÊÑ¿ô¤Ë¤Ï 0 ¤¬¤Ï¤¤¤Ã¤Æ¤¤¤Þ¤¹¡£¤½¤Î¤Þ¤Þ¤ÇÌäÂꤢ¤ê¤Þ¤»¤ó¤Î¤Ç¡¢¥¢¥µ¥¤¥ó¾ðÊó¤¬É½¼¨¤µ¤ì¤Æ¤¤¤ë¤«¤ò³Îǧ¤·¤Æ¤ª¤¤Þ¤¹¡£
¤â¤·¤âInitTimeÊÑ¿ô¤ÎÃͤ¬ 0 ¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï 60 ¤òÆþÎϤ·¤Æ¤¯¤À¤µ¤¤¡£
¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü

¡¡UIManager¥¹¥¯¥ê¥×¥È¤Î½¤Àµ¤ò¹Ô¤¤¡¢»Ä¤ê»þ´Ö¤ÎÃͤò²èÌÌɽ¼¨¤Ç¤¤ë¤è¤¦¤Ë½èÍý¤òÄɲä·¤Þ¤¹¡£
GamanManager¥¹¥¯¥ê¥×¥È¤«¤é¸½ºß¤Î»Ä¤ê»þ´Ö¤ò¥á¥½¥Ã¥É¤Î°ú¿ô¤È¤·¤Æ¼õ¤±¼è¤ê¡¢¤½¤ì¤òText¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÍøÍѤ·¤Æ²èÌ̤λĤê»þ´Öɽ¼¨¤ò¹¹¿·¤·¤Þ¤¹¡£
¡¡¤½¤ì¤Ç¤Ï½¤Àµ¤·¤Æ¤¤¤¤Þ¤¹¡£
UIManager.cs
¡¡UIManager¥¹¥¯¥ê¥×¥È¤Î½¤Àµ¤¬½ªÎ»¤·¤¿¤é¡¢UIManager¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
¿·¤·¤¯Äɲä·¤¿txtTimerÊÑ¿ô¤Ø¤Î¥¢¥µ¥¤¥ó¤¬É½¼¨¤µ¤ì¤Þ¤¹¤Î¤Ç¡¢¤³¤Á¤é¤ËCanvasÆâ¤Ë¤¢¤ëtxtTimer¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤Æ¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£
¥¢¥µ¥¤¥ó²èÁü

¡¡¿·¤·¤¯Äɲä·¤¿UpdateDisplayGameTime¥á¥½¥Ã¥É¤Ç¤Ï°ú¿ô¤È¤·¤Æfloat·¿¤Ç»Ä¤ê»þ´Ö¤ÎÃͤò timeÊÑ¿ô¤È¤·¤Æ¼õ¤±¼è¤ê¤Þ¤¹¡£
¤³¤Î¤È¤²èÌÌɽ¼¨¤Ë¤Ï¾®¿ôÅÀ¤òɽ¼¨¤·¤¿¤¯¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢ToString¥á¥½¥Ã¥É¤Î°ú¿ô¤òÍøÍѤ·¤Æɽ¼¨¤¹¤ëÃͤòÀ°¿ô¤Î¤ß¤Ë¤·¤Þ¤¹¡£
¡¡txtTimer.text = time.ToString("F0");
¡¡ToString()¥á¥½¥Ã¥É¤Î°ú¿ô¤Ë "F0" ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£¤³¤Î¥á¥½¥Ã¥É¤Ï°ú¿ô¤Ë»ØÄꤷ¤¿Ê¸»úÎó¤Ë¤è¤Ã¤Æɽ¼¨ÊýË¡¤òÊѲ½¤µ¤»¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
º£²ó¤Î F0 ¤Ç¤Ï¡¢¾®¿ôÅÀ¤òɽ¼¨¤·¤Ê¤¤¤Çint·¿¤òstring·¿¤Ë¤¹¤ë½èÍý¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹¡£
F ¤Î¸å¤í¤Î¿ô»ú¤¬¾®¿ôÅÀ¤Î°Ì¤ò»ØÄꤷ¤Æ¤ª¤ê¡¢F0 ¤Î¾ì¹ç¤Ë¤Ï¾¯¿ôÅÀ¤Ê¤·¡¢F1 ¤Î¾ì¹ç¤Ë¤Ï¾®¿ôÅÀÂ裱°Ì¤Þ¤Çɽ¼¨¡¢¤È¤¤¤¦¤è¤¦¤Ëɽ¼¨ÊýË¡¤Î»ØÄ꤬²Äǽ¤Ç¤¹¡£
¡¡¼ÂºÝ¤Ë¤¤¤í¤¤¤í¤ÊÃͤˤ·¤Æ¾®¿ôÅÀɽ¼¨¤ò»î¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£
¡¡GameMamager¥¹¥¯¥ê¥×¥È¤Î½¤Àµ¤ò¹Ô¤¤¡¢Update¥á¥½¥Ã¥ÉÆâ¤Ë»þ´Ö·Ð²á¤Ë¹ç¤ï¤»¤Æ»Ä¤ê»þ´Ö¤ò¸º¾¯¤µ¤»¤ë½èÍý¤òÄɲä·¤Þ¤¹¡£
¤Þ¤¿¡¢UIManager¤ÎUpdateDisplayTime¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤·¤Æ¡¢²èÌ̤λĤê»þ´Ö¤Î¹¹¿·¤ò¹Ô¤ï¤»¤Þ¤¹¡£
¡¡½èÍý¤Îή¤ì¤Ï¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
£±¡¥GamanManager¤ÎUpdate¥á¥½¥Ã¥É¤ÇGameData¤ËÍÑ°Õ¤·¤¿gameTimeÊÑ¿ô¤ò¸º¾¯¤µ¤»¤ë ¡¡¡¡¡¡¢ £²¡¥UIManager¤ÎUpdateDisplayTime¥á¥½¥Ã¥É¤ÎÃæ¤Ç»Ä¤ê»þ´Ö¤òɽ¼¨¤·¤Æ¤¤¤ëText¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ËÂФ·¤Æ½èÍý¤ò¹Ô¤¤¡¢²èÌÌɽ¼¨¤òGameData¤ÎgameTimeÊÑ¿ô¤ÎÃͤ˹¹¿·¤¹¤ë ¡¡¡¡¡¡¢ £³¡¥GameData¤ÎgameTimeÊÑ¿ô¤ÎÃͤ¬0¤Ë¤Ê¤ë¤Þ¤Ç¡¢£±¤È£²¤ò·«¤êÊÖ¤¹¡£
¡¡¤Þ¤º¤Ï¶µºà¤ò¸«¤ëÁ°¤Ë¡¢¼«Ê¬¤Ç½èÍý¤ò¹Í¤¨¤Æ½ñ¤¤¤Æ¤ß¤ÆÆ°¤«¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
GameManager.cs
¡¡¥²¡¼¥à¤ò¼Â¹Ô¤·¤Æ¤ß¤Þ¤·¤ç¤¦¡£²èÌ̤˻Ĥê»þ´Ö¤¬initTimeÊÑ¿ô¤Ç»ØÄꤷ¤¿»þ´Ö¤Çɽ¼¨¤µ¤ì¡¢»þ´Ö·Ð²á¤Ë¤è¤Ã¤Æ»Ä¤ê»þ´Öɽ¼¨¤¬¹¹¿·¤µ¤ì¤Æ¸º¾¯¤·¤Æ¤¤¤±¤ÐÀµ¾ï¤ËÆ°ºî¤·¤Æ¤¤¤Þ¤¹¡£
¤Þ¤¿»Ä¤ê»þ´Ö¤ÎÃͤÏ0°Ê²¼¤Ë¤Ï¤Ê¤é¤Ê¤¤¤è¤¦¤Ë¤·¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢0¤Ç¹¹¿·¤¬»ß¤Þ¤ë¤«¤â³Îǧ¤ò¤·¤Þ¤¹(¥Ç¥Ð¥Ã¥°¤ÎºÝ¤Ë¤ÏinitTimeÊÑ¿ô¤ò¾¯¤Ê¤¤¿ô¤Ë¸º¤é¤·¤Þ¤·¤ç¤¦)
¡¡¥Ç¥Ð¥Ã¥°ÍѤ˻Ĥê»þ´Ö¤¬0¤Ë¤Ê¤Ã¤¿ºÝ¤Ë¤ÏConsole¤Ë¥²¡¼¥à½ªÎ»¤Î¥í¥°¤¬É½¼¨¤µ¤ì¤ë¤Ï¤º¤Ç¤¹¤Î¤Ç¡¢¤½¤Á¤é¤â¹ç¤ï¤»¤Æ³Îǧ¤ò¤·¤Þ¤¹¡£
¡¡¤â¤·¤â½èÍý¤¬¤¦¤Þ¤¯Æ°ºî¤·¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢¤É¤³¤ËÌäÂ꤬¤¢¤ë¤«ÀÚ¤êʬ¤±¤Æ¡¢½çÈ֤˹ͤ¨¤Æ¤¤¤¤Þ¤¹¡£
¡¡¤Þ¤¿»þ´Ö¤Î·×¬ÊýË¡¤Ë¤Ä¤¤¤Æ¤Ï¡¢Â¾¤Ë¤â¿§¡¹¤ÊÊýË¡¤¬¤¢¤ê¤Þ¤¹¡£
¤³¤ÎÊýË¡¤À¤±¤ËÊá¤é¤ï¤ì¤º¤Ë¡¢°Û¤Ê¤ëÊýË¡¤Î¼ÂÁõÊýË¡¤â¸¡Æ¤¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
- ¥«¥Æ¥´¥ê¡§
- ¿Ê³Ø/¥¹¥¯¡¼¥ë
- ¥×¥í¥°¥é¥ß¥ó¥°
¥³¥á¥ó¥È¤ò¤«¤¯