[HELP] /pm problem
#1

I have /pm script from FS "base" but, in pen gm I need to make some changes

i have this

pawn Код:
new cmdd[256];
    new tmpp[256];
    new Message[256];
    new gMessage[256];
    new Message1[256], File:pms=fopen("Log/pms.txt", io_append);
    new pName[MAX_PLAYER_NAME+1];
    new iName[MAX_PLAYER_NAME+1];
    new idxx;
    //new string[256];

    cmdd = strtok(cmdtext, idxx);

    // PM Command
    if(strcmp("/pm", cmdd, true) == 0)
    {
        tmpp = strtok(cmdtext,idxx);

        if(!strlen(tmpp) || strlen(tmpp) > 5) {
            SendClientMessage(playerid,ADMINFS_MESSAGE_COLOR,"Usage: /pm (id) (message)");
            return 1;
        }

        new id = strval(tmpp);
    gMessage = strrest(cmdtext,idxx);

        if(!strlen(gMessage)) {
            SendClientMessage(playerid,ADMINFS_MESSAGE_COLOR,"Usage: /pm (id) (message)");
            return 1;
        }

        if(!IsPlayerConnected(id)) {
            SendClientMessage(playerid,ADMINFS_MESSAGE_COLOR,"/pm : Bad player ID");
            return 1;
        }
        if (gPlayerLogged[playerid] == 0)
      {
        SendClientMessage(playerid, TEAM_CYAN_COLOR, "*Login plz.");
    return 1;
    }
      if(Mute[playerid] == 1)
    {
        SendClientMessage(playerid, TEAM_CYAN_COLOR, "You can't!");
        return 1;
   

        if(playerid != id) {
            GetPlayerName(id,iName,sizeof(iName));
            GetPlayerName(playerid,pName,sizeof(pName));
            format(Message,sizeof(Message),">> %s(%d): %s",iName,id,gMessage);
            SendClientMessage(playerid,PM_OUTGOING_COLOR,Message);
            format(Message,sizeof(Message),"** %s(%d): %s",pName,playerid,gMessage);
            SendClientMessage(id,PM_INCOMING_COLOR,Message);
            PlayerPlaySound(id,1085,0.0,0.0,0.0);
           
            format(Message1,sizeof(Message1),"**PM %s to %s: %s\r\n",pName,iName,gMessage);
        fwrite(pms, Message1);
        fclose(pms);

            printf("PM: %s",Message);
           
      for (new a = 0; a < MAX_PLAYERS; a++)
        {
          if (IsPlayerConnected(a) && IsPlayerAdmin(a) && a != playerid && a != id)
          {
            format(Message1, sizeof(Message1),"**PM %s to %s: %s",pName,iName,gMessage);
            SendClientMessage(a, 0x7E60FFAA, Message1);
          }
        }

        }
        else {
            SendClientMessage(playerid,0x00A1F6F6,"You cannot PM yourself");
        }
        return 1;
    }
that work, but when i try to regist a new account, server shows: unknown command and gm stay all bugged and restart needed

i think problem is here

pawn Код:
new cmdd[256];
    new tmpp[256];
    new Message[256];
    new gMessage[256];
    new Message1[256], File:pms=fopen("Log/pms.txt", io_append);
    new pName[MAX_PLAYER_NAME+1];
    new iName[MAX_PLAYER_NAME+1];
    new idxx;
    //new string[256];

    cmdd = strtok(cmdtext, idxx);
in onplayercommandtext pen gm have this

pawn Код:
new string[256];
    new playermoney;
    new sendername[MAX_PLAYER_NAME];
    new giveplayer[MAX_PLAYER_NAME];
    new playername[MAX_PLAYER_NAME];
    new cmd[256];
    new tmp[256];
    new giveplayerid, moneys, idx;
    new animationplayed;
    new Float:X, Float:Y, Float:Z,Float:Angle;
    cmd = strtok(cmdtext, idx);
someone can help me?
Reply
#2

Help
Reply
#3

try to use this, it s not the coolest but might solve your prob

Код:
	new cmd[256];
	new	tmp[256];
	new Message[256];
	new gMessage[256];
	new pName[MAX_PLAYER_NAME+1];
	new iName[MAX_PLAYER_NAME+1];
	new	idx;

	cmd = strtok(cmdtext, idx);

	if(strcmp("/pm", cmd, true) == 0)
	{
		tmp = strtok(cmdtext,idx);

		if(!strlen(tmp) || strlen(tmp) > 5)
		{
			SendClientMessage(playerid,0xFF0000AA,"Usage: /pm (id) (message)");
			return 1;
		}
		new id = strval(tmp);
    gMessage = strrest(cmdtext,idx);

		if(!strlen(gMessage))
		{
			SendClientMessage(playerid,0xFF0000AA,"Usage: /pm (id) (message)");
			return 1;
		}
		if(!IsPlayerConnected(id))
		{
			SendClientMessage(playerid,0xFF0000AA,"/pm : Bad player ID");
			return 1;
		}
		if(playerid != id)
		{
				GetPlayerName(id,iName,sizeof(iName));
				GetPlayerName(playerid,pName,sizeof(pName));
				format(Message,sizeof(Message),">> %s(%d): %s",iName,id,gMessage);
				SendClientMessage(playerid,0xFFFF00AA,Message);
				format(Message,sizeof(Message),"** %s(%d): %s",pName,playerid,gMessage);
				SendClientMessage(id,0xFFFF00AA,Message);
				PlayerPlaySound(id,1085,0.0,0.0,0.0);
				printf("PM: %s",Message);
		}
		else
		{
			SendClientMessage(playerid,0xFF0000AA,"You cannot PM yourself");
		}
		return 1;
	}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)