Private Message
#1

Hello im here to ask about the command /pm , not working on my GameMode. I Checked BARE.PWN but dint find anything about it. Could any one please help me?
Reply
#2

Default PM system has been removed from sa-mp, check base.pwn filterscript for information about scripting your own.
Reply
#3

Quote:
Originally Posted by XeoN_13
Hello im here to ask about the command /pm , not working on my GameMode. I Checked BARE.PWN but dint find anything about it. Could any one please help me?
This was answered millions of times.
pawn Код:
#define ADMINFS_MESSAGE_COLOR 0xFF444499
#define PM_INCOMING_COLOR   0xFFFF22AA
#define PM_OUTGOING_COLOR   0xFFCC2299
pawn Код:
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;
pawn Код:
if(strcmp("/pm", cmd, true) == 0)
    {
        tmp = strtok(cmdtext,idx);
       
        if(!strlen(tmp) || strlen(tmp) > 5) {
            SendClientMessage(playerid,ADMINFS_MESSAGE_COLOR,"Usage: /pm (id) (message)");
            return 1;
        }
       
        new id = strval(tmp);
    gMessage = strrest(cmdtext,idx);
   
        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(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);
           
            printf("PM: %s",Message);
           
        }
        else {
            SendClientMessage(playerid,ADMINFS_MESSAGE_COLOR,"You cannot PM yourself");
        }
        return 1;
    }
Here is all you need.
Reply
#4

Ok once i try to compli i get some erros, Could it be because i have this under onplayercommand?

Код:
	public OnPlayerCommandText(playerid, cmdtext[])
	{
	printf("DEBUG: OnPlayerCommandText(%d, %s)", playerid, cmdtext);
	new pName[MAX_PLAYER_NAME];
	GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
	new playermoney;
	new sendername[MAX_PLAYER_NAME];
	new giveplayer[MAX_PLAYER_NAME];
	new cmd[256];
	new giveplayerid, moneys, idx;

	cmd = strtok(cmdtext, idx);
Reply
#5

What errors it gives you?
Reply
#6

Just add the base filterscript to your server.cfg

Код:
filterscripts base
Reply
#7

Код:
C:\Documents and Settings\Owner\Desktop\G.pwn(264) : error 017: undefined symbol "pName"
C:\Documents and Settings\Owner\Desktop\G.pwn(272) : warning 219: local variable "tmp" shadows a variable at a preceding level
C:\Documents and Settings\Owner\Desktop\G.pwn(277) : error 021: symbol already defined: "idx"
C:\Documents and Settings\Owner\Desktop\G.pwn(294) : error 017: undefined symbol "strrest"
C:\Documents and Settings\Owner\Desktop\G.pwn(294) : error 033: array must be indexed (variable "gMessage")
C:\Documents and Settings\Owner\Desktop\G.pwn(269) : warning 203: symbol is never used: "idx"
C:\Documents and Settings\Owner\Desktop\G.pwn(2517) : warning 203: symbol is never used: "tmp"
i have this:
Код:
	public OnPlayerCommandText(playerid, cmdtext[])
	{
	printf("DEBUG: OnPlayerCommandText(%d, %s)", playerid, cmdtext);
	GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
	new playermoney;
	new sendername[MAX_PLAYER_NAME];
	new giveplayer[MAX_PLAYER_NAME];
	new cmd[256];
	new giveplayerid, moneys, idx;
	

	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);
Reply
#8

Learn not to use 256 cells where you don't need them.
Reply
#9

Quote:
Originally Posted by XeoN_13
Код:
C:\Documents and Settings\Owner\Desktop\G.pwn(264) : error 017: undefined symbol "pName"
C:\Documents and Settings\Owner\Desktop\G.pwn(272) : warning 219: local variable "tmp" shadows a variable at a preceding level
C:\Documents and Settings\Owner\Desktop\G.pwn(277) : error 021: symbol already defined: "idx"
C:\Documents and Settings\Owner\Desktop\G.pwn(294) : error 017: undefined symbol "strrest"
C:\Documents and Settings\Owner\Desktop\G.pwn(294) : error 033: array must be indexed (variable "gMessage")
C:\Documents and Settings\Owner\Desktop\G.pwn(269) : warning 203: symbol is never used: "idx"
C:\Documents and Settings\Owner\Desktop\G.pwn(2517) : warning 203: symbol is never used: "tmp"
i have this:
Код:
	public OnPlayerCommandText(playerid, cmdtext[])
	{
	printf("DEBUG: OnPlayerCommandText(%d, %s)", playerid, cmdtext);
	GetPlayerName(playerid,pName,MAX_PLAYER_NAME);
	new playermoney;
	new sendername[MAX_PLAYER_NAME];
	new giveplayer[MAX_PLAYER_NAME];
	new cmd[256];
	new giveplayerid, moneys, idx;
	

	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);
Add this include

pawn Код:
#include "../include/gl_common.inc"
Reply
#10

Quote:
Originally Posted by Don Correlli
Sorry but im not a pawno smart guy like you
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)