/me [action] error
#1

Код:
 if(strcmp("/me",cmdtext, true,10) == 0)
 {
  new sendername[MAX_PLAYER_NAME];
  new string[256];
  new idx;
  tmp=strtok(cmdtext,idx);
	  if(IsPlayerConnected(playerid))
	  {
	    if(login[playerid] == 0)
	    {
	      SendClientMessage(playerid, grey, "<!> not logged!");
	      return 1;
	    }
			GetPlayerName(playerid, sendername, sizeof(sendername));
			new length = strlen(cmdtext);
			while ((idx < length) && (cmdtext[idx] <= ' '))
			{
				idx++;
			}
			new offset = idx;
			new result[128];
			while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
			{
				result[idx - offset] = cmdtext[idx];
				idx++;
			}
			result[idx - offset] = EOS;
			if(!strlen(result))
			{
				SendClientMessage(playerid, grey, "usage: /me [action]");
				return 1;
			}else{
			format(string, sizeof(string), "%s %s", sendername result);
			ProxDetector(30.0, playerid, string, prp,prp,prp,prp,prp);
		}
		}
	}
I'm not see emote whats error?I using cmdtext
Reply
#2

You are not sending a client message to anyone.
Reply
#3

Quote:
Originally Posted by Andom
You are not sending a client message to anyone.
He is, with Prox Detector.

You can use myne if you want, it also stores what the person said in the log file.
Код:
 	if(strcmp(cmd, "/me", true) == 0)
	{
        new pname[18];
		GetPlayerName(playerid, pname, sizeof(pname));
		new length = strlen(cmdtext);
		while ((idx < length) && (cmdtext[idx] <= ' '))
		{
			idx++;
		}
		new offset = idx;
		new result[64];
		while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
		{
			result[idx - offset] = cmdtext[idx];
			idx++;
		}
		result[idx - offset] = EOS;
		if(!strlen(result))
		{
			SendClientMessage(playerid, COLOR_WHITE, "USAGE: /me [action]");
			return 1;
		}
		format(string, sizeof(string), "%s %s", pname, result);
		ProxDetector(10, playerid, string,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
		printf("Local Chat (/me): %s(%d): %s", pname, playerid, result);
 		}
Reply
#4

Quote:
Originally Posted by FunйraL
Код:
 if(strcmp("/me",cmdtext, true,10) == 0)
 {
  new sendername[MAX_PLAYER_NAME];
  new string[256];
  new idx;
  tmp=strtok(cmdtext,idx);
	  if(IsPlayerConnected(playerid))
	  {
	    if(login[playerid] == 0)
	    {
	      SendClientMessage(playerid, grey, "<!> not logged!");
	      return 1;
	    }
			GetPlayerName(playerid, sendername, sizeof(sendername));
			new length = strlen(cmdtext);
			while ((idx < length) && (cmdtext[idx] <= ' '))
			{
				idx++;
			}
			new offset = idx;
			new result[128];
			while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
			{
				result[idx - offset] = cmdtext[idx];
				idx++;
			}
			result[idx - offset] = EOS;
			if(!strlen(result))
			{
				SendClientMessage(playerid, grey, "usage: /me [action]");
				return 1;
			}else{
			format(string, sizeof(string), "%s %s", sendername result);
			ProxDetector(30.0, playerid, string, prp,prp,prp,prp,prp);
		}
		}
	}
I'm not see emote whats error?I using cmdtext
Код:
 if(strcmp("/me",cmdtext, true,10) == 0)
  {
  new sendername[MAX_PLAYER_NAME];
  new string[256];
  new idx;
  tmp=strtok(cmdtext,idx);
	  if(IsPlayerConnected(playerid))
	  {
	    if(login[playerid] == 0)
	    {
	      SendClientMessage(playerid, grey, "<!> not logged!");
	      return 1;
	    }
			GetPlayerName(playerid, sendername, sizeof(sendername));
			new length = strlen(cmdtext);
			while ((idx < length) && (cmdtext[idx] <= ' '))
			{
				idx++;
			}
			new offset = idx;
			new result[128];
			while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
			{
				result[idx - offset] = cmdtext[idx];
				idx++;
			}
			result[idx - offset] = EOS;
			if(!strlen(result))
			{
				SendClientMessage(playerid, grey, "usage: /me [action]");
				return 1;
			}else{
			format(string, sizeof(string), "%s %s", sendername, result);
			ProxDetector(30.0, playerid, string, prp,prp,prp,prp,prp);
		}
		}
	}
Try this, you forgot a comma ,
Reply
#5

The command is long.. It has useless lines..
You could've done it in another way.
Reply
#6

Quote:
Originally Posted by Wurs
Quote:
Originally Posted by FunйraL
Код:
 if(strcmp("/me",cmdtext, true,10) == 0)
 {
  new sendername[MAX_PLAYER_NAME];
  new string[256];
  new idx;
  tmp=strtok(cmdtext,idx);
	  if(IsPlayerConnected(playerid))
	  {
	    if(login[playerid] == 0)
	    {
	      SendClientMessage(playerid, grey, "<!> not logged!");
	      return 1;
	    }
			GetPlayerName(playerid, sendername, sizeof(sendername));
			new length = strlen(cmdtext);
			while ((idx < length) && (cmdtext[idx] <= ' '))
			{
				idx++;
			}
			new offset = idx;
			new result[128];
			while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
			{
				result[idx - offset] = cmdtext[idx];
				idx++;
			}
			result[idx - offset] = EOS;
			if(!strlen(result))
			{
				SendClientMessage(playerid, grey, "usage: /me [action]");
				return 1;
			}else{
			format(string, sizeof(string), "%s %s", sendername result);
			ProxDetector(30.0, playerid, string, prp,prp,prp,prp,prp);
		}
		}
	}
I'm not see emote whats error?I using cmdtext
Код:
 if(strcmp("/me",cmdtext, true,10) == 0)
 {
  new sendername[MAX_PLAYER_NAME];
  new string[256];
  new idx;
  tmp=strtok(cmdtext,idx);
	  if(IsPlayerConnected(playerid))
	  {
	    if(login[playerid] == 0)
	    {
	      SendClientMessage(playerid, grey, "<!> not logged!");
	      return 1;
	    }
			GetPlayerName(playerid, sendername, sizeof(sendername));
			new length = strlen(cmdtext);
			while ((idx < length) && (cmdtext[idx] <= ' '))
			{
				idx++;
			}
			new offset = idx;
			new result[128];
			while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
			{
				result[idx - offset] = cmdtext[idx];
				idx++;
			}
			result[idx - offset] = EOS;
			if(!strlen(result))
			{
				SendClientMessage(playerid, grey, "usage: /me [action]");
				return 1;
			}else{
			format(string, sizeof(string), "%s %s", sendername, result);
			ProxDetector(30.0, playerid, string, prp,prp,prp,prp,prp);
		}
		}
	}
Try this, you forgot a comma ,
Doesnt work
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)