Hello, I have a problem with drop season at second
When you drop the .exe Item must be entered to exe option-digit number.
If you specify a single number that falls to the ground as + 13 + option.
I make my living programming and sit at a PC almost 15 hours a day. Sometimes I disregard small mistake.PHP Code://=================================================//
// Comando "Drop" - Crea un Item dentro del juego //
//=================================================//
void ChatDrop(DWORD gObjId, char * msg)
{
if(strlen(msg)< 13)
{
return;
}
int spaces = 0;
for(int i=0; i < strlen(msg); i++)
{
if(msg[i] == ' ')
spaces++;
}
if (strlen(msg) < 13) {
GCServerMsgStringSend("Usage: /drop <type> <index> <lvl> <skill> <luck> <opt> <exc>", gObjId,1);
return;
}
if (spaces < 7) {
GCServerMsgStringSend("Usage: /drop <type> <index> <lvl> <skill> <luck> <opt> <exc>", gObjId,1);
return;
}
if(VerificaGM(gObjId)== false)
{
GCServerMsgStringSend(MSG03,gObjId,1);
return;
}
char * PosA;
PosA = strchr( msg , ' ' );
char * PosB;
PosB = strchr( PosA+1 , ' ' );
char * PosC;
PosC = strchr( PosB+1 , ' ' );
char * PosD;
PosD = strchr( PosC+1 , ' ' );
char * PosE;
PosE = strchr( PosD+5 , ' ' );
int ItemType, ItemNr, ItemLevel, ItemExc;
if(*(PosA+2) != ' ')
{
ItemType = (int)(*(PosA+1) - 48) * 10 + (int)(*(PosA+2) - 48);
}
else
{
ItemType = (*(PosA+1)) - 48;
}
if(*(PosB+2) != ' ')
{
ItemNr = (int)(*(PosB+1) - 48) * 10 + (int)(*(PosB+2) - 48);
}
else
{
ItemNr = (*(PosB+1)) - 48;
}
if(*(PosC+2) != ' ')
{
ItemLevel = (int)(*(PosC+1) - 48) * 10 + (int)(*(PosC+2) - 48);
}
else
{
ItemLevel = (*(PosC+1)) - 48;
}
int ItemSkill = (*(PosD+1)) - 48;
int ItemLuck = (*(PosD+3)) - 48;
int ItemOpt = (*(PosD+5)) - 48;
if(*(PosE+2) != ' ')
{
ItemExc = (int)(*(PosE+1) - 48) * 10 + (int)(*(PosE+2) - 48);
}
else
{
ItemExc = (*(PosE+1)) - 48;
}
DWORD Item = ItemType * 512 + ItemNr;
ItemSerialCreateSend ( gObjId , gObj_GetMap(gObjId) , gObj_GetPosX(gObjId) , gObj_GetPosY(gObjId) , Item , ItemLevel , 0 , ItemSkill , ItemLuck , ItemOpt , -1 , ItemExc , 0 );
GCServerMsgStringSend(MSG02, gObjId, 1);
}
Do you know where I'm wrong?
Thank you for your help.




