ºÇ½ª¹¹¿·¡§
orika_ex_miyako 2021ǯ02·î12Æü(¶â) 18:08:11ÍúÎò
¼ê½ç£±£°¡¡¡ÝŪµå¤ÎUIµ¡Ç½¤ò¼ÂÁõ¡Ý
£±£¹¡¥Åªµå¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎƬ¾å¤ËÂÎÎÏ¥²¡¼¥¸¤òºîÀ®¤·¤Æɽ¼¨¤¹¤ë £²£°¡¥Åªµå¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢ÂÎÎϤοôÃͤÈÂÎÎÏ¥²¡¼¥¸¤ò¥ê¥ó¥¯¤µ¤»¤Æ¥¢¥Ë¥áɽ¼¨¤¹¤ë
¡¡¿·¤·¤¤³Ø½¬ÆâÍƤϡ¢°Ê²¼¤ÎÄ̤ê¤Ç¤¹¡£
¡¦Slider¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎÀßÄê¤ÈÀâÌÀ ¡¦DoTween¤ÎÊä´Öµ¡Ç½¤È¼ÂÁõÎ㣡¡OnComplete¥á¥½¥Ã¥É¡¢Slider¤ÎValue¤ÎÃͤòDoTween¤ÇÀ©¸æ¤¹¤ë ¡¦¥¥ã¥¹¥È½èÍý ¡¦½èÍý¤ò½ñ¤¯¾ì½ê¤Ë¤Ä¤¤¤Æ
¡¡Åªµå¤ËÂÎÎϤ¬¼ÂÁõ¤µ¤ì¡¢Ç˲õ¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£¤³¤Î¤Þ¤Þ¤Ç¤âÌäÂê¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢
¥²¡¼¥àŪ¤Ë¤ÏŪ¤È¤Ê¤ëŨ¤ÎÂÎÎϤ¬²èÌ̾å¤Ë¸«¤¨¤Æ¤¤¤¿Êý¤¬¡¢¤½¤ÎÂÎÎϤòȽÃÇ´ð½à¤È¤·¡¢¼¡¤Ë¤É¤ÎŪµå¤òÁÀ¤ª¤¦¤«¤È¤¤¤¦ÀïάÀ¤¬À¸¤Þ¤ì¤Þ¤¹¡£
¡¡¤½¤³¤Ç¤³¤³¤Ç¤ÏŪµå¤ËÂÎÎÏ¥²¡¼¥¸¤òÄɲä·¡¢ÂÎÎϤÎÃͤÈƱ´ü¤·¤Æ¥²¡¼¥¸¤¬¸º¾¯¤¹¤ëµ¡Ç½¤ò¼ÂÁõ¤·¤Þ¤¹¡£
¡¡ÂÎÎÏ¥²¡¼¥¸¤Ë¤Ï¡¢Unity¤ÎUIµ¡Ç½¤Ç¤¢¤ë Slider ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò³èÍѤ·¤Þ¤¹¡£¤³¤Á¤é¤òÀßÄê¸å¡¢Åªµå¤Î¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ
ÂÎÎÏ¥²¡¼¥¸¤ÈÂÎÎϤÎÃͤȤòɳ¤Å¤±¤Æ¡¢ÂÎÎϤÎÃͤ˹ç¤ï¤»¤ÆÂÎÎÏ¥²¡¼¥¸¤â¸º¾¯¤·¤Æ¤¤¤¯¤è¤¦¤Ë¤¹¤ë½èÍý¤òÄɲä·¤Þ¤¹¡£
¡¡¤³¤Î¤è¤¦¤Ê¾ðÊ󤬤¢¤ë¤«¤Ê¤¤¤«¤Ç¥²¡¼¥àÀ¤¬Â礤¯ÊѤï¤Ã¤Æ¤¤Þ¤¹¤Î¤Ç¡¢UIÍ×ÁǤ⥲¡¼¥àÀ¤Î£±¤Ä¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤³¤È¤ò³Ø½¬¤·¤Æ¤¤¤¤Þ¤·¤ç¤¦¡£
¡¡EnemyBall¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò¥Ò¥¨¥é¥ë¥¡¼¤ÇÁªÂò¤·¤Æ±¦¥¯¥ê¥Ã¥¯¤ò¤·¤Æ¥á¥Ë¥å¡¼¤òɽ¼¨¤·¤Þ¤¹¡£
UI => Slider ¤òÁªÂò¤·¤Þ¤¹¡£Slider¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò»ý¤Ä¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬°ì¼°¡¢EnemyBall¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¤È¤·¤ÆÄɲ䵤ì¤Þ¤¹¡£
EnemyBall¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ò¥¨¥é¥ë¥¡¼²èÁü

¡¡Slider ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï»Ï¤á¤«¤éÊ£¿ô¤Î¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬»Ò¡¢Â¹¤È¤·¤ÆÉԿ路¤Æ¤¤¤Þ¤¹¡£
¤³¤Î¤¦¤Á¡¢Handle Slide Area ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤È¤½¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ë Handle ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ä¤¤¤Æ¤Ïº£²ó¤ÏÉÔÍפǤ¢¤ë¤¿¤á¡¢
ºï½ü¤·¤Æ°Ê²¼¤Î²èÁü¤Î¤è¤¦¤Ê¾õÂ֤ˤ·¤Æ¤¯¤À¤µ¤¤¡£
EnemyBall¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥Ò¥¨¥é¥ë¥¡¼²èÁü

¡¡EnemyBall¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ë¡¢Slider¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òÁªÂò¤·¤Æ¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
RectTransform¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÈSlider¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤Þ¤¹¡£Slider¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÏÊѹ¹²Õ½ê¤Ï¤¢¤ê¤Þ¤»¤ó¡£
¡¡RectTransform¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÎPosition¤ÎY¼´¤ÎÃͤòÁàºî¤·¤Æ¡¢Slider ¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤¬ EnemyBall¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ÎƬ¾å¤ËÍè¤ë°ÌÃÖ¤ËÄ´À°¤·¤Æ¤¯¤À¤µ¤¤¡£
¤Þ¤¿ Sidth ¤È Height ¤ÎÃͤ⡢Ūµå¤Î²èÁü¤ÎÂ礤µ¤Ë¹ç¤ï¤»¤ÆŬµ¹¤ÊÂ礤µ¤ËÄ´À°¤·¤Æ¤¯¤À¤µ¤¤¡£
²¼µ¤Î²èÁü¤Î°ÌÃÖ¤ò»²¹Í¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡£¤¢¤ë¤¤¤Ï¡¢Æ¬¾å¤ÎÂå¤ï¤ê¤Ë¸µ¤Ë Slider ¤òɽ¼¨¤·¤Æ夤¤Æ¤â¹½¤¤¤Þ¤»¤ó¡£
Slider¤ÎRectTransform²èÁü¡ÊƬ¾å¤ËÍè¤ë¤è¤¦¤Ë¡Ë

Slider¤ÎScene¥Ó¥å¡¼¤Ç¤Î²èÁü

¸µ¤Î¾ì¹ç¤ÎSlider¤ÎRectTransform²èÁü²èÁü

¸µ¤Î¾ì¹ç¤ÎSlider¤ÎScene¥Ó¥å¡¼¤Ç¤Î²èÁü

¡¡Slider¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ë¤Ä¤¤¤Æ¤ÏÊѹ¹¤¢¤ê¤Þ¤»¤ó¡£¡ÊHandle Slide Area¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤òºï½ü¤·¤Æ¤¤¤ë¤¿¤á·Ù¹ð¤¬½Ð¤Þ¤¹¤¬ÌäÂꤢ¤ê¤Þ¤»¤ó¡Ë
¤³¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î´ÉÍý¤·¤Æ¤¤¤ë Value ¤ÎÃͤòÁàºî¤¹¤ë¤³¤È¤Ç Slider(¥²¡¼¥¸)¤¬Æ°¤¤Þ¤¹¡£¤³¤³¤ò¥¹¥¯¥ê¥×¥È¤«¤éÊѹ¹¤¹¤ë¤è¤¦¤Ë¡¢¤¢¤È¤Çɳ¤Å¤±¤ò¹Ô¤¤¤Þ¤¹¡£
¡¡Value¤ÎÃÍ¤Ï 0 - 1 ¤Î´Ö¤Ç¤¹¡£0 ¤Î¤È¤¤Ï¥²¡¼¥¸¤Ï¶õ¤Î¾õÂÖ¡¢1 ¤¬Ëþ¥¿¥ó¤Î¾õÂ֤Ǥ¹¡£½é´üÃÍ¤Ï 0 ¤Î¤Þ¤Þ¤ÇÌäÂꤢ¤ê¤Þ¤»¤ó¡£
Slider

¸¡¾ÚÆ°²è¡¡Slider¤ÎValue
https://gyazo.com/0a896d4d70ab93a06a3877e6072f1bd5
¡¡Background¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Ë¤Ï¡¢RectTransform¥³¥ó¥Ý¡¼¥Í¥ó¥È¡¢Canvas Renderer ¥³¥ó¥Ý¡¼¥Í¥ó¥È¡¢Image¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¡¡RectTransform¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÏÊѹ¹²Õ½ê¤Ï¤¢¤ê¤Þ¤»¤ó¡£
¡¡Image¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ï¡¢Raycast Target ¤Î¥Á¥§¥Ã¥¯¤ò³°¤·¤Æ¤¯¤À¤µ¤¤¡£
¤Þ¤¿Color¤ÎAlpha¤ÎÃͤÏŬµ¹¤Ê¿ôÃͤËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£¤½¤Î¤Þ¤Þ¤Ç¤âÌäÂꤢ¤ê¤Þ¤»¤ó¡£
¤³¤Á¤é¤ÎSource Image¤Î¿§¤ä²èÁü¤¬¡¢¥²¡¼¥¸¤ÎÇØ·Ê¿§¤Ë¤Ê¤ê¤Þ¤¹¡£
Background¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü

¡¡Fill Area¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
RectTransform¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î¤ß¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢left ¤È Right ¤ÎÃͤò¤É¤Á¤é¤â 0 ¤ËÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£
¤³¤ÎÃͤ¬ 0 ¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¤È¥²¡¼¥¸¤¬´°Á´¤Ë±£¤ì¤Þ¤»¤ó¡£
Fill Area¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü

¡¡Fill¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
RectTransform¥³¥ó¥Ý¡¼¥Í¥ó¥È¡¢CanvasRenderer¥³¥ó¥Ý¡¼¥Í¥ó¥È¡¢Image¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬¥¢¥¿¥Ã¥Á¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
¡¡RectTransform¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î Width ¤ÎÃͤò 0 ¤ËÀßÄꤷ¤Æ¤¯¤À¤µ¤¤¡£¤³¤ì¤â Fill Area ¤ÈƱ¤¸Íýͳ¤Ç¤¹¡£
¡¡Image¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ç¤Ï¡¢Raycast Target ¤Î¥Á¥§¥Ã¥¯¤ò³°¤·¤Æ¤¯¤À¤µ¤¤¡£
Color ¤ÎÀßÄê¤Ç¥²¡¼¥¸¤Î¿§¤òÊѹ¹¤Ç¤¤Þ¤¹¤Î¤Ç¡¢Ç¤°Õ¤Î¿§¤äÆ©ÌÀÅÙ¤ËÊѹ¹¤·¤Æ¤¯¤À¤µ¤¤¡£
¤³¤Á¤é¤ÇÀßÄꤷ¤¿¿§¤¬Æ°¤¯¥²¡¼¥¸¤Î¿§¤Ë¤Ê¤ê¤Þ¤¹¡£
Source Image ¤Î²èÁü¤Ï½é´üÀßÄê¤Ç¤Ï¡¡UIImage ¤ËÀßÄꤵ¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢Ç¤°Õ¤Î²èÁü¤òÀßÄꤹ¤ë¤³¤È¤â½ÐÍè¤Þ¤¹¡£(º£²ó¤ÏÀßÄꤷ¤Æ¤¤¤Þ¤»¤ó)
Fill¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼²èÁü

¤½¤Î¤¿¤áÂÎÎϤÎÃͤ¬¸º¾¯¤·¤Æ¤â¡¢ÂÎÎÏ¥²¡¼¥¸¤ÏÆ°¤¤Þ¤»¤ó¡£
¡¡Åªµå¤Î¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤Æ¡¢ÂÎÎÏ¥²¡¼¥¸¤ò´ÉÍý¤·¤Æ¤¤¤ë Slider ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Îɳ¤Å¤±¤ò¹Ô¤¤¡¢
ÂÎÎϤÎÃͤ¬¹¹¿·¤µ¤ì¤ë¤¿¤Ó¤Ë¡¢ÂÎÎÏ¥²¡¼¥¸¤Ë¤âƱ¤¸¤è¤¦¤Ë¹¹¿·¤Î½èÍý¤òÆþ¤ì¤Æ¡¢ÁÐÊý¤¬¥ê¥ó¥¯¤·¤ÆÆ°ºî¤¹¤ë¤è¤¦¤Ë½èÍý¤ò¼ÂÁõ¤·¤Þ¤¹¡£
¡¡ÂÎÎÏ¥²¡¼¥¸¤ÏDoTween¤ò»È¤Ã¤ÆÆ°ºî¤µ¤»¤Þ¤¹¤Î¤Ç¥²¡¼¥¸¤¬¥¢¥Ë¥á±é½Ð(½ù¡¹¤Ë¸º¤ë)¤¹¤ë¤è¤¦¤Ë¤·¤Þ¤¹¡£
¡¡Àë¸À¥Õ¥£¡¼¥ë¥É¤ËÊÑ¿ô¤ò£²¤ÄÄɲä·¤Þ¤¹¡££±¤Ä¤ÏÂÎÎϤκÇÂçÃͤò´ÉÍý¤¹¤ë¤¿¤á¤Î¤â¤Î¡¢¤â¤¦£±¤Ä¤Ï Slider ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÂåÆþ¤¹¤ë¤¿¤á¤Î¤â¤Î¤Ç¤¹¡£
¡¡¿·¤·¤¯UpdateHpGauge¥á¥½¥Ã¥É¤ò£±¤ÄÄɲä·¡¢¤³¤Î¥á¥½¥Ã¥É¤Ë¤ÆÂÎÎÏ¥²¡¼¥¸¤Îɽ¼¨¤Î¹¹¿·¤ò¹Ô¤¤¤Þ¤¹¡£
¾¤Î¥á¥½¥Ã¥É¤«¤é¤Ï¡¢ÂÎÎÏ¥²¡¼¥¸¤Îɽ¼¨¹¹¿·¤ò¹Ô¤¤¥¿¥¤¥ß¥ó¥°¤Ç¡¢¤³¤ÎUpdateHpGauge¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤¹¤À¤±¤Ç¤è¤¤ºî¤ê¤Ë¤·¤Þ¤¹¡£
Ʊ¤¸½èÍý¤¬Ê£¿ô¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢¤³¤Î¤è¤¦¤Ë¥á¥½¥Ã¥É¤òºî¤Ã¤Æ½èÍý¤ò¤Þ¤È¤á¤Æ¤ª¤¯¤³¤È¤Ç¡¢Ìò³ä¤¬ÌÀ³Î²½¡¦Ê¬Ã´²½¤µ¤ì¤Æ¤Þ¤¹¡£Æ±¤¸½èÍý¤ò½ñ¤¯É¬Íפâ¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
¡¡¤½¤·¤ÆStart¥á¥½¥Ã¥É¤ÈOnCollisionEnter2D¥á¥½¥Ã¥É¤ò½¤Àµ¤·¤Æ¡¢Àè¤Û¤ÉºîÀ®¤·¤¿UpdateHpGauge¥á¥½¥Ã¥É¤ò¸Æ¤Ó½Ð¤·¤ÆÂÎÎÏ¥²¡¼¥¸¤Î¹¹¿·¤ò¹Ô¤¤¤Þ¤¹¡£
EnemyBall.cs
¡¡¥¹¥¯¥ê¥×¥È¤ò½¤Àµ¤·¤¿¤é¡¢EnemyBall¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î¥¤¥ó¥¹¥Ú¥¯¥¿¡¼¤ò³Îǧ¤·¤Þ¤¹¡£
¿·¤·¤¯Äɲä·¤¿ÊÑ¿ô¤Î¥¢¥µ¥¤¥ó¤¬¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¤Î¤Ç¡¢¥Ò¥¨¥é¥ë¥¡¼¤Ë¤¢¤ëEnemyBall¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤ÎSlider¥²¡¼¥à¥ª¥Ö¥¸¥§¥¯¥È¤ò
¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤·¤¿¥¢¥µ¥¤¥ó¤·¤Þ¤¹¡£¤³¤ì¤Çɳ¤Å¤±¤¬½ÐÍè¤Þ¤·¤¿¡£
¼ê½çÆ°²è¡¡Slider¤Î¥¢¥µ¥¤¥ó
https://gyazo.com/3cdf02aa97f6c88b893f5a452d2caa92
¡¡¡¡sequence.Join(transform.DOScale(startScale, 0.15f).SetEase(Ease.InCirc).OnComplete(() => { // ÂÎÎϤκÇÂçÃͤòÂåÆþ maxHp = hp; // ÂÎÎÏ¥²¡¼¥¸¤Îɽ¼¨¤ò¹¹¿· => Ūµå¤¬½Ð¸½¤·¤Æ¤«¤é¥²¡¼¥¸¤¬½ù¡¹¤ËËþ¥¿¥ó¤Ë¤Ê¤ë¥¢¥Ë¥á±é½Ð UpdateHpGauge(); }));
½èÍý¤ò³¤±¤ë¾ì¹ç¤Ë¤Ï¡¢Á°¤Î¥á¥½¥Ã¥É¤Î¸å¤Ë¥Ô¥ê¥ª¥É(¥É¥Ã¥È)¤ò½ñ¤¯¤³¤È¤Ç¡¢¼¡¤Î¥á¥½¥Ã¥É¤ò½ñ¤¯¤³¤È¤¬²Äǽ¤Ç¤¹¡£¤³¤¦¤¤¤Ã¤¿½èÍý¤ò¥á¥½¥Ã¥É¥Á¥§¡¼¥ó¤È¤¤¤¤¤Þ¤¹¡£
¡¡SetEase¥á¥½¥Ã¥É¤Ç¤ÏEase¤È¤¤¤¦¥¢¥Ë¥á¡¼¥·¥ç¥ó¤µ¤»¤ëºÝ¤Î¥Ñ¥¿¡¼¥ó¤òÊѹ¹¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£Ease¤Ïenum·¿¤ÇÀßÄꤵ¤ì¤Æ¤ª¤ê¡¢Ease.¥¿¥¤¥× ¤Î½ñ¼°¤Çµ½Ò¤·¤Þ¤¹¡£
Èó¾ï¤Ë¿¤¯¤Î¼ïÎब¤¢¤ê¤Þ¤¹¡£º£²ó¤Ï Ease.InCirc ¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡£
¡¡
»²¹Í¥µ¥¤¥È¡¡
Á´Ease¤Î¼ïÎब¤Þ¤È¤á¤é¤ì¤Æ¤ª¤ê¡¢Èó¾ï¤Ëʬ¤«¤ê¤ä¤¹¤¤¤Ç¤¹¡£
¥²¡¼¥àUI¥Í¥Ã¥ÈÍÍ
DOTween¤Î¥¤¡¼¥¸¥ó¥°°ìÍ÷¤òÀ¤³¦°ì¾Ü¤·¤¯&ʬ¤«¤ê¤ä¤¹¤¯ÀâÌÀ¤¹¤ë
https://game-ui.net/?p=835
¡¡OnComplete¥á¥½¥Ã¥É¤â¾¤ÎDoTween¥á¥½¥Ã¥É¤ËÉտ魯¤ë½èÍý¤Ç¤¹¡£¤³¤Î½èÍý¤Ï¥³¡¼¥ë¥Ð¥Ã¥¯½èÍý¤Ë¤Ê¤Ã¤Æ¤ª¤ê¡¢°ì½ï¤Ë½èÍý¤·¤Æ¤¤¤ë¥á¥¤¥ó¤Î¥á¥½¥Ã¥É¤Î½èÍý¤Î½ªÎ»¤òÂÔ¤Á¤Þ¤¹¡£
¤½¤Î½èÍý¤¬½ªÎ»¤·¤Æ¤«¤é¡¢¤³¤ÎOnComplete¥á¥½¥Ã¥É¤ÎÃæ¤Ëµ½Ò¤·¤¿½èÍý¤ò¼Â¹Ô¤·¤Æ¤¯¤ì¤Þ¤¹¡£
¡¡º£²ó¤Ïtransform.DOScale¥á¥½¥Ã¥É¤Ë¤è¤Ã¤Æ¸µ¤ÎÂ礤µ¤ËŪµå¤¬Ìá¤Ã¤¿¸å¤Ë¡¢OnComplete¥á¥½¥Ã¥É¤Î½èÍý¤¬¼Â¹Ô¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢Åªµå¤¬²èÌ̤Ëɽ¼¨¤µ¤ì½ª¤ï¤ë¤Î¤òÂԤäƤ«¤é¡¢ÂÎÎÏ¥²¡¼¥¸¤¬Æ°¤¤¤ÆËþ¥¿¥ó¤Ë¤Ê¤ë¡¢¤È¤¤¤¦À߷פˤʤäƤ¤¤Þ¤¹¡£
¡¡DoValue¥á¥½¥Ã¥É¤Ï Slider ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ËÂФ·¤Æ»ÈÍѤǤ¤ë¥á¥½¥Ã¥É¤Ç¤¹¡£
¤½¤Î̾Á°¤ÎÄ̤ꡢSlider¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Î»ý¤Ä Value ¤ÎÃͤòÊä´Ö½èÍý¤ò¹Ô¤Ã¤Æ¤¯¤ì¤Þ¤¹¡£
¡¡Âè1°ú¿ô¤Ë¤ÏºÇ½ªÅª¤Ê Value ¤ÎÃͤòÆþ¤ì¤Þ¤¹¡£¤³¤ÎÃͤËÂФ·¤Æ¡¢Âè2°ú¿ô¤Î»þ´Ö¤ò¤«¤±¤ÆÃͤòÊѹ¹¤·¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢·×»»·ë²Ì¤ÎÃͤˤʤë¤Þ¤Ç¤Ë 0.5É䫤±¤Æ Value ¤ÎÃͤòÊѹ¹¤·¤Æ¤¤¤Þ¤¹¡£
hpSlider.DOValue((float)hp / maxHp), 0.5f);
¡¡º£²ó¤Î¥±¡¼¥¹¤Ç¤Ï¡¢ hp ¤ÎÃͤò maxHp ¤Ç³ä¤Ã¤Æ float·¿¤Ë¥¥ã¥¹¥È(·¿ÊÑ´¹)¤·¤¿ÃÍ(0.0f - 1.0f)¤ò Value ¤ÎÃͤȤ·¤Æ¤¤¤Þ¤¹¡£
Value ¤ÎÃÍ¤Ï float ·¿¤Ç¤¹¤Î¤Ç¡¢int·¿¤Ç¤¢¤ë hp ¤È maxHp ¤Î·×»»·ë²Ì¤Ï¤½¤Î¤Þ¤Þ¤Ç¤Ï»È¤¨¤Ê¤¤¤¿¤á¡¢¤³¤³¤Ç¤Ï¥¥ã¥¹¥È¤ò¹Ô¤Ã¤Æ¤¤¤Þ¤¹¡£
¡¡¥¥ã¥¹¥È¤È¤Ï·¿ÊÑ´¹¤Î½èÍý¤Î¤³¤È¤Ç¤¹¡£º£²ó¤Ïint·¿¤òÊÑ´¹¤·¤Æ¤¤¤Þ¤¹¤¬¡¢Â¾¤Î·¿¤Ç¤ÎÊÑ´¹¤â¡¢·¿Æ±»Î¤ÎÊÑ´¹½èÍý¤Ï¥¥ã¥¹¥È¤È¸Æ¤Ð¤ì¤Þ¤¹¡£
¾¤Ë¤â¤è¤¯»ÈÍѤ·¤Æ¤¤¤ë½èÍý¤¬¤¢¤ê¤Þ¤¹¡£¤½¤ì¤¬ToString¥á¥½¥Ã¥É¤Ç¤¹¡£¤³¤ì¤Ïint·¿¤Ê¤É¤Î¿ô»ú¤ò°·¤¦·¿¤òʸ»úÎó¤Ç¤¢¤ëstring¤ËÊÑ´¹¤·¤Æ¤¤¤ë½èÍý¤Ç¤¹¡£
¡¡¥²¡¼¥à¤ò¼Â¹Ô¤·¤ÆÆ°ºî¤ò³Îǧ¤·¤Þ¤¹¡£Åªµå¤¬½Ð¸½¤·¤¿¤¢¤È¤ËÂÎÎÏ¥²¡¼¥¸¤¬¶õ¤«¤éËþ¥¿¥ó¤Ë¤Ê¤ë¥¢¥Ë¥á±é½Ð¤¬Äɲ䵤ì¤Æ¤¤¤ì¤ÐÀ®¸ù¤Ç¤¹¡£
¤Þ¤¿¡¢¼êµå¤ÈÀÜ¿¨¤·¤¿ºÝ¤Ë¤âÂÎÎÏ¥²¡¼¥¸¤¬¥¢¥Ë¥á¤·¤Ê¤¬¤éÆ°¤¤¤Æ¤¤¤±¤ÐÌäÂꤢ¤ê¤Þ¤»¤ó¡£Î¾Êý³Îǧ¤·¤Þ¤·¤ç¤¦¡£
¼Â¹ÔÆ°²è¡¡¡Åªµå¤¬½Ð¸½¤·¤Æ¤«¤é¡¢ÂÎÎÏ¥²¡¼¥¸¤¬¥¢¥Ë¥á±é½Ð¤·¤Ê¤¬¤é¶õ¤«¤éËþ¥¿¥ó¤Ë¤Ê¤ë
https://gyazo.com/04b729f1b1a86a13df175e52e677c3db
¼Â¹ÔÆ°²è¢¡¡¼êµå¤ÈÀÜ¿¨¤·¤¿ºÝ¤ËÂÎÎÏ¥²¡¼¥¸¤¬¥¢¥Ë¥á¤·¤Ê¤¬¤é¸º¾¯¤¹¤ë
https://gyazo.com/bc71d7a99d8b054244fb179263ed96f9
¡¡OnComplete¥á¥½¥Ã¥ÉÆâ¤Ëµ½Ò¤·¤Æ¤¤¤ë½èÍý¤ò¡¢OnComplete¥á¥½¥Ã¥É¤«¤é½Ð¤·¤Æ¡¢¼¡¤Î¹Ô¤Ë½ñ¤¤¤Æ¤ß¤Þ¤·¤ç¤¦¡£
Ũ¤ÎÂÎÎÏ¥²¡¼¥¸¤Î¥¢¥Ë¥á±é½Ð¤Ë°ã¤¤¤¬½Ð¤Þ¤¹¡£
¡¡
¡¡¡¡sequence.Join(transform.DOScale(startScale, 0.15f).SetEase(Ease.InCirc).OnComplete(() => { // ÂÎÎϤκÇÂçÃͤòÂåÆþ maxHp = hp; // ÂÎÎÏ¥²¡¼¥¸¤Îɽ¼¨¤ò¹¹¿· => Ūµå¤¬½Ð¸½¤·¤Æ¤«¤é¥²¡¼¥¸¤¬½ù¡¹¤ËËþ¥¿¥ó¤Ë¤Ê¤ë¥¢¥Ë¥á±é½Ð UpdateHpGauge(); ¡¡¡¡}));
¡¡½èÍý¤Î½ñ¤¯¾ì½ê¤òÊѹ¹¤¹¤ë¡¡¢
¡¡¡¡sequence.Join(transform.DOScale(startScale, 0.15f).SetEase(Ease.InCirc)); // ÂÎÎϤκÇÂçÃͤòÂåÆþ maxHp = hp; // ÂÎÎÏ¥²¡¼¥¸¤Îɽ¼¨¤ò¹¹¿· => Ūµå¤¬½Ð¸½¤·¤Æ¤«¤é¥²¡¼¥¸¤¬½ù¡¹¤ËËþ¥¿¥ó¤Ë¤Ê¤ë¥¢¥Ë¥á±é½Ð UpdateHpGauge();
¸¡¾ÚÆ°²è¡¡½èÍý¤Î½ñ¤¯¾ì½ê¤òÊѤ¨¤ë¤È¡©
https://gyazo.com/d502512106d174e55afeeff23cb8f80f
¡¡½èÍý¤ò½ñ¤¯¾ì½ê¤òÊѤ¨¤ë¤È¡¢Åªµå¤¬½Ð¸½¤¹¤ë¤È¤¹¤Ç¤ËÂÎÎÏ¥²¡¼¥¸¤¬Ëþ¥¿¥ó¤Î¾õÂ֤Ǥ¹¡£Àè¤Û¤É¤È¤ÏµóÆ°¤¬°Û¤Ê¤ê¤Þ¤¹¡£
¡¡¤³¤ì¤Ï²¿¸Î¤Ç¤·¤ç¤¦¤«¡£
¡¡OnComplete¥á¥½¥Ã¥É¤Ç¤Ï¡¢Join¥á¥½¥Ã¥ÉÆâ¤ÎDoTween¤Î½èÍý¤¬½ªÎ»¤¹¤ë¤Î¤òÂԤäƤ«¤é¡¢OnComplete¥á¥½¥Ã¥ÉÆâ¤Ë¤¢¤ë½èÍý¤ò¼Â¹Ô¤·¤Æ¤¤¤Þ¤¹¡£
¤Ä¤Þ¤ê¡¢Åªµå¤¬²èÌ̤˽и½¤¹¤ë¤Î¤òÂԤäơ¢ÂÎÎÏ¥²¡¼¥¸¤Îɽ¼¨¤ò¹¹¿·¤·¤Æ¤¤¤Þ¤¹¡£¤½¤Î¤¿¤á¡¢Åªµå¤¬½Ð¸½¤·¤Æ¤«¤éÂÎÎÏ¥²¡¼¥¸¤¬Æ°¤¤Þ¤¹¡£
¡¡½ñ¤´¹¤¨¤¿½èÍý¤Ë¤Ï¡¢¤³¤Î¡Ö½èÍý¤¬½ª¤ï¤ë¤Þ¤ÇÂԤġפȤ¤¤¦½èÍý¤¬¤¢¤ê¤Þ¤»¤ó¡£
¤Ä¤Þ¤ê¡¢Join¥á¥½¥Ã¥É¤¬¼Â¹Ô¤µ¤ì¤¿¤¢¤È¤Ï¡¢¤¹¤°¤ËÂÎÎÏ¥²¡¼¥¸¤Îɽ¼¨¤ò¹¹¿·¤¹¤ë½èÍý¤ò¹Ô¤¤¤Þ¤¹¡£
¤½¤Î¤¿¤á¡¢Åªµå¤¬½Ð¸½¤¹¤ëº¢¤Ë¤ÏÂÎÎÏ¥²¡¼¥¸¤¬Æ°¤½ª¤ï¤Ã¤Æ¤¤¤Æ¡¢¤¹¤Ç¤ËËþ¥¿¥ó¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤¿¤á¤Ç¤¹¡£
¡¡
¡¡¤³¤Î¤è¤¦¤Ë¡¢Æ±¤¸½èÍý¤Ç¤¢¤Ã¤Æ¤â¡¢µ½Ò¤¹¤ë¾ì½ê¤ÎÆâÍƤˤè¤Ã¤ÆÂ礤¯½èÍý¤¬°Û¤Ê¤Ã¤Æ¤¤Þ¤¹¡£
¼«Ê¬¤¬¹Í¤¨¤Æ¤¤¤ë½èÍý¤¬¤É¤Î¤è¤¦¤Ê½èÍý¤Ç¤¢¤ë¤«¤òÇÄ°®¤·¤Æ¡¢¤½¤ì¤ò¤É¤³¤Ë½ñ¤¯¤Ù¤¤«¹Í¤¨¡¢Å¬Àڤʾì½ê¤Ë¥³¡¼¥É¤ò½ñ¤¤³¤ó¤Ç¤¤¤¯¤³¤È¤¬ÂçÀڤˤʤê¤Þ¤¹¡£¡¡
¡¡
¡¡°Ê¾å¤Ç¤³¤Î¼ê½ç¤Ï½ªÎ»¤Ç¤¹¡£
- ¥«¥Æ¥´¥ê¡§
- ¿Ê³Ø/¥¹¥¯¡¼¥ë
- ¥×¥í¥°¥é¥ß¥ó¥°
¥³¥á¥ó¥È¤ò¤«¤¯