All pastes #383917 Raw Edit

Untitled

public text v1 · immutable
·published 2007-03-06 18:25 UTC
rendered paste body
#include <a_samp>

forward OnGameModeInit();
forward OnPlayerCommandText(playerid, cmdtext[]);

#define cmd(%1) if((strcmp(cmdtext,%1,true,strlen(%1))==0)&&(((cmdtext[strlen(%1)]==0)&&(d%1(playerid,"")))||((cmdtext[strlen(%1)]==32)&&(d%1(playerid,cmdtext[strlen(%1)+1]))))) return 1

new cmd_test[] = "/a";


main() print("\nThis is a test script.");


public OnGameModeInit()
{
    print("\n\n");

    print("test: /");
    OnPlayerCommandText(0,"/");
	
    print("test: /a");
    OnPlayerCommandText(0,"/a");
	
    print("test: /a b");
    OnPlayerCommandText(0,"/a b");
	
    print("test: /a b 0");
    OnPlayerCommandText(0,"/a b 0");
	
    print("test: /a b 1");
    OnPlayerCommandText(0,"/a b 1");
	
    print("test: /a b 2");
    OnPlayerCommandText(0,"/a b 2");

    return 1;
}


dcmd_test(playerid, param[])
{
    #pragma unused playerid
    if (!param[0])
    {
        print("no: need a parameter\n");
        return 1;
    }
    else if (!strcmp(param,"b"))
    {
        new pos = strval(param[strfind(param," ")]);
        if (!pos)
        {
            printf("no: %d\n",pos);
            return 1;
        }
        printf("ok: %d\n",pos);
        return 1;
    }
    return 0;
}


public OnPlayerCommandText(playerid, cmdtext[])
{
    cmd(cmd_test);
    print("no: bad command\n");
    return 0;
}