View Full Version : [JX] [Source]Không draw được ảnh SPR
Chào các bạn, Hiện tại mình đang gặp vấn đề về draw ngũ hành quái, đã khai báo, và chèn code đầy đủ(đã check draw text phía dưới để đảm bảo chắc chắn chạy qua đoạn code draw ngũ hành)
- File spr ngũ hành mình đặt như hình:
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b> (<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>)
- Còn đây là Code:
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b> (<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>)
-> Kết quả là ntn, đoạn code trên ko hoạt động
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b> (<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>)
Bạn nào biết chỉ mình với,
Thank & **** Regards
HoangTVT
18-08-16, 12:04 PM
Bạn show toàn bộ hàm paintinfo đi bạn
Bạn show toàn bộ hàm paintinfo đi bạn
int KNpc::PaintInfo(int nHeightOffset, bool bSelect, int nFontSize, DWORD dwBorderColor)
{
int nMpsX, nMpsY;
GetMpsPos(&nMpsX, &nMpsY);
DWORD dwColor;
int nHeightOff = nHeightOffset + nFontSize + 1;
if (m_Kind == kind_player)
{
switch(m_CurrentCamp)
{
case camp_begin:
dwColor = 0xffffffff;
break;
case camp_justice:
dwColor = 0xff000000 | (255 << 16) | (168 << 8) | 94;
break;
case camp_evil:
dwColor = 0xff000000 | (255 << 16) | (146 << 8) | 255;
break;
case camp_balance:
dwColor = 0xff000000 | (85 << 16) | (255 << 8) | 145;
break;
case camp_free:
dwColor = 0xff000000 | (255 << 16);
break;
default:
dwColor = 0xffff00ff;
break;
/* case camp_animal:
dwColor =
break;
case camp_event:
break;*/
}
char szString[128];
strcpy(szString, Name);
if (m_FreezeState.nTime || m_PoisonState.nTime || m_ConfuseState.nTime || m_StunState.nTime)
{
strcat(szString, "(");
if (m_FreezeState.nTime)
strcat(szString, "±ù");
if (m_PoisonState.nTime)
strcat(szString, "¶¾");
if (m_ConfuseState.nTime)
strcat(szString, "ÂÒ");
if (m_StunState.nTime)
strcat(szString, "ÔÎ");
strcat(szString, ")");
}
g_pRepresent->OutputText(nFontSize, szString, KRF_ZERO_END, nMpsX - nFontSize * g_StrLen(Name) / 4, nMpsY, dwColor, 0, nHeightOff, dwBorderColor);
nHeightOffset += nFontSize + 1;
}
else if (m_Kind == kind_dialoger)
{
dwColor = 0xffffffff;
g_pRepresent->OutputText(nFontSize, Name, KRF_ZERO_END, nMpsX - nFontSize * g_StrLen(Name) / 4, nMpsY, dwColor, 0, nHeightOff, dwBorderColor);
nHeightOffset += nFontSize + 1;
}
else if (bSelect)
{
if (this->m_cGold.GetGoldType() == 0)
dwColor = 0xff00ff00; // tên quái màu xanh lá cây
else
dwColor = 0xffebb200;
g_pRepresent->OutputText(nFontSize, Name, KRF_ZERO_END, nMpsX - nFontSize * g_StrLen(Name) / 4, nMpsY, dwColor, 0, nHeightOff, dwBorderColor);
nHeightOffset += nFontSize + 1;
int nX, nY;
GetMpsPos(&nX, &nY);
if (m_Series == 0)
{
strcpy(m_nImageSeries, "\\Spr\\Ui3\\Npc\\Series\\series0.spr");
}
else if (m_Series ==1)
{
strcpy(m_nImageSeries, "\\Spr\\Ui3\\Npc\\Series\\series1.spr");
}
else if (m_Series ==2)
{
strcpy(m_nImageSeries, "\\Spr\\Ui3\\Npc\\Series\\series2.spr");
}
else if (m_Series==3)
{
strcpy(m_nImageSeries, "\\Spr\\Ui3\\Npc\\Series\\series3.spr");
}
else
{
strcpy(m_nImageSeries, "\\Spr\\Ui3\\Npc\\Series\\series4.spr");
}
strcpy(m_nImageSeries, "\\Spr\\t.spr");
m_ImageSeries.nType = ISI_T_SPR;
m_ImageSeries.Color.Color_b.a = 255;
m_ImageSeries.bRenderStyle = IMAGE_RENDER_STYLE_ALPHA;
m_ImageSeries.uImage = 0;
m_ImageSeries.nISPosition = IMAGE_IS_POSITION_INIT;
m_ImageSeries.bRenderFlag = 0;
strcpy(m_ImageSeries.szImage, m_nImageSeries);
m_ImageSeries.oPosition.nX = nX + 5;
m_ImageSeries.oPosition.nY = nY - 5;
m_ImageSeries.oPosition.nZ = nHeightOffset;
m_ImageSeries.nFrame = 0;
g_pRepresent->DrawPrimitives(1, &m_ImageSeries, RU_T_IMAGE, FALSE);
}
Đây bạn ơi
HoangTVT
18-08-16, 12:47 PM
........................
//strcpy(m_nImageSeries, "\\Spr\\t.spr");
m_ImageSeries.nType = ISI_T_SPR;
m_ImageSeries.Color.Color_b.a = 255;
m_ImageSeries.bRenderStyle = IMAGE_RENDER_STYLE_ALPHA;
m_ImageSeries.uImage = 0;
m_ImageSeries.nISPosition = IMAGE_IS_POSITION_INIT;
m_ImageSeries.bRenderFlag = 0;
strcpy(m_ImageSeries.szImage, m_nImageSeries);
m_ImageSeries.oPosition.nX = nX + nFontSize * g_StrLen(Name) / 4 + 5;
m_ImageSeries.oPosition.nY = nY - 5;
m_ImageSeries.oPosition.nZ = nHeightOffset;
m_ImageSeries.nFrame = 0;
g_pRepresent->DrawPrimitives(1, &m_ImageSeries, RU_T_IMAGE, FALSE);
Biến m_nImageSeries bạn khai báo ở đâu rồi à? Đoạn này thì bạn khai báo 1 biến tạm được rồi.
........................
//strcpy(m_nImageSeries, "\\Spr\\t.spr");
m_ImageSeries.nType = ISI_T_SPR;
m_ImageSeries.Color.Color_b.a = 255;
m_ImageSeries.bRenderStyle = IMAGE_RENDER_STYLE_ALPHA;
m_ImageSeries.uImage = 0;
m_ImageSeries.nISPosition = IMAGE_IS_POSITION_INIT;
m_ImageSeries.bRenderFlag = 0;
strcpy(m_ImageSeries.szImage, m_nImageSeries);
m_ImageSeries.oPosition.nX = nX + nFontSize * g_StrLen(Name) / 4 + 5;
m_ImageSeries.oPosition.nY = nY - 5;
m_ImageSeries.oPosition.nZ = nHeightOffset;
m_ImageSeries.nFrame = 0;
g_pRepresent->DrawPrimitives(1, &m_ImageSeries, RU_T_IMAGE, FALSE);
Biến m_nImageSeries bạn khai báo ở đâu rồi à? Đoạn này thì bạn khai báo 1 biến tạm được rồi.
Đây bạn mình chép theo hướng dẫn gốc
int m_JumpDir; int m_SpecialSkillStep; // ÌØÊâ¼¼Äܲ½Öè
NPC_COMMAND m_SpecialSkillCommand; // ÌØÊâ¼¼ÄÜÐÐΪÃüÁî
KNpcFindPath m_PathFinder;
BOOL m_bActivateFlag;
char m_nImageSeries[64];
#ifndef _SERVER
int m_ResDir;
KNpcRes m_DataRes; // NpcµÄ¿Í»§¶Ë×ÊÔ´£¨Í¼Ïó¡¢ÉùÒ� �£©
// ÓÃÓÚÆÕͨս¶·npcðѪ´¦Àí
int m_nBloodNo;
int m_nBloodAlpha;
int m_nBloodTime;
char m_szBloodNo[32];
KRUImage m_ImageSeries;
dòng ".\\t.spr" là mình thử thay bằng spr khác xem có lên không
dòng "m_ImageSeries.oPosition.nX = nX + nFontSize * g_StrLen(Name) / 4 + 5;" thì đã sửa lại như cũ rồi vần không lên, debug thì vẫn row by row ok!.
đây là source nguyên gốc 1.93GB mới chỉ thêm code ngũ hành vào thôi.
HoangTVT
18-08-16, 01:06 PM
KRUImage RUIconImageR;
RUIconImageR.nType = ISI_T_SPR;
RUIconImageR.Color.Color_b.a = 255;
RUIconImageR.bRenderStyle = IMAGE_RENDER_STYLE_ALPHA;
RUIconImageR.uImage = 0;
RUIconImageR.nISPosition = IMAGE_IS_POSITION_INIT;
RUIconImageR.bRenderFlag = RUIMAGE_RENDER_FLAG_REF_SPOT;
sprintf(RUIconImageR.szImage, "\\Spr\\Ui3\\Npc\\series%d.spr", m_Series);
RUIconImageR.oPosition.nX = nMpsX + nFontSize * g_StrLen(Name) / 4 + 5;
RUIconImageR.oPosition.nY = nMpsY;
RUIconImageR.oPosition.nZ = nHeightOff;
RUIconImageR.nFrame = 0;
g_pRepresent->DrawPrimitives(1, &RUIconImageR, RU_T_IMAGE, FALSE);
lỡ rồi thì giúp cho chót vậy, mình là mình rất ghét thể loại ok ok bố đời
KRUImage RUIconImageR;
RUIconImageR.nType = ISI_T_SPR;
RUIconImageR.Color.Color_b.a = 255;
RUIconImageR.bRenderStyle = IMAGE_RENDER_STYLE_ALPHA;
RUIconImageR.uImage = 0;
RUIconImageR.nISPosition = IMAGE_IS_POSITION_INIT;
RUIconImageR.bRenderFlag = RUIMAGE_RENDER_FLAG_REF_SPOT;
sprintf(RUIconImageR.szImage, "\\Spr\\Ui3\\Npc\\series%d.spr", m_Series);
RUIconImageR.oPosition.nX = nMpsX + nFontSize * g_StrLen(Name) / 4 + 5;
RUIconImageR.oPosition.nY = nMpsY;
RUIconImageR.oPosition.nZ = nHeightOff;
RUIconImageR.nFrame = 0;
g_pRepresent->DrawPrimitives(1, &RUIconImageR, RU_T_IMAGE, FALSE);
lỡ rồi thì giúp cho chót vậy, mình là mình rất ghét thể loại ok ok bố đời
Thank bạn, Đã chạy dược rồi, Do đoạn này
RUIconImageR.bRenderFlag = RUIMAGE_RENDER_FLAG_REF_SPOT;
KRUImage RUIconImageR;
RUIconImageR.nType = ISI_T_SPR;
RUIconImageR.Color.Color_b.a = 255;
RUIconImageR.bRenderStyle = IMAGE_RENDER_STYLE_ALPHA;
RUIconImageR.uImage = 0;
RUIconImageR.nISPosition = IMAGE_IS_POSITION_INIT;
RUIconImageR.bRenderFlag = RUIMAGE_RENDER_FLAG_REF_SPOT;
sprintf(RUIconImageR.szImage, "\\Spr\\Ui3\\Npc\\series%d.spr", m_Series);
RUIconImageR.oPosition.nX = nMpsX + nFontSize * g_StrLen(Name) / 4 + 5;
RUIconImageR.oPosition.nY = nMpsY;
RUIconImageR.oPosition.nZ = nHeightOff;
RUIconImageR.nFrame = 0;
g_pRepresent->DrawPrimitives(1, &RUIconImageR, RU_T_IMAGE, FALSE);
lỡ rồi thì giúp cho chót vậy, mình là mình rất ghét thể loại ok ok bố đời
Mình chỉ muốn nói là chạy qua các dòng code được bình thường chứ không có ý gì cả bạn ơi.
Powered by vBulletin® Version 4.2.0 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.