a
@@ -59,9 +59,9 @@ | ||
59 | 59 | } |
60 | 60 | // 横方向に拡大縮小 |
61 | 61 | if (nWidth >= nImageWidth) { |
62 | - DrawExtendGraph(nX, nY, | |
63 | - (int)(nX + nWidth * fRate), | |
64 | - (int)(nY + nHeight), nImageHandle, TRUE); | |
62 | + DrawExtendGraph(nX-1, nY-1, | |
63 | + (int)(nX + nWidth * fRate+1), | |
64 | + (int)(nY + nHeight+1), nImageHandle, TRUE); | |
65 | 65 | } |
66 | 66 | else { |
67 | 67 | // 元のサイズ |
@@ -70,8 +70,8 @@ | ||
70 | 70 | GetGraphSize(nImageHandle, &nW, &nH); |
71 | 71 | // 短い |
72 | 72 | // ... 分割表示 |
73 | - DrawRectExtendGraph(nX, nY, | |
74 | - nX+(int)((nWidth*fRate + 1)), nY+nHeight, | |
73 | + DrawRectExtendGraph(nX-1, nY-1, | |
74 | + nX+(int)((nWidth*fRate + 1)), nY+nHeight+1, | |
75 | 75 | 0, 0, nW, nH, nImageHandle, TRUE); |
76 | 76 | //0, 0, |
77 | 77 | //(int)(nWidth * fRate + 1), |
@@ -91,7 +91,8 @@ | ||
91 | 91 | float fRate, int nBaseR, int nBaseG, int nBaseB, |
92 | 92 | int nBarR, int nBarG, int nBarB, |
93 | 93 | HPLParamBar& paramBar, int nAlpha, HPLSprite* lpSprite, bool bIsAnimation, |
94 | - HPLDXBasic& basic, float fIconZoom) | |
94 | + HPLDXBasic& basic, float fIconZoom, int nIconDeltaY, | |
95 | + bool bIsIconLeftSide, int nCoverIconSeqID) | |
95 | 96 | { |
96 | 97 | MinervaBarSeqIDSet* lpSeqIDSet = this->getMinervaBarSeqIDSet(paramBar.m_nParamBarType); |
97 | 98 | int nSeqID = -1; |
@@ -173,6 +174,11 @@ | ||
173 | 174 | // Icon |
174 | 175 | if (nIconSeqID >= 0) { |
175 | 176 | HPLSequence* lpIconSeq = lpSprite->getSequence(nIconSeqID,FaceDirection::LEFT); |
177 | + // 被せ | |
178 | + HPLSequence* lpCoverSeq = NULL; | |
179 | + if (nCoverIconSeqID >= 0) { | |
180 | + lpSprite->getSequence(nCoverIconSeqID, FaceDirection::LEFT); | |
181 | + } | |
176 | 182 | if (!lpIconSeq) { |
177 | 183 | ASSERT_IT_NULL(lpIconSeq); |
178 | 184 | } |
@@ -183,10 +189,23 @@ | ||
183 | 189 | } |
184 | 190 | else { |
185 | 191 | HPLRect rSrcRect = lpInfo->srcRect; |
192 | + int nCenX = nX + nWidth + nThickness * 2 + (rSrcRect.getWidth() / 2)* fIconZoom; | |
193 | + if (bIsIconLeftSide) { | |
194 | + nCenX = nX - nThickness - rSrcRect.getWidth() / 2 * fIconZoom; | |
195 | + } | |
196 | + int nCenY = nY - nThickness + (rSrcRect.getHeight() / 2)*fIconZoom + nIconDeltaY; | |
186 | 197 | basic.m_Graphics.draw( |
187 | - nX + nWidth + nThickness * 2 + rSrcRect.getWidth() / 2 + fIconZoom, | |
188 | - nY - nThickness + (rSrcRect.getHeight() / 2 - 5)*fIconZoom, | |
198 | + nCenX, | |
199 | + nCenY, | |
189 | 200 | lpIconSeq, FaceDirection::LEFT, 0, fIconZoom, nAlpha, DX_BLENDMODE_ALPHA); |
201 | + | |
202 | + // cover | |
203 | + if (lpCoverSeq) { | |
204 | + basic.m_Graphics.draw( | |
205 | + nCenX, | |
206 | + nCenY, | |
207 | + lpCoverSeq, FaceDirection::LEFT, 0, fIconZoom, nAlpha, DX_BLENDMODE_ALPHA); | |
208 | + } | |
190 | 209 | } |
191 | 210 | } |
192 | 211 | } |
@@ -250,7 +250,8 @@ | ||
250 | 250 | float fRate, int nBaseR, int nBaseG, int nBaseB, |
251 | 251 | int nBarR, int nBarG, int nBarB, |
252 | 252 | HPLParamBar& paramBar, int nAlpha, HPLSprite* lpSprite, bool bIsAnimation, |
253 | - HPLDXBasic& basic, float fIconZoom); | |
253 | + HPLDXBasic& basic, float fIconZoom, int nIconDeltaY, | |
254 | + bool bIsIconLeftSide,int nCoverIconSeqID = -1); | |
254 | 255 | |
255 | 256 | /** SA操作メッセージを取得 |
256 | 257 | * @param[out] vecTexts 追加する形で設定 |