I have written a server side dll for Zone 5.1.7.1
1.reduce memory
void SetValidUser(int num){
for (int i=0;i<50;i++)//jams
2.command for second job change
if (!strcmp(szCmd,"/2ndjob"))
{
int iTribe = pMob[conn].MOB.snTribe;
int ndclassed = 0;
if (!strcmp(szArgument1,"1"))
{
if( (TRIBE_NAGA==iTribe) || (TRIBE_KINNARA==iTribe) ) { pMob[conn].MOB.byClass2 = 1; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"2"))
{
if( (TRIBE_NAGA==iTribe) || (TRIBE_KINNARA==iTribe) ) { pMob[conn].MOB.byClass2 = 0; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"1"))
{
if( (TRIBE_ASURA==iTribe) || (TRIBE_RAKSHASA==iTribe) ) { pMob[conn].MOB.byClass2 = 2; ndclassed = 1; pMob[conn].MOB.byClass1=2; }
}
if (!strcmp(szArgument1,"2"))
{
if( (TRIBE_ASURA==iTribe) || (TRIBE_RAKSHASA==iTribe) ){ pMob[conn].MOB.byClass2 = 3; ndclassed = 1; pMob[conn].MOB.byClass1=2; }
}
if (!strcmp(szArgument1,"1"))
{
if( (TRIBE_YAKSA==iTribe) || (TRIBE_GANDHARVA==iTribe) ) { pMob[conn].MOB.byClass2 = 4; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"2"))
{
if( (TRIBE_YAKSA==iTribe) || (TRIBE_GANDHARVA==iTribe) ){ pMob[conn].MOB.byClass2 = 5; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"1"))
{
if( (TRIBE_DEVA==iTribe) || (TRIBE_GARUDA==iTribe) ) { pMob[conn].MOB.byClass2 = 6; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"2"))
{
if( (TRIBE_DEVA==iTribe) || (TRIBE_GARUDA==iTribe) ){ pMob[conn].MOB.byClass2 = 7; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if ( ndclassed == 1)
{
pMob[conn].MOB.byQuest[6] = 255;
pMob[conn].MOB.byQuest[31] = 255;
pMob[conn].MOB.byQuest[32] = 255;
pMob[conn].MOB.byQuest[33] = 255;
pMob[conn].MOB.byQuest[34] = 255;
pMob[conn].MOB.byQuest[35] = 255;
pMob[conn].ResetSkill();
pMob[conn].ResetStat();
SendQuestHistory( conn );
pMob[conn].NotifyUpdateUIMsg();
example:
/2ndjob 2
how to use the dll:
withdll.exe /d:versioo.dll zone.exe
1.reduce memory
void SetValidUser(int num){
for (int i=0;i<50;i++)//jams
2.command for second job change
if (!strcmp(szCmd,"/2ndjob"))
{
int iTribe = pMob[conn].MOB.snTribe;
int ndclassed = 0;
if (!strcmp(szArgument1,"1"))
{
if( (TRIBE_NAGA==iTribe) || (TRIBE_KINNARA==iTribe) ) { pMob[conn].MOB.byClass2 = 1; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"2"))
{
if( (TRIBE_NAGA==iTribe) || (TRIBE_KINNARA==iTribe) ) { pMob[conn].MOB.byClass2 = 0; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"1"))
{
if( (TRIBE_ASURA==iTribe) || (TRIBE_RAKSHASA==iTribe) ) { pMob[conn].MOB.byClass2 = 2; ndclassed = 1; pMob[conn].MOB.byClass1=2; }
}
if (!strcmp(szArgument1,"2"))
{
if( (TRIBE_ASURA==iTribe) || (TRIBE_RAKSHASA==iTribe) ){ pMob[conn].MOB.byClass2 = 3; ndclassed = 1; pMob[conn].MOB.byClass1=2; }
}
if (!strcmp(szArgument1,"1"))
{
if( (TRIBE_YAKSA==iTribe) || (TRIBE_GANDHARVA==iTribe) ) { pMob[conn].MOB.byClass2 = 4; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"2"))
{
if( (TRIBE_YAKSA==iTribe) || (TRIBE_GANDHARVA==iTribe) ){ pMob[conn].MOB.byClass2 = 5; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"1"))
{
if( (TRIBE_DEVA==iTribe) || (TRIBE_GARUDA==iTribe) ) { pMob[conn].MOB.byClass2 = 6; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if (!strcmp(szArgument1,"2"))
{
if( (TRIBE_DEVA==iTribe) || (TRIBE_GARUDA==iTribe) ){ pMob[conn].MOB.byClass2 = 7; ndclassed = 1; pMob[conn].MOB.byClass1=2;}
}
if ( ndclassed == 1)
{
pMob[conn].MOB.byQuest[6] = 255;
pMob[conn].MOB.byQuest[31] = 255;
pMob[conn].MOB.byQuest[32] = 255;
pMob[conn].MOB.byQuest[33] = 255;
pMob[conn].MOB.byQuest[34] = 255;
pMob[conn].MOB.byQuest[35] = 255;
pMob[conn].ResetSkill();
pMob[conn].ResetStat();
SendQuestHistory( conn );
pMob[conn].NotifyUpdateUIMsg();
example:
/2ndjob 2
how to use the dll:
withdll.exe /d:versioo.dll zone.exe
Attachments
You must be registered for see attachments list