PDA

View Full Version : [JX] Share source Item giống cyberteam ! và hướng dẫn làm skill hỗ trợ



trananh88vt
25-08-12, 11:07 PM
Dạo này thấy box JX vắng vẻ quá ! Mình xin đóng góp cho newbie về source Item của mình và hưỡng dẫn làm skill hỗ trợ


Đây là source
<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>

Mình cũng muốn hưỡng dẫn chi tiết làm Item lắm nhưng nó dài quá nên thui share luôn cho các bạn về tự tìm hiểu code lun

Còn đây là hưỡng dẫn ! nếu các bạn cần hình demo hình sẽ up hihi
[B]Trong file MagicDesc.ini bạn thêm vào các option ở đây mình chỉ hưỡng dẫn làm option hỗ trợ skill thui vì các option khác thì có thể làm tương tự các option đã có
normal_end=
orther_new=
addphysicsmagic_v=S竧 thng v藅 l? n閕 c玭g: #d1+ 甶觤
addcoldmagic_v=B╪g s竧 - n閕 c玭g: #d1+ 甶觤
addfiremagic_v=H醓 s竧 - n閕 c玭g: #d1+ 甶觤
addlightingmagic_v=L玦 s竧 - n閕 c玭g: #d1+ 甶觤
addpoisonmagic_v=чc s竧 - n閕 c玭g: #d1+ 甶觤/l莕
fatallystrikeres_p=Kh竛g n ch?m筺g: #d1+%
expenhance_p=S竧 thng ch nh薾 頲 kinh nghi謒 #d1+%
addskilldamage1=T╪g s竧 thng #l1 #d3-%
addskilldamage2=T╪g s竧 thng #l1 #d3-%
addskilldamage3=T╪g s竧 thng #l1 #d3-%
addskilldamage4=T╪g s竧 thng #l1 #d3-%
addskilldamage5=T╪g s竧 thng #l1 #d3-%
addskilldamage6=T╪g s竧 thng #l1 #d3-%
orther_end=


Trong file KmagicDesc.cpp bạn cho load thêm các dòng vừa thêm vào


#define MAGICDESC_FILE "\\settings\\MagicDesc.Ini"
extern const char * g_MagicID2String(int nAttrib);
const char MAGIC_ATTRIB_STRING[][115] =
{
..............................
"normal_end",

"orther_new",
"addphysicsmagic_v",
"addcoldmagic_v",
"addfiremagic_v",
"addlightingmagic_v",
"addpoisonmagic_v",
"fatallystrikeres_p",
"expenhance_p",
"addskilldamage1",
"addskilldamage2",
"addskilldamage3",
"addskilldamage4",
"addskilldamage5",
"addskilldamage6",
"orther_end",
};




Tương tự ta định nghĩ các option này trong file KmagicAttrib.h


enum MAGIC_ATTRIB
{
......................................
magic_normal_end,
magic_orther_new,
magic_addphysicsmagic_v,
magic_addcoldmagic_v,
magic_addfiremagic_v,
magic_addlightingmagic_v,
magic_addpoisonmagic_v,
magic_fatallystrikeres_p,
magic_expenhance_p,
magic_addskilldamage1,
magic_addskilldamage2,
magic_addskilldamage3,
magic_addskilldamage4,
magic_addskilldamage5,
magic_addskilldamage6,
magic_orther_end,
};

extern const char MAGIC_ATTRIB_STRING[magic_orther_end + 1][115] ;

Rồi bạn tìm kiếm cac từ magic_normal_end thay bằng magic_orther_end trong core để các option này load đc hết

Giờ bắt đầu code
Trong file Kskills.h ta định nghĩa thêm các hàm và biến sau


Private :
KMagicAttrib m_SkillAdd[6]; //Load 6 option hỗ trợ vào
int m_nSkillAdd; //Đếm các option đc load vào
Public :
KMagicAttrib* GetSkillAdd() { return m_SkillAdd;}; // Cho các lớp khác lấy ttin
int GetnSkillAdd() { return m_nSkillAdd;}; //


Load các option vào


BOOL KSkill::ParseString2MagicAttrib(unsigned long ulLevel, char * szMagicAttribName, char * szValue)
{
.................................................
if ( i > magic_orther_new && i < magic_orther_end)
{
switch(i)
{
case magic_addskilldamage1:
m_SkillAdd[0].nAttribType = i;
m_SkillAdd[0].nValue[0] = nValue1;
m_SkillAdd[0].nValue[1] = nValue2;
m_SkillAdd[0].nValue[2] = nValue3;
m_nSkillAdd ++;
break;
case magic_addskilldamage2:
m_SkillAdd[1].nAttribType = i;
m_SkillAdd[1].nValue[0] = nValue1;
m_SkillAdd[1].nValue[1] = nValue2;
m_SkillAdd[1].nValue[2] = nValue3;
m_nSkillAdd ++;
break;
case magic_addskilldamage3:
m_SkillAdd[2].nAttribType = i;
m_SkillAdd[2].nValue[0] = nValue1;
m_SkillAdd[2].nValue[1] = nValue2;
m_SkillAdd[2].nValue[2] = nValue3;
m_nSkillAdd ++;
break;
case magic_addskilldamage4:
m_SkillAdd[3].nAttribType = i;
m_SkillAdd[3].nValue[0] = nValue1;
m_SkillAdd[3].nValue[1] = nValue2;
m_SkillAdd[3].nValue[2] = nValue3;
m_nSkillAdd ++;
break;
case magic_addskilldamage5:
m_SkillAdd[4].nAttribType = i;
m_SkillAdd[4].nValue[0] = nValue1;
m_SkillAdd[4].nValue[1] = nValue2;
m_SkillAdd[4].nValue[2] = nValue3;
m_nSkillAdd ++;
break;
case magic_addskilldamage6:
m_SkillAdd[5].nAttribType = i;
m_SkillAdd[5].nValue[0] = nValue1;
m_SkillAdd[5].nValue[1] = nValue2;
m_SkillAdd[5].nValue[2] = nValue3;
m_nSkillAdd ++;
break;
}
return TRUE;
}
.................................................
}



Vậy là load xong option vào rồi bây h đến hiện thị
Bạn thêm đoạn code này vào cuối hàm nha


void KSkill::GetDescAboutLevel(char * pszMsg)
{
.....................................
strcat(pszMsg, "\n");
for ( i = 0; i < m_nSkillAdd; i ++)
{
if (!m_SkillAdd[i].nAttribType) continue;
char * pszInfo = (char *)g_MagicDesc.GetDesc(&m_SkillAdd[i]);
if (!pszInfo) continue;
strcat(pszMsg, pszInfo);
strcat(pszMsg, "\n");
}
}


