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 © 2025 vBulletin Solutions, Inc. All rights reserved.