ZCMD Siren Not Working
#1

I have a ZCMD siren, problem is it's not working at all. The siren isn't even sending the /me style thing it should, and I'm clueless as to a fix.

pawn Code:
CMD:siren( playerid, params[ ] )
    {
        if(IsPlayerConnected(playerid))
        {
            if(IsACop(playerid))
            {
                new siren[65];
                new VID = GetPlayerVehicleID(playerid);
                if(!strval(params))
                {
                    SendClientMessage(playerid, COLOR_WHITE, "USAGE: /siren [inside, roof, remove]");
                    SendClientMessage(playerid, COLOR_GREY, "HINT: 'off' will remove the item from your vehicle.");
                    return 1;
                }
                strmid(siren, params, 0, strlen(params), 255);
                if(strcmp(siren, "inside", true, strlen(siren)) == 0)
                {
                    if(Siren[VID] == 0)
                    {
                        new sendername[MAX_PLAYER_NAME];
                        Siren[VID] = 1;
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        SirenObject[VID] = CreateObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
                        AttachObjectToVehicle(SirenObject[VID], VID, 0.0, 0.75, 0.275, 0.0, 0.1, 0.0);
                        new string[128];
                        format(string, sizeof(string), "* %s puts the siren on the dashboard.", sendername);
                        ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                    } else { return SendClientMessage(playerid, COLOR_GREY, "This vehicle already has a siren!"); }
                }
                else if(strcmp(siren, "roof", true, strlen(siren)) == 0)
                {
                    if(Siren[VID] == 0)
                    {
                        Siren[VID] = 1;
                        new sendername[MAX_PLAYER_NAME];
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        SirenObject[VID] = CreateObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
                        AttachObjectToVehicle(SirenObject[VID], VID, -0.43, 0.0, 0.785, 0.0, 0.1, 0.0);
                        new string[128];
                        format(string, sizeof(string), "* %s puts the siren on the roof.", sendername);
                        ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                    } else { return SendClientMessage(playerid, COLOR_GREY, "This vehicle already has a siren!"); }
                }
                else if(strcmp(siren, "remove", true, strlen(siren)) == 0)
                {
                    if(Siren[VID] == 1)
                    {
                        Siren[VID] = 0;
                        new sendername[MAX_PLAYER_NAME];
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        DestroyObject(SirenObject[VID]);
                        new string[128];
                        format(string, sizeof(string), "* %s takes down the siren.", sendername);
                        ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                    } else { return SendClientMessage(playerid, COLOR_GREY, "This vehicle doesn't have siren!"); }
                }
            } else { SendClientMessage(playerid, COLOR_GREY, "   You are not part of a Team!"); }
        }
        return 1;
    }
Reply
#2

ccc You already have params as parameter. You only have to check is it matching with command. This should work
pawn Code:
CMD:siren( playerid, params[])
{
    if(!IsACop(playerid)) return SendClientMessage(playerid, COLOR_GREY, "   You are not part of a Team!");
    new VID = GetPlayerVehicleID(playerid);
    if(isnull(params))
    {
        SendClientMessage(playerid, COLOR_WHITE, "USAGE: /siren [inside, roof, remove]");
        SendClientMessage(playerid, COLOR_GREY, "HINT: 'off' will remove the item from your vehicle.");
        return 1;
    }
    if(!strcmp(params, "inside", true))
    {
        if(Siren[VID] !=0) return SendClientMessage(playerid, COLOR_GREY, "This vehicle already has a siren!");
        new sendername[MAX_PLAYER_NAME];
        Siren[VID] = 1;
        GetPlayerName(playerid, sendername, sizeof(sendername));
        SirenObject[VID] = CreateObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
        AttachObjectToVehicle(SirenObject[VID], VID, 0.0, 0.75, 0.275, 0.0, 0.1, 0.0);
        new string[128];
        format(string, sizeof(string), "* %s puts the siren on the dashboard.", sendername);
        ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
        return 1;
    }
    if(!strcmp(params, "roof", true))
    {
        if(Siren[VID] !=0) return SendClientMessage(playerid, COLOR_GREY, "This vehicle already has a siren!");
        Siren[VID] = 1;
        new sendername[MAX_PLAYER_NAME];
        GetPlayerName(playerid, sendername, sizeof(sendername));
        SirenObject[VID] = CreateObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
        AttachObjectToVehicle(SirenObject[VID], VID, -0.43, 0.0, 0.785, 0.0, 0.1, 0.0);
        new string[128];
        format(string, sizeof(string), "* %s puts the siren on the roof.", sendername);
        ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
        return 1;
    }
    if(strcmp(params, "remove", true))
    {
        if(Siren[VID] !=1) return SendClientMessage(playerid, COLOR_GREY, "This vehicle doesn't have a siren!");
        Siren[VID] = 0;
        new sendername[MAX_PLAYER_NAME];
        GetPlayerName(playerid, sendername, sizeof(sendername));
        DestroyObject(SirenObject[VID]);
        new string[128];
        format(string, sizeof(string), "* %s takes down the siren.", sendername);
        ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
        return 1;
    }
    else return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /siren [inside, roof, remove]");
}
NOTE: UNTESTED!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)