¡¡¥²¡¼¥à¤ò¼Â¹Ô¤·¡¢Slider ¤Î¥µ¥¤¥º¤¬ EnemyBase ¤Î SliderWidthSize ¤ÇÀßÄꤷ¤¿ÃͤËÊѹ¹¤È¤Ê¤ê¡¢
¤«¤Ä¡¢HorizontalLayoutGroup Æâ¤Î°ÌÃÖ¤¬¼«Æ°¤Ç¹¹¿·¤µ¤ì¤Æ¡¢¼êÆ°¤ÇÀßÄꤷ¤¿¾ì¹ç¤ÈƱ¤¸µóÆ°¤Ë¤Ê¤Ã¤Æ¤¤¤ì¤ÐÀ©¸æÀ®¸ù¤Ç¤¹¡£
¡¡½èÍý¤Î¥Ý¥¤¥ó¥È¤Ï HpSlider Æâ¤Î SetSliderSize ¥á¥½¥Ã¥É¤ÎÆâÍƤǤ¹¡£
/// <summary>
/// Slider ¤Î¥µ¥¤¥º¤òÀßÄê
/// HorizontalLayoutGroup Æâ¤Ë Slider ¤òÍøÍѤ·¤Æ¤¤¤ë¤È¥µ¥¤¥º¤òÊѤ¨¤¿¤À¤±¤Ç¤Ï²èÌ̤ËÈ¿±Ç¤µ¤ì¤Ê¤¤
/// ¤½¤Î¤¿¤á override ¤·¤Æ¹¹¿·ÊýË¡¤òÊѤ¨¤Æ¤¤¤ë
/// </summary>
/// <param name="guageLength"></param>
public override void SetSliderSize(float guageLength) {
// Canvas Æâ¤Îɽ¼¨¹¹¿·
Canvas.ForceUpdateCanvases();
// SizeDelta ¼èÆÀ¤·¡¢Size ÍѤÎÃͤòÀßÄê
RectTransform sliderRect = slider.transform as RectTransform;
Vector2 size = new(sliderRect.sizeDelta.x * guageLength, sliderRect.sizeDelta.y);
// SizeDelta ¹¹¿·(Scale ¤Ç¥µ¥¤¥ºÊѤ¨¤ë¤È 9 slice ¤¬Íø¤«¤Ê¤¤)
(slider.transform as RectTransform).sizeDelta = size;
//Debug.Log($"Size {(slider.transform as RectTransform).sizeDelta.x} : {(slider.transform as RectTransform).sizeDelta.y}");
// ¥ì¥¤¥¢¥¦¥ÈÆâ¤ÎÆþÎÏÃͤòºÆ·×»»
horizontalLayoutGroup.CalculateLayoutInputHorizontal();
// ¥ì¥¤¥¢¥¦¥ÈºÆÀßÄê(ɽ¼¨¹¹¿·)
horizontalLayoutGroup.SetLayoutHorizontal();
}
¡¡¡¤Þ¤ººÇ½é¤Ë Canvas.ForceUpdateCanvases()¤¬¸Æ¤Ó½Ð¤µ¤ì¡¢¥¥ã¥ó¥Ð¥¹¤È¤½¤Î»ÒÍ×ÁǤ¬¹¹¿·¤µ¤ì¤Þ¤¹¡£
Ä̾ï Canvas Æâ¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Îɽ¼¨¹¹¿·¤Ï 1¥Õ¥ì¡¼¥à¤Þ¤¿¤°É¬Íפ¬¤¢¤ê¤Þ¤¹¤¬¡¢¤³¤Î¥á¥½¥Ã¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ç¨ºÂ¤Ë¹¹¿·¤µ¤ì¤Þ¤¹¡£
¡¡¢Slider ¤Î SizeDelta ¤ò¼èÆÀ¤·¡¢·×»»¤·¤¿·ë²Ì¤òÂåÆþ¤¹¤ë¤³¤È¤Ç¥¹¥é¥¤¥À¡¼¤Î¥µ¥¤¥º¤¬Êѹ¹¤µ¤ì¤Þ¤¹¡£
RectTransfrom ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ï GetComponent ¥á¥½¥Ã¥É¤òÍøÍѤ»¤º¤È¤â¡¢transform ¤ËÂФ·¤Æ as RectTransfrom ¤ò¼Â¹Ô¤¹¤ë¤³¤È¤Ç¼èÆÀ²Äǽ¤Ç¤¹¡£
Scale ¤Ç¤Ï¤Ê¤¯ SizeDelta ¤Î Width ¤ËÂФ·¤Æ¥µ¥¤¥º¤ÎÊѹ¹¤ò¹Ô¤¦Éôʬ¤¬½ÅÍפǤ¹¡£¤½¤¦¤¹¤ë¤³¤È¤Ç 9 Slice µ¡Ç½¤¬Í¸ú¤ËƯ¤¤Þ¤¹¡£
¡¡£horizontalLayoutGroup?.CalculateLayoutInputHorizontal()¤¬¸Æ¤Ó½Ð¤µ¤ì¡¢¿åÊ¿Êý¸þ¤Î¥ì¥¤¥¢¥¦¥È¤ÎÆþÎϤ¬ºÆ·×»»¤µ¤ì¤Þ¤¹¡£
¤³¤ì¤Ë¤è¤ê¡¢HorizontalLayoutGroup Æâ¤Î Slider ¤Î¥µ¥¤¥º¤È¡¢¤½¤Î»Ò¥ª¥Ö¥¸¥§¥¯¥È¤Î¥µ¥¤¥º¤¬ºÆ·×»»¤µ¤ì¤Þ¤¹¡£
¡¡¤ºÇ¸å¤Ë horizontalLayoutGroup?.SetLayoutHorizontal()¤¬¸Æ¤Ó½Ð¤µ¤ì¡¢¿åÊ¿Êý¸þ¤Î¥ì¥¤¥¢¥¦¥È¤¬ºÆÀßÄꤵ¤ì¡¢UIÍ×ÁǤ¬ÉÁ²è¤µ¤ì¤ë¹¹¿·¤¬¹Ô¤ï¤ì¤Þ¤¹¡£
¡¡°Ê¾å¤Î½èÍý¤ÎÆâÍƤˤè¤ê¡¢¤³¤Î½ç½ø¤Ç½èÍý¤ò¹Ô¤¦¤³¤È¤Ç¡¢UIÍ×ÁǤΥµ¥¤¥ºÊѹ¹¤¬Àµ¾ï¤Ë²èÌ̤ËÈ¿±Ç¤µ¤ì¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£
¡¡ÆÃ¤Ë LayoutGroup ÍøÍÑ»þ¤Î Slider ¤Î¥µ¥¤¥ºÆ°Åª¤Ê¹¹¿·¤Ë¤ª¤¤¤Æ¤Ï¡¢¡¢£¤¤Î½èÍý¤È¡¢¤½¤Î¼Â¹Ô¤¹¤ë½çÈÖ¤¬½ÅÍפǤ¹¡£
Slider ¤Ë¤Ï»Ò¥ª¥Ö¥¸¥§¥¯¥È¤¬¤¢¤ë¤¿¤á¡¢¤³¤Î½èÍý¤òŬÀڤʽçÈ֤Ǽ¹Ԥ¹¤ë¤³¤È¤Ë¤è¤ê¡¢LayoutGroup Æâ¤Î³Æ¥ª¥Ö¥¸¥§¥¯¥È¤Î°ÌÃÖ¤òưŪ¤Ë¼«Æ°Ä´À°¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡£