Sziasztok. Unalmamban elkezdtem olyan rendszereket próbálgatni, amiket még nem ismerek, így hát beraktam az alábbi apróságot: https://www.metin2downloads.to/thread/485-pyc-colored-slot-highlights/
Viszont indító fordításnál felbukkan néhány hiba, pedig minden a leírás alapján lett berakva. ???
9>..\..\source\EterPythonLib\PythonSlotWindow.cpp(1124): error C2451: conditional expression of type 'UI::CAniImageBox' is illegal
9> No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
9>..\..\source\EterPythonLib\PythonSlotWindow.cpp(1128): error C2819: type 'UI::CAniImageBox' does not have an overloaded member 'operator ->'
9> c:\vs\source\eterpythonlib\PythonWindow.h(399) : see declaration of 'UI::CAniImageBox'
9> did you intend to use '.' instead?
9>..\..\source\EterPythonLib\PythonSlotWindow.cpp(1128): error C2232: '->UI::CWindow::SetPosition' : left operand has 'class' type, use '.'
9>..\..\source\EterPythonLib\PythonSlotWindow.cpp(1129): error C2819: type 'UI::CAniImageBox' does not have an overloaded member 'operator ->'
9> c:\vs\source\eterpythonlib\PythonWindow.h(399) : see declaration of 'UI::CAniImageBox'
9> did you intend to use '.' instead?
9>..\..\source\EterPythonLib\PythonSlotWindow.cpp(1129): error C2232: '->UI::CAniImageBox::SetDiffuseColorByType' : left operand has 'class' type, use '.'
9>..\..\source\EterPythonLib\PythonSlotWindow.cpp(1130): error C2819: type 'UI::CAniImageBox' does not have an overloaded member 'operator ->'
9> c:\vs\source\eterpythonlib\PythonWindow.h(399) : see declaration of 'UI::CAniImageBox'
9> did you intend to use '.' instead?
9>..\..\source\EterPythonLib\PythonSlotWindow.cpp(1130): error C2232: '->UI::CWindow::Render' : left operand has 'class' type, use '.'
A kódrészlet amire a hibát írja:
if (rSlot.bActive)
{
BYTE byItemSize = rSlot.byyPlacedItemSize - 1;
if (byItemSize < 0 || byItemSize > 2)
byItemSize = 0;
if (m_pSlotActiveEffect[byItemSize])
{
int ix = m_rect.left + rSlot.ixPosition;
int iy = m_rect.top + rSlot.iyPosition;
m_pSlotActiveEffect[byItemSize]->SetPosition(ix, iy);
m_pSlotActiveEffect[byItemSize]->SetDiffuseColorByType(rSlot.byToggleColorType);
m_pSlotActiveEffect[byItemSize]->Render();
}
}
Illetve még erről is megejt valamit, de azt nem írja hibának:
class CAniImageBox : public CWindow
{
public:
static DWORD Type();
public:
CAniImageBox(PyObject * ppyObject);
virtual ~CAniImageBox();
void SetDelay(int iDelay);
void AppendImage(const char * c_szFileName);
void SetRenderingRect(float fLeft, float fTop, float fRight, float fBottom);
void SetRenderingMode(int iMode);
void SetDiffuseColor(float fR, float fG, float fB, float fA);
void SetDiffuseColorByType(BYTE byColorType);
void ResetFrame();
protected:
void OnUpdate();
void OnRender();
void OnChangePosition();
virtual void OnEndFrame();
BOOL OnIsType(DWORD dwType);
protected:
BYTE m_bycurDelay;
BYTE m_byDelay;
BYTE m_bycurIndex;
std::vector<CGraphicExpandedImageInstance*> m_ImageVector;
};
Bárki bármiféle megoldást tud, biggyessze ide nyugodtan. ;)