Siren system based on SPU ? (+Rep)
#1

Hello,

I tried to make a simplified version of SPU's Special Units Siren script.


Can anyone do it for me ?

All I want is when someone type: /siren

It puts a siren on the roof (for Police cars)

When you type /removesiren it simply remove it.



Thank you,
K9Alex
Reply
#2

pawn Код:
CMD:siren(playerid, params[])
{
    if(PlayerInfo[playerid][pFaction] != LSPD || PlayerInfo[playerid][pFaction] != DHS) {
        new string[128], type;
        new VID = GetPlayerVehicleID(playerid);
        if(sscanf(params, "d", type)) {
            SendClientMessage(playerid, COLOR_WHITE, "USAGE: /siren [type]");
            SendClientMessage(playerid, COLOR_GRAD2, "Type: 1 = Inside, 2 = Roof, 3 = Off.");
            return 1;
        }
        switch(type) {
            case 1:
            {
                if(Siren[VID] == 1)
                    return SendClientMessage(playerid, COLOR_GRAD2, "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);
                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;
            }
            case 2:
            {
                if(Siren[VID] == 1)
                    return SendClientMessage(playerid, COLOR_GRAD2, "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);
                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;
            }
            case 3:
            {
                if(Siren[VID] == 0)
                    return SendClientMessage(playerid, COLOR_GRAD2, "This vehicle doesn't have a siren on it!");

                Siren[VID] = 0;
                new sendername[MAX_PLAYER_NAME];
                GetPlayerName(playerid, sendername, sizeof(sendername));
                DestroyObject(SirenObject[VID]);
                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;
            }
            default:
            {
                SendClientMessage(playerid, COLOR_WHITE, "Invalid license type! /siren [type]");
                SendClientMessage(playerid, COLOR_GRAD2, "Type: 1 = Roof, 2 = Inside, 3 = Off.");
            }
        }
    }
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)