Bây h ta bắt đầu tính % đc + vào cho các skill
Trong lớp KskillList ta thêm vào 1 hàm như sau
Public :
int CalPercentAdd(int nSkillID);


int KSkillList::CalPercentAdd(int nSkillID)
{
int nPercent = 0;
if (!nSkillID)
return nPercent;

for (int i=1; i<MAX_NPCSKILL; i++)
{
KSkill * pSkill = (KSkill *) g_SkillManager.GetSkill(m_Skills[i].SkillId, m_Skills[i].SkillLevel);
if (pSkill)
{
int x = pSkill->GetnSkillAdd();
KMagicAttrib* pMagicData = NULL;
pMagicData = pSkill->GetSkillAdd();
for (int j =0 ; j < x ; j ++)
{
if (!pMagicData[j].nAttribType) continue;
if ( pMagicData[j].nValue[0] == nSkillID)
{
nPercent = nPercent + pMagicData[j].nValue[2];
}
}
}
}
return nPercent;
}

Vậy là ta lấy đc % + vào của các skill rồi cách lấy như sau
int nPercent = 0 ;
nPercent = Npc[Player[CLIENT_PLAYER_INDEX].m_nIndex].m_SkillList.CalPercentAdd(ulSkillId);

với ulSkillId là ID của skill truyền vào h ta test thử % hiện lên skill nha
tìm đến hàm getdes của lớp Kskill


if (pCurSkill)
{
pCurSkill->GetDescAboutLevel(pszMsg);
}
// Đoạn dưới thêm vào thêm vào
char TextLevel[80];
int nPercent = 0 ;
nPercent = Npc[Player[CLIENT_PLAYER_INDEX].m_nIndex].m_SkillList.CalPercentAdd(ulSkillId);
if (nPercent > 0)
{
sprintf(TextLevel, "Ho tro tu cac ky nang khac - %d%s",nPercent,"%");
strcat(pszMsg, "\n");
strcat(pszMsg, TextLevel);
strcat(pszMsg, "\n");
}


Đến phần tính damage là quan trọng nhất nó được làm như sau
void KPlayer::GetEchoDamage(int* nMin, int* nMax, int nType) // Hàm hiện thị dame của skill trên F3
void KNpc::AppendSkillEffect(BOOL bIsPhysical, BOOL bIsMelee, void *pSrcData, void *pDesData) //Dame của skill

Do mình là newbie ko rành về cách tính dame nên các bạn tự làm nha công việc đơn giản lắm
“Ở trên đã lấy dc % đc cộng vào của skill rồi. Chỉ cần lấy dame của skill + với % dame đó là OK” nhớ là skill thui nha ! dame của NPC nói chung hay Item thì đừng + vì làm tăng dame lắm.

Đây là file skill chưa add dame của mính các bạn có thể download về tham khảo hì
<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>

Hiện tên skill


const char* KMagicDesc::GetDesc(void *pData)
{

char szTempDesc[128];
char* pTempDesc = szTempDesc;
int i = 0;

ZeroMemory(m_szDesc, 128);

if (!pData)
return NULL;

KMagicAttrib* pAttrib = (KMagicAttrib *)pData;

const char *pszKeyName = g_MagicID2String(pAttrib->nAttribType);
m_IniFile.GetString("Descript", pszKeyName, "", szTempDesc, 128);
while(*pTempDesc)
{
if (*pTempDesc == '#')
{
int nDescAddType = 0;
switch(*pTempDesc + 3)
{
case '+':
nDescAddType = 1;
break;
default:
nDescAddType = 0;
break;
}
int nValue = 0;

switch(*(pTempDesc + 2))
{
case '1':
nValue = pAttrib->nValue[0];
break;
case '2':
nValue = pAttrib->nValue[1];
break;
case '3':
nValue = pAttrib->nValue[2];
break;
default:
nValue = pAttrib->nValue[0];
break;
}
switch(*(pTempDesc+1))
{
case 'm': // ÃÅÅÉ
strcat(m_szDesc, g_Faction.m_sAttribute[nValue].m_szName);
i += strlen(g_Faction.m_sAttribute[nValue].m_szName);
break;
case 's': // ÎåÐÐ
switch(nValue)
{
case series_metal:
strcat(m_szDesc, "½ðϵ");
break;
case series_wood:
strcat(m_szDesc, "ľϵ");
break;
case series_water:
strcat(m_szDesc, "ˮϵ");
break;
case series_fire:
strcat(m_szDesc, "»ðϵ");
break;
case series_earth:
strcat(m_szDesc, "ÍÁϵ");
break;
default:
strcat(m_szDesc, "ÎÞϵ");
break;
}
i += 4;
break;
case 'k': // ÏûºÄÀàÐÍ
switch(nValue)
{
case 0:
strcat(m_szDesc, "ÄÚÁ¦");
break;
case 1:
strcat(m_szDesc, "ÉúÃü");
break;
case 2:
strcat(m_szDesc, "ÌåÁ¦");
break;
case 3:
strcat(m_szDesc, "½ðÇ®");
break;
default:
strcat(m_szDesc, "ÄÚÁ¦");
break;
}
i += 4;
break;
case 'd': // Êý×Ö
{
//if (nValue == 0) // ÊýֵΪÁãµÄ»°£¬²»ÏÔʾ
{
// return NULL;
}

switch(nDescAddType)
{
case 1:
if (nValue > 0)
{
strcat(m_szDesc, "Ôö¼Ó");
}
else
{
nValue = -nValue;
strcat(m_szDesc, "¼õÉÙ");
}
break;
default:
break;
}
char szMsg[16];
sprintf(szMsg, "%d", nValue);
strcat(m_szDesc, szMsg);
i += strlen(szMsg);
}
break;
case 'l':
{
// Đoạn thêm vào để hiện tên skill
KSkill * pSkill = NULL;
pSkill = (KSkill *) g_SkillManager.GetSkill(nValue, 1); // Lây thông tin về skill + % vào
if (!pSkill) continue;
char szMsg[80];
sprintf(szMsg, " %s ", pSkill->GetSkillName());
strcat(m_szDesc, szMsg);
i += strlen(szMsg);
}
break;
case 'x': // ÐÔ±ð
if (nValue)
strcat(m_szDesc, "Å®ÐÔ");
else
strcat(m_szDesc, "ÄÐÐÔ");
i += 4;
break;
default:
break;
}
pTempDesc += 4;
}
else
{
m_szDesc[i] = *pTempDesc;
pTempDesc++;
i++;
}
}
return m_szDesc;
}

trananh88vt
25-08-12, 11:14 PM
Mình quên mất phần skill còn phải khai báo 1 số cái như sau



class KMissleMagicAttribsData
{
int nRef;
public:
KMagicAttrib * m_pStateMagicAttribs;
int m_nStateMagicAttribsNum;

KMagicAttrib * m_pDamageMagicAttribs;
int m_nDamageMagicAttribsNum;

KMagicAttrib * m_pImmediateAttribs;
int m_nImmediateMagicAttribsNum;

KMagicAttrib * m_pSkillAdd; //New add
int m_nSkillAdd; //New add


Trong hàm khỏi tạo của lớp KSkills bạn cho biến m_nSkillAdd = 0; nha


void KSkill::LoadSkillLevelData(unsigned long nLevel /* =0*/, int nParam)
{
m_nMissleAttribsNum = 0;
m_nDamageAttribsNum = 0;
m_nImmediateAttribsNum = 0;
m_nStateAttribsNum = 0; //¸öÊý£¬×î´ó10
m_nSkillAdd = 0;



KMissleMagicAttribsData* KSkill::CreateMissleMagicAttribsData(int nLauncher) const
{
if (nLauncher < 0 || m_bClientSend) return NULL;

KMissleMagicAttribsData* pMissleMagicAttribsData = new KMissleMagicAttribsData;

pMissleMagicAttribsData->m_pStateMagicAttribs = (KMagicAttrib *)m_StateAttribs;
pMissleMagicAttribsData->m_nStateMagicAttribsNum = m_nStateAttribsNum;

pMissleMagicAttribsData->m_pImmediateAttribs = (KMagicAttrib *)m_ImmediateAttribs;
pMissleMagicAttribsData->m_nImmediateMagicAttribsNum = m_nImmediateAttribsNum;

pMissleMagicAttribsData->m_pSkillAdd = (KMagicAttrib *)m_SkillAdd;//New add
pMissleMagicAttribsData->m_nSkillAdd = m_nSkillAdd; //New add

trananh88vt
25-08-12, 11:46 PM
Mình xin up vài hình demo chán up mà ko thấy ai nói ji hít huhu


<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><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><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><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><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><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><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><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><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><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><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>)

hackervnk
26-08-12, 12:01 AM
Pro cho xin cái yahoo hỏi cái
............................

CopBaDauRang
26-08-12, 12:06 AM
Chưa dowl chưa thử nhưng thanks trước cái đả,cho xin cái yahoo di chủ thớt có chút chuyện để hỏi

trananh88vt
26-08-12, 12:09 AM
Chưa dowl chưa thử nhưng thanks trước cái đả,cho xin cái yahoo di chủ thớt có chút chuyện để hỏi

Hì thông cảm mình có yahoo mà chắc cả tháng mới zo 1 lần vì ko có nhu cầu ! đi làm toàn dùng skyper không à hì. Mà có gì thì các bạn cứ hỏi ! nhưng hỏi về source thui nha chứ server và setting thì mình pó tay vì mình cũng chỉ là newbie vào JX chưa được bao lâu

ph4mduc4n
26-08-12, 12:09 AM
Giỏi thật đấy, trong box jx nhiều pro ẩn danh ^^

nhoxmap_b7
26-08-12, 02:25 AM
Hì thông cảm mình có yahoo mà chắc cả tháng mới zo 1 lần vì ko có nhu cầu ! đi làm toàn dùng skyper không à hì. Mà có gì thì các bạn cứ hỏi ! nhưng hỏi về source thui nha chứ server và setting thì mình pó tay vì mình cũng chỉ là newbie vào JX chưa được bao lâu

bạn ơi sao mình làm các bước giống bạn nói sao nó ko hiện thị trên skill vậy

Learning
26-08-12, 06:43 AM
không có gì ngoài lời cảm ơn dành cho bạn. mặc dù ko dùng.. newbie cần những người như bạn

assaa
26-08-12, 07:27 AM
Rất là cảm ơn bạn đã share cho anh em mấy cái này =D>

king7621
26-08-12, 08:28 AM
A ơi code trên là dành cho tất cả skill các phải hay chỉ mình TV thôi
e xài cho source TSBD vs AWJX được không vậy. e là newbie nên không hiểu lắm

PS: hì hì a có thể chỉnh source để khi đánh quái máu trôi lên nhiều tầng như VNG luôn không, làm luôn cho nó hay a ơi.

assaa
26-08-12, 08:45 AM
A ơi code trên là dành cho tất cả skill các phải hay chỉ mình TV thôi
e xài cho source TSBD vs AWJX được không vậy. e là newbie nên không hiểu lắm

PS: hì hì a có thể chỉnh source để khi đánh quái máu trôi lên nhiều tầng như VNG luôn không, làm luôn cho nó hay a ơi.

Cái này dùng cho source full của jx. không dùng đc cho sv TSBD kết hợp AWJX đâu

assaa
26-08-12, 10:26 AM
Cho mình hỏi làm sao để có tên của skills được hỗ trợ kèm vậy
giống như hình nè
<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>)

với lại làm sao để dòng ho tro tu cac skills khac hien len
như hinh
<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>)

trananh88vt
26-08-12, 06:04 PM
Cho mình hỏi làm sao để có tên của skills được hỗ trợ kèm vậy
giống như hình nè


với lại làm sao để dòng ho tro tu cac skills khac hien len
như hinh


hi mình quên phần đó :| để tối mình nói hì mới đi câu cá về mệt quá hii

jxvietnam
26-08-12, 06:32 PM
Hình như là phải thêm trong script nữa mới load được skill
addmagicdame1= {....}

trananh88vt
26-08-12, 08:27 PM
Cho mình hỏi làm sao để có tên của skills được hỗ trợ kèm vậy
giống như hình nè


với lại làm sao để dòng ho tro tu cac skills khac hien len
như hinh


Đây là code hiện tên skill giống vậy


const char* KMagicDesc::GetDesc(void *pData)
{

char szTempDesc[128];
char* pTempDesc = szTempDesc;
int i = 0;

ZeroMemory(m_szDesc, 128);

if (!pData)
return NULL;

KMagicAttrib* pAttrib = (KMagicAttrib *)pData;

const char *pszKeyName = g_MagicID2String(pAttrib->nAttribType);
m_IniFile.GetString("Descript", pszKeyName, "", szTempDesc, 128);
while(*pTempDesc)
{
if (*pTempDesc == '#')
{
int nDescAddType = 0;
switch(*pTempDesc + 3)
{
case '+':
nDescAddType = 1;
break;
default:
nDescAddType = 0;
break;
}
int nValue = 0;

switch(*(pTempDesc + 2))
{
case '1':
nValue = pAttrib->nValue[0];
break;
case '2':
nValue = pAttrib->nValue[1];
break;
case '3':
nValue = pAttrib->nValue[2];
break;
default:
nValue = pAttrib->nValue[0];
break;
}
switch(*(pTempDesc+1))
{
case 'm': // ÃÅÅÉ
strcat(m_szDesc, g_Faction.m_sAttribute[nValue].m_szName);
i += strlen(g_Faction.m_sAttribute[nValue].m_szName);
break;
case 's': // ÎåÐÐ
switch(nValue)
{
case series_metal:
strcat(m_szDesc, "½ðϵ");
break;
case series_wood:
strcat(m_szDesc, "ľϵ");
break;
case series_water:
strcat(m_szDesc, "ˮϵ");
break;
case series_fire:
strcat(m_szDesc, "»ðϵ");
break;
case series_earth:
strcat(m_szDesc, "ÍÁϵ");
break;
default:
strcat(m_szDesc, "ÎÞϵ");
break;
}
i += 4;
break;
case 'k': // ÏûºÄÀàÐÍ
switch(nValue)
{
case 0:
strcat(m_szDesc, "ÄÚÁ¦");
break;
case 1:
strcat(m_szDesc, "ÉúÃü");
break;
case 2:
strcat(m_szDesc, "ÌåÁ¦");
break;
case 3:
strcat(m_szDesc, "½ðÇ®");
break;
default:
strcat(m_szDesc, "ÄÚÁ¦");
break;
}
i += 4;
break;
case 'd': // Êý×Ö
{
//if (nValue == 0) // ÊýֵΪÁãµÄ»°£¬²»ÏÔʾ
{
// return NULL;
}

switch(nDescAddType)
{
case 1:
if (nValue > 0)
{
strcat(m_szDesc, "Ôö¼Ó");
}
else
{
nValue = -nValue;
strcat(m_szDesc, "¼õÉÙ");
}
break;
default:
break;
}
char szMsg[16];
sprintf(szMsg, "%d", nValue);
strcat(m_szDesc, szMsg);
i += strlen(szMsg);
}
break;
case 'l':
{
// Đoạn thêm vào để hiện tên skill
KSkill * pSkill = NULL;
pSkill = (KSkill *) g_SkillManager.GetSkill(nValue, 1); // Lây thông tin về skill + % vào
char szMsg[80];
//<color=AGreen>%s <color> bạn nên thay vào phù hợp với bạn của mình hiện thị màu xanh như trên
sprintf(szMsg, "<color=AGreen>%s <color>", pSkill->GetSkillName());
strcat(m_szDesc, szMsg);
i += strlen(szMsg);
}
break;
case 'x': // ÐÔ±ð
if (nValue)
strcat(m_szDesc, "Å®ÐÔ");
else
strcat(m_szDesc, "ÄÐÐÔ");
i += 4;
break;
default:
break;
}
pTempDesc += 4;
}
else
{
m_szDesc[i] = *pTempDesc;
pTempDesc++;
i++;
}
}
return m_szDesc;
}


Cách sử dụng option như sau [Trong scripts của skill hỗ trợ nha các skill khác nha]


addskilldamage3={
[1]={{1,115},{20,115}},
[3]={{1,1},{20,20}}
}

Trong đó [1]={{1,115},{20,115}} [1 20 là level của skill, 115 là ID skill hỗ trợ]
[3]={{1,1},{20,70}} [1 20 là level của skill, 1->70 là % hỗ trợ từ skill 1->20]

ngotiendat
26-08-12, 08:36 PM
nhìn cái topic này làm mình muốn public phần hút hít quá >:)

trananh88vt
26-08-12, 08:44 PM
bạn ơi sao mình làm các bước giống bạn nói sao nó ko hiện thị trên skill vậy


Mình có thêm phần hưỡng dẫn thêm ở phần trên rồi bạn xem lại thế nào hì ! Sorry vì làm nhùi quá ko nhớ hết hì

--- Chế độ gộp bài viết ---


nhìn cái topic này làm mình muốn public phần hút hít quá >:)

Hi hi bạn public đi mình học hỏi với hihi ! Mình đỡ phải tìm hiểu tiếp hihi !

--- Chế độ gộp bài viết ---


A ơi code trên là dành cho tất cả skill các phải hay chỉ mình TV thôi
e xài cho source TSBD vs AWJX được không vậy. e là newbie nên không hiểu lắm

PS: hì hì a có thể chỉnh source để khi đánh quái máu trôi lên nhiều tầng như VNG luôn không, làm luôn cho nó hay a ơi.

Hì source này chỉ dùng cho người dev source thôi ! còn dev server thì hơi khó hì

jxvietnam
27-08-12, 07:49 AM
Sau khi chép phần hiện tên skill ở trên thì vào game, xem thử skill là dis luôn

trananh88vt
27-08-12, 12:07 PM
Sau khi chép phần hiện tên skill ở trên thì vào game, xem thử skill là dis luôn

Anh thử xem xem cái biến m_nSkillAdd anh đã khởi tạo m_nSkillAdd=0 trong lớp KSkills chưa ! em nghĩ chỉ có thể là lỗi này dẫn đến hiện tượng đó



// Đây chính là hàm khởi tạo cũa skill
KSkill::KSkill()
{
m_nFlySkillId = m_nCollideSkillId = m_nVanishedSkillId = 0;

// add by FreewayChen in 2003.6.6
m_nImmediateAttribsNum = m_nStateAttribsNum = m_nMissleAttribsNum = m_nDamageAttribsNum = m_nSkillAdd = 0;
m_nSkillCostType = attrib_mana;
m_nWaitTime = 0;
m_nEquiptLimited = 0;
m_bDoHurt = 1;

dammejx
27-08-12, 12:55 PM
Bạn hướng dẩn thêm code vào đâu được không bạn. có mấy cái bạn nói mình không hiểu rõ.

trananh88vt
27-08-12, 01:06 PM
Bạn hướng dẩn thêm code vào đâu được không bạn. có mấy cái bạn nói mình không hiểu rõ.

Hì trên các code đều có dạng int KSkillList::CalPercentAdd(int nSkillID)
trong đó KSkillList là lớp còn CalPercentAdd là hàm. bạn tìm đến các lớp và hàm đó code vào hì

ferari
27-08-12, 01:11 PM
Chủ 2pic đã ngâm cứu ra được cái vụ hút hít + rồng dí chưa nhỉ ?
Mong chờ cái này quá đi :(

nhoxmap_b7
27-08-12, 01:29 PM
chủ topic ông có ngâm cái vụ hạn chế vũ khí chưa

jxvietnam
27-08-12, 01:50 PM
Anh thử xem xem cái biến m_nSkillAdd anh đã khởi tạo m_nSkillAdd=0 trong lớp KSkills chưa ! em nghĩ chỉ có thể là lỗi này dẫn đến hiện tượng đó



// Đây chính là hàm khởi tạo cũa skill
KSkill::KSkill()
{
m_nFlySkillId = m_nCollideSkillId = m_nVanishedSkillId = 0;

// add by FreewayChen in 2003.6.6
m_nImmediateAttribsNum = m_nStateAttribsNum = m_nMissleAttribsNum = m_nDamageAttribsNum = m_nSkillAdd = 0;
m_nSkillCostType = attrib_mana;
m_nWaitTime = 0;
m_nEquiptLimited = 0;
m_bDoHurt = 1;

Cám ơn bạn, mình còn nhỏ tuổi hơn bạn, còn chưa đi làm mà, ko cần xưng hô như vậy đâu

Đã cho m_nSkillAdd = 0 nhưng vẫn ko được, lần này thì xem những skill ko có addskilldamage1 thì được, nhưng skill có addskilldamage1 dis game.exe luôn

dammejx
27-08-12, 02:57 PM
Hì trên các code đều có dạng int KSkillList::CalPercentAdd(int nSkillID)
trong đó KSkillList là lớp còn CalPercentAdd là hàm. bạn tìm đến các lớp và hàm đó code vào hì

bạn lấy một ví dụ và hướng dẩn giúp mình được không. hướng dẩn kỹ dùm mình. mình ngu cái vụ này. thank!!

int KSkillList::CalPercentAdd(int nSkillID)


nhìn thế này mình biết bỏ vào chổ nào rồi build ??
rồi mở file nào để ghi vào ???
mình học C++ nhưng cũng không biết cái vụ này..
giúp mình!! thank

dammejx
27-08-12, 03:21 PM
nếu được bạn có thể gửi file source mà bạn đã thêm 2 chức năng Hổ Trợ với Item giống cyber cho mình nghiên cứu được không. thank !!

jxvietnam
27-08-12, 05:05 PM
nếu được bạn có thể gửi file source mà bạn đã thêm 2 chức năng Hổ Trợ với Item giống cyber cho mình nghiên cứu được không. thank !!
Source item thì được chủ topic share ở đầu bài rồi <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> :go:
Trong source này có :
+ Load thêm 6 op trong txt để làm đồ hoàng kim
+ Hiện thị nhóm của item
+ Kích hết op khi mặc đủ bộ item

kimrubi
27-08-12, 05:40 PM
jx vẫn là dame mê của nhìu mem nhỉ, tiếc là mò hoài mà hem ra được cái gì#-o

assaa
27-08-12, 05:53 PM
Sao mình làm cái option xong vào game test thì thấy không giống như của bạn nhỉ.
theo như hình bạn demo
<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>)

như thế nhưng khi mình làm ra thì mấy cái option màu vàng thì lạo ra màu xanh nước biển cả mấy dòng option đúng ra màu xanh lá cây thì cũng ra màu xanh nước biển

trananh88vt
27-08-12, 06:21 PM
Sao mình làm cái option xong vào game test thì thấy không giống như của bạn nhỉ.
theo như hình bạn demo
<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>)

như thế nhưng khi mình làm ra thì mấy cái option màu vàng thì lạo ra màu xanh nước biển cả mấy dòng option đúng ra màu xanh lá cây thì cũng ra màu xanh nước biển

hì bạn build lại engine.dll rồi copy vào client và server là dc ! trong file mình share có file Text.h để định nghĩ màu nằm trong dll engine hì

--- Chế độ gộp bài viết ---


Chủ 2pic đã ngâm cứu ra được cái vụ hút hít + rồng dí chưa nhỉ ?
Mong chờ cái này quá đi :(

Rồng dí thì chưa còn hút hít thì sẽ có hì ! vì dạo này bận làm quá với hỗ trợ bạn học bài nên ko có thời gian dev hihi

trananh88vt
27-08-12, 06:30 PM
chủ topic ông có ngâm cái vụ hạn chế vũ khí chưa

Ủa ! trong source có hạn chế vũ khí rồi mà bạn hì

--- Chế độ gộp bài viết ---


Cám ơn bạn, mình còn nhỏ tuổi hơn bạn, còn chưa đi làm mà, ko cần xưng hô như vậy đâu

Đã cho m_nSkillAdd = 0 nhưng vẫn ko được, lần này thì xem những skill ko có addskilldamage1 thì được, nhưng skill có addskilldamage1 dis game.exe luôn

Cái vụ này khó nè :( của mình vẫn bình thường mà . bị mỗi 1 cái option đầu tiên :( mình cũng chưa nghĩ ra cách fix ! Thông cảm nha hì

nhoxmap_b7
27-08-12, 07:17 PM
Ủa ! trong source có hạn chế vũ khí rồi mà bạn hì

em biết là trong source có giới hạn vũ khí nhưng mà em không biết điều kiện như thế nào cho nó hiện ra trong skill ấy...gợi ý em tý

jxvietnam
27-08-12, 07:44 PM
Ủa ! trong source có hạn chế vũ khí rồi mà bạn hì

--- Chế độ gộp bài viết ---



Cái vụ này khó nè :( của mình vẫn bình thường mà . bị mỗi 1 cái option đầu tiên :( mình cũng chưa nghĩ ra cách fix ! Thông cảm nha hì

Thật ra là do mình chỉ test cái op đầu tiên thôi, mấy cái kia chưa test, nhưng chắc là ko được luôn

trananh88vt
27-08-12, 08:21 PM
Thật ra là do mình chỉ test cái op đầu tiên thôi, mấy cái kia chưa test, nhưng chắc là ko được luôn

Bạn có thể xem file skill mình up về tham khảo hì ! Do ko coi source bạn để debug đc nên đàng bó tay hihi ! mình có sửa lại chút phần GetDes của Magic đển chỉ cho hiện các skill đúng ID tránh tình trạng dis game như bạn nói ! Bạn sửa lại chút nha hì ! Trong file mình chưa sửa đâu

assaa
27-08-12, 09:59 PM
Mình làm hiển thị đúng mấy dòng màu xanh lá cây rồi nhưng mấy cái option đúng ra là màu vàng thì cũng là màu xanh lun. Ak cái tên của Item làm sao cho nó có màu vàng thế

trananh88vt
27-08-12, 11:06 PM
Mình làm hiển thị đúng mấy dòng màu xanh lá cây rồi nhưng mấy cái option đúng ra là màu vàng thì cũng là màu xanh lun. Ak cái tên của Item làm sao cho nó có màu vàng thế

Hì cái này là do phần setting nữa bạn à ! Mình mới chỉ làm đó HK thui (tức là column TypeItem = 4 KH, 0 do thuong) cái này do các bạn tự định nghĩ và add màu cho Item trong KItem::GesDesc()
TypeItem // Loại Item
GroupItem//Nhóm Item (An bang định quốc)
ActiveAllItem//Số Item trong Nhóm khi mặc vào thì sẽ kick hoạt tất cả các option Item
NumSetItem//Số Item trong 1 nhóm

Learning
27-08-12, 11:30 PM
anh cho em xin cái yahoo được ko. em muốn nhờ cái này :)

trananh88vt
28-08-12, 07:16 AM
anh cho em xin cái yahoo được ko. em muốn nhờ cái này :)

Hì xin lỗi bạn nha mình ko có dùng yahoo hì ! skyper của mình là : trananh88vt hì

jxvietnam
28-08-12, 07:36 AM
Vẫn ko được là sao nhỉ, chắc do mình làm sai chỗ nào rồi nhưng ko biết =.=

trananh88vt
28-08-12, 07:45 AM
Vẫn ko được là sao nhỉ, chắc do mình làm sai chỗ nào rồi nhưng ko biết =.=

Hì mình có gửi file của mình bạn tham khảo xem thế nào hì !

banynavy
28-08-12, 07:54 AM
lỗi ở hàm sprintf(szMsg, "%s", pSkill->GetSkillName());

nhoxmap_b7
28-08-12, 09:15 AM
anh chủ topic anh cho em cái gợi ý để hiện ra cái hạn chế vũ khí tý...em ngồi làm mãi mà nó hiện ra trong skill mà ko đúng

trananh88vt
28-08-12, 09:28 AM
chú này là ai mà sao lấy src share lung tung thế. nhớ ko lầm src này ko phải của chú :|.

hihi ! Vậy là chắc bạn nhớ đúng rồi đó hì vì src này lấy của các pro share mà ! Share src thì có sao đâu ! Sao lại có tư tưởng đó !

trananh88vt
28-08-12, 10:00 AM
anh chủ topic anh cho em cái gợi ý để hiện ra cái hạn chế vũ khí tý...em ngồi làm mãi mà nó hiện ra trong skill mà ko đúng

Sr mình cũng chưa tìm hiểu về vấn đề này nhưng mình nghĩ bạn có thể vào BOOL KSkill::CanCastSkill để xem xem yêu cầu vũ khí thuộc biến nào hì để ý mấy cái có Return FALSE

nhoxmap_b7
28-08-12, 10:10 AM
Sr mình cũng chưa tìm hiểu về vấn đề này nhưng mình nghĩ bạn có thể vào BOOL KSkill::CanCastSkill để xem xem yêu cầu vũ khí thuộc biến nào hì để ý mấy cái có Return FALSE

<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> .jpg (<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> .jpg)
nó là vậy nè...

trananh88vt
28-08-12, 10:13 AM
<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> .jpg (<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> .jpg)
nó là vậy nè...

hì vậy là bạn làm đc rồi chúc mừng chúc mừng hì ! Hình như nó là EqtLimit trong file Skill.txt và m_nEquiptLimited trong lớp KSkill thì phải hì

nhoxmap_b7
28-08-12, 10:17 AM
hì vậy là bạn làm đc rồi chúc mừng chúc mừng hì ! Hình như nó là EqtLimit trong file Skill.txt và m_nEquiptLimited trong lớp KSkill thì phải hì

chưa làm đc đâu anh...cái này em chỉ lấy của VNG làm ví dụ cho anh hình dung ra thôi àhh...

trananh88vt
28-08-12, 11:19 AM
đã hỏi ý kiến người code ra nó chưa mà dám public lung tung thế này.:|.

Trùi sao mà hỏi đc :| Sang TQ hỏi Kíngoft hả huhu ! Vậy thì thua

trananh88vt
28-08-12, 12:00 PM
ohm. thế thôi. từ nay đừng hòng chờ share gì nữa nhá. Còn nãy thằng nào pm inbox chửi tao thì coi chừng nhá

Hì nói thực mình ko có dev server ! Hun bữa vô tình nói chuyện Pro hòa trên face Pro nói đang dev JX vậy là mình vo box JX thấy có share source nên download về tìm hiểu thui ! Vì mình đam mê lập trình game ! Còn những gì mình share toàn là do mình làm hết ! Hỏi trên diễn đàn ai share gì ko ! Ai cũng giữ cho riêng mình (Trừ ý tưởng và setting thì lấy của server có sẵn ! Vì căn bản mình ko bít ji về server JX cả)

banynavy
28-08-12, 01:07 PM
ohm. thế thôi. từ nay đừng hòng chờ share gì nữa nhá. Còn nãy thằng nào pm inbox chửi tao thì coi chừng nháBác này tỏ ra nguy hiểm nhỉ.:">

nhoxmap_b7
28-08-12, 01:32 PM
anh chủ topic cho em hỏi là cái dong hổ trợ từ các kỷ năng khác...thì cái dòng nó nên muốn nó ko có trong skill thì mình chỉnh như thế vậy anh...

trananh88vt
28-08-12, 01:36 PM
anh chủ topic cho em hỏi là cái dong hổ trợ từ các kỷ năng khác...thì cái dòng nó nên muốn nó ko có trong skill thì mình chỉnh như thế vậy anh...

Bạn vào :



void KSkill::GetDesc(............
.............

//Tìm và bỏ đoạn này đi là dc
char TextLevel[80];
int nPercent = 0 ;
nPercent = Npc[Player[CLIENT_PLAYER_INDEX].m_nIndex].m_SkillList.CalPercentAdd(ulSkillId);
if (nPercent > 0)
{
sprintf(TextLevel, "Ho tro tu cac ky nang khac - %d%s",nPercent,"%");
strcat(pszMsg, "\n");
strcat(pszMsg, TextLevel);
strcat(pszMsg, "\n");
}

nhoxmap_b7
28-08-12, 01:45 PM
Bạn vào :



void KSkill::GetDesc(............
.............

//Tìm và bỏ đoạn này đi là dc
char TextLevel[80];
int nPercent = 0 ;
nPercent = Npc[Player[CLIENT_PLAYER_INDEX].m_nIndex].m_SkillList.CalPercentAdd(ulSkillId);
if (nPercent > 0)
{
sprintf(TextLevel, "Ho tro tu cac ky nang khac - %d%s",nPercent,"%");
strcat(pszMsg, "\n");
strcat(pszMsg, TextLevel);
strcat(pszMsg, "\n");
}


chứ ko phải là mình chỉnh trong skill nào cũng đc hay sao anh...giống như skill 1x em ko muốn nó có nhưng skill 9x em muốn nó có dòng này chẳng hạn...

trananh88vt
28-08-12, 01:54 PM
chứ ko phải là mình chỉnh trong skill nào cũng đc hay sao anh...giống như skill 1x em ko muốn nó có nhưng skill 9x em muốn nó có dòng này chẳng hạn...

Hì đc nhưng phải xét xem đâu là skill 9x (dựa vào ID skill) như vậy không hay lắm cho ng dev setting ! ở code trên mình chỉ hiện dòng đó cho những skill nào có hỗ trợ ! Như vậy thì skill 1x 2x 3x mà ko dc hỗ trợ thì đâu có hiện lên đâu ! hì

nhoxmap_b7
28-08-12, 02:23 PM
Hì đc nhưng phải xét xem đâu là skill 9x (dựa vào ID skill) như vậy không hay lắm cho ng dev setting ! ở code trên mình chỉ hiện dòng đó cho những skill nào có hỗ trợ ! Như vậy thì skill 1x 2x 3x mà ko dc hỗ trợ thì đâu có hiện lên đâu ! hì

ok thanks anh em hiểu rồi............................................. ............sẵn đây cho em hỏi cách viết sao mà để hiện ra dòng chữ hạn chế vũ khí mà mà làm hoài nó vẫn ko ra chính xác đc tên vũ khí mà skill đó dùng...

trananh88vt
28-08-12, 02:27 PM
[QUOTE=nhoxmap_b7;658732]giống skill này 1x mà có dòng hổ trợ các từ kỹ năng khác

<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> .jpg (<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> .jpg)

Tại cái skill đó đc hỗ trợ kìa ! Bạn để ý xem chính skill đó hỗ trợ chính nó! hì bạn vào scripts của skill bỏ dòng hỗ trợ đó đi là được à hì

bạn dùng server nào dev thế hihi ! Nhìn quen quen hình như của các Pro cyberteam thì phải hì

nhoxmap_b7
28-08-12, 02:57 PM
[QUOTE=nhoxmap_b7;658732]giống skill này 1x mà có dòng hổ trợ các từ kỹ năng khác

<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> .jpg (<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> .jpg)

Tại cái skill đó đc hỗ trợ kìa ! Bạn để ý xem chính skill đó hỗ trợ chính nó! hì bạn vào scripts của skill bỏ dòng hỗ trợ đó đi là được à hì

bạn dùng server nào dev thế hihi ! Nhìn quen quen hình như của các Pro cyberteam thì phải hì
em chỉ chỉnh lại giao diện giống cyberteam tui ah...

ferari
28-08-12, 06:44 PM
Phần skill thì mình còn ngũ hành tương khắc nữa là thấy hoàn chỉnh rùi ấy ;))
Thêm cái dòng hạn chế vũ khí nữa.

trananh88vt
28-08-12, 06:47 PM
Phần skill thì mình còn ngũ hành tương khắc nữa là thấy hoàn chỉnh rùi ấy ;))
Thêm cái dòng hạn chế vũ khí nữa.

Hì mình sẽ cố gắng hoàn chỉnh skill ! Mong là làm đc hì

notfile
29-08-12, 05:05 PM
Sao mình làm cái option xong vào game test thì thấy không giống như của bạn nhỉ.
theo như hình bạn demo
<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>)

như thế nhưng khi mình làm ra thì mấy cái option màu vàng thì lạo ra màu xanh nước biển cả mấy dòng option đúng ra màu xanh lá cây thì cũng ra màu xanh nước biển

Cao nhân này ở đâu ra vậy ?? khâm phục , khâm phục !!

FanLoveJX
29-08-12, 08:01 PM
trananh cho mình xin nick sky :D

trananh88vt
29-08-12, 08:05 PM
trananh cho mình xin nick sky :D

hì skyper của mình là trananh88vt :| Mà những gì mình biết còn hạn chế lém ko đc như các huynh trên forum đâu vì mình cũng mới chỉ tìm hiểu JX à !
Muốn tìm hiểu về cái gì thà bạn post trên forum cho các huynh giúp còn hơn huuhuu

FanLoveJX
29-08-12, 08:43 PM
add friend mình hỏi xí :D, h có on đó ko?

dammejx
01-09-12, 04:48 PM
Chủ topic cho hỏi: Làm sao để trang bị An Bang Định Quốc có dòng ẩn hiện. và đeo vào đủ bộ thì kick hoạt ???

assaa
01-09-12, 05:49 PM
Chủ topic cho hỏi: Làm sao để trang bị An Bang Định Quốc có dòng ẩn hiện. và đeo vào đủ bộ thì kick hoạt ???

đầu tiên bạn phải cho nó load đc những cột từ AU trở đi sau đó chỉnh lại thông số trong settings thôi

dammejx
01-09-12, 06:04 PM
bạn cho mình đoạn code đó đc không. thank

LBLN2N
02-09-12, 08:27 AM
mình làm theo bạn trananh thì bị như vậy:
--------------------Configuration: Core - Win32 Server Release--------------------
Compiling...
KNpc.cpp
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (123) : error C2065: 'm_nImageSeries' : undeclared identifier
KMagicDesc.cpp
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KMagicDe sc.cpp(191) : error C2078: too many initializers
Generating Code...
Error executing cl.exe.


CoreServer.dll - 2 error(s), 0 warning(s)
--------------------Configuration: Core - Win32 Client Release--------------------
Compiling...
KNpc.cpp
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (123) : error C2065: 'm_nImageSeries' : undeclared identifier
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3619) : error C2065: 'm_ImageSeries' : undeclared identifier
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3619) : error C2228: left of '.nType' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3620) : error C2228: left of '.Color' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3620) : error C2228: left of '.Color_b' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3620) : error C2228: left of '.a' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3621) : error C2228: left of '.bRenderStyle' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3622) : error C2228: left of '.uImage' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3623) : error C2228: left of '.nISPosition' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3624) : error C2228: left of '.bRenderFlag' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3625) : error C2228: left of '.szImage' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3626) : error C2228: left of '.oPosition' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3626) : error C2228: left of '.nX' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3627) : error C2228: left of '.oPosition' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3627) : error C2228: left of '.nY' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3628) : error C2228: left of '.oPosition' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3628) : error C2228: left of '.nZ' must have class/struct/union type
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KNpc.cpp (3629) : error C2228: left of '.nFrame' must have class/struct/union type
KMagicDesc.cpp
C:\JX\swrod3\SwordOnline\Sources\Core\Src\KMagicDe sc.cpp(191) : error C2078: too many initializers
Generating Code...
Error executing cl.exe.
Creating browse info file...
BSCMAKE: error BK1506 : cannot open file '.\ClientRelease\KIpoTree.sbr': No such file or directory
Error executing bscmake.exe.


CoreClient.dll - 20 error(s), 0 warning(s)

cho hỏi cách fix. thanks

runkissbig
02-09-12, 09:39 AM
trananh ơi, bạn share lại link đi.
Chỉ còn mỗi link iteam còn link source skill hỗ trợ mất rồi

trananh88vt
03-09-12, 01:39 PM
trananh ơi, bạn share lại link đi.
Chỉ còn mỗi link iteam còn link source skill hỗ trợ mất rồi

Links vẫn còn mà bạn hihi ! Bạn xem lại xem! hì về chơi 2-9 nên trả lời hơi chậm:(

thaihoa91
03-09-12, 03:30 PM
<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>

shinrenkyo
11-04-13, 11:17 AM
Mình bị lỗi thế này:

E:\Build\SourceJX\swrod3\SwordOnline\Sources\Core\ Src\KObjSet.cpp(245) : error C2248: 'm_CommonAttrib' : cannot access private member declared in class 'KItem'
E:\Build\SourceJX\swrod3\SwordOnline\Sources\Core\ Src\KItem.h(139) : see declaration of 'm_CommonAttrib'
trong file KItem.h đã khai báo thế này ai chỉ dùm:

typedef struct
{
int nItemGenre; // 道具种类 (武器? 药品? 矿石?)
int nDetailType; // 在该种类中的具体类别
int nParticularType; // 详细类别
int nObjIdx; // 地图上摆放时对应的物件数据编号
BOOL bStack; // 是否可叠放
int nWidth; // 道具栏中所占宽度
int nHeight; // 道具栏中所占高度
int nPrice; // 价格
int nLevel; // 等级
int nSeries; // 五行属性
char szItemName[80]; // 名称
#ifndef _SERVER
char szImageName[80]; // 界面中的动画文件名
char szIntro[256]; // 说明文字
#endif
int nNpcImage; // NPC图象影响
int m_nTypeItem;
int m_nGroupItem;
int m_nActiveAllItem;
int m_nNumSetItem;
int nTypeItem;
int m_CommonAttrib;
int m_aryMagicAttrib;

} KItemCommonAttrib;

hi vọng mọi người giúp đỡ, tks

anhbi792
11-04-13, 11:36 AM
hay nhỉ làm tới đâu rùi ;))

thienthanden2
11-04-13, 11:55 AM
Mình bị lỗi thế này:

E:\Build\SourceJX\swrod3\SwordOnline\Sources\Core\ Src\KObjSet.cpp(245) : error C2248: 'm_CommonAttrib' : cannot access private member declared in class 'KItem'
E:\Build\SourceJX\swrod3\SwordOnline\Sources\Core\ Src\KItem.h(139) : see declaration of 'm_CommonAttrib'
trong file KItem.h đã khai báo thế này ai chỉ dùm:

typedef struct
{
int nItemGenre; // 道具种类 (武器? 药品? 矿石?)
int nDetailType; // 在该种类中的具体类别
int nParticularType; // 详细类别
int nObjIdx; // 地图上摆放时对应的物件数据编号
BOOL bStack; // 是否可叠放
int nWidth; // 道具栏中所占宽度
int nHeight; // 道具栏中所占高度
int nPrice; // 价格
int nLevel; // 等级
int nSeries; // 五行属性
char szItemName[80]; // 名称
#ifndef _SERVER
char szImageName[80]; // 界面中的动画文件名
char szIntro[256]; // 说明文字
#endif
int nNpcImage; // NPC图象影响
int m_nTypeItem;
int m_nGroupItem;
int m_nActiveAllItem;
int m_nNumSetItem;
int nTypeItem;
int m_CommonAttrib;
int m_aryMagicAttrib;

} KItemCommonAttrib;

hi vọng mọi người giúp đỡ, tks

Đây là căn bản của C++. Dòng báo lỗi có nghĩa là ko thể truy cập đến thành viên của lớp Kitem đc khái báo với dạng private: .
Bạn kéo xuống 1 chút sẽ thấy có các hàm tuơng tự như thế này:
int GetGenre() const { return m_CommonAttrib.nItemGenre; };
Bây giờ tạo thêm 1 hàm giống như vậy ví dụ:
int GetKind() const { return m_CommonAttrib.m_nTypeItem; };
Khi đang ở bên các lớp khác thì sử dụng công thức như thế này Item[xxx].GetKind() là lấy đc giá trị của biến đó rồi. Bạn phải đọc sách nhiều hơn nữa.

shinrenkyo
11-04-13, 12:52 PM
Đây là căn bản của C++. Dòng báo lỗi có nghĩa là ko thể truy cập đến thành viên của lớp Kitem đc khái báo với dạng private: .
Bạn kéo xuống 1 chút sẽ thấy có các hàm tuơng tự như thế này:
int GetGenre() const { return m_CommonAttrib.nItemGenre; };
Bây giờ tạo thêm 1 hàm giống như vậy ví dụ:
int GetKind() const { return m_CommonAttrib.m_nTypeItem; };
Khi đang ở bên các lớp khác thì sử dụng công thức như thế này Item[xxx].GetKind() là lấy đc giá trị của biến đó rồi. Bạn phải đọc sách nhiều hơn nữa.
àk tks bạn, mình vừa xem Tut hướng dẫn vừa học c++ cơ bản nên cũng chưa rành lắm:D
để mình làm

shinrenkyo
11-04-13, 05:06 PM
hay nhỉ làm tới đâu rùi ;))
có 1 bạn giúp đỡ vừa cóp vừa học c++ chắc còn lâu mới thành:D
hj

tru145
11-04-13, 11:34 PM
Bạn cho mình hỏi cách add skill 150 vào NPC Hỗ Trợ Tân Thủ thì làm như nào vậy bạn ?