Object Don't destroy and sometime don't even attach
#1

pawn Код:
if(strcmp(cmd, "/siren", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2)
            {
                new Siren[65];
                new VID = GetPlayerVehicleID(playerid);
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid, COLOR_GREY, "USAGE: /siren [inside, roof, remove]");
                    SendClientMessage(playerid, COLOR_GREY, "[INFO]: 'remove' will remove the item from your vehicle!");
                    return 1;
                }
                strmid(Siren, tmp, 0, strlen(cmdtext), 255);
                if(strcmp(Siren, "inside", true, strlen(Siren)) == 0)
                {
                    if(!IsValidObject(Siren[playerid]))
                    {
                        //if(VID != 426) { return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to be in a Premier model!"); } // If he's not in a Premier...
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        Siren[playerid] = CreateDynamicObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
                        AttachObjectToVehicle(Siren[playerid], VID, 0.0, 0.75, 0.275, 0.0, 0.1, 0.0); // Inside - Premier
                        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, "[ERROR] You do already have a siren!"); }
                }
                else if(strcmp(Siren, "roof", true, strlen(Siren)) == 0)
                {
                    if(!IsValidObject(Siren[playerid]))
                    {
                        //if(VID != 426) { return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to be in a Premier model!"); } // If he's not in a Premier...
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        Siren[playerid] = CreateDynamicObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
                        AttachObjectToVehicle(Siren[playerid], VID, -0.43, 0.0, 0.785, 0.0, 0.1, 0.0); // tak - Premier
                        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, "[ERROR] You do already have a siren!"); }
                }
                else if(strcmp(Siren, "remove", true, strlen(Siren)) == 0)
                {
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    DestroyObject(Siren[playerid]);
                    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 { SendClientMessage(playerid, COLOR_GREY, "[ERROR] You are not a member of the LSPD / FBI !"); }
        }
        return 1;
    }

Well...When i do /siren remove it don't get removed...and sometimes... it don't even work /siren inside-roof..it don't attach.. Any help ?
Reply
#2

Same as this topic:
http://forum.sa-mp.com/showpost.php?...3&postcount=17
Reply
#3

Well...That's actaully Was MY code and i gave him to it lol , Anyway he made much edits in it...so can you fix this one please ?
Reply
#4

Just because you said "please":
pawn Код:
new Siren[MAX_VEHICLES];

if(strcmp(cmd, "/siren", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2)
            {
                new VID = GetPlayerVehicleID(playerid);
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid, COLOR_GREY, "USAGE: /siren [inside, roof, remove]");
                    SendClientMessage(playerid, COLOR_GREY, "[INFO]: 'remove' will remove the item from your vehicle!");
                    return 1;
                }
                strmid(Siren, tmp, 0, strlen(cmdtext), 255);
                if(strcmp(Siren, "inside", true, strlen(Siren)) == 0)
                {
                    if(!IsValidObject(Siren[playerid]))
                    {
                        //if(VID != 426) { return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to be in a Premier model!"); } // If he's not in a Premier...
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        Siren[VID] = CreateDynamicObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
                        AttachObjectToVehicle(Siren[VID], VID, 0.0, 0.75, 0.275, 0.0, 0.1, 0.0); // Inside - Premier
                        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, "[ERROR] You do already have a siren!"); }
                }
                else if(strcmp(Siren, "roof", true, strlen(Siren)) == 0)
                {
                    if(!IsValidObject(Siren[playerid]))
                    {
                        //if(VID != 426) { return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to be in a Premier model!"); } // If he's not in a Premier...
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        Siren[VID] = CreateDynamicObject(18646, 10.0, 10.0, 10.0, 0, 0, 0);
                        AttachObjectToVehicle(Siren[VID], VID, -0.43, 0.0, 0.785, 0.0, 0.1, 0.0); // tak - Premier
                        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, "[ERROR] You do already have a siren!"); }
                }
                else if(strcmp(Siren, "remove", true, strlen(Siren)) == 0)
                {
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    DestroyObject(Siren[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);
                }
            } else { SendClientMessage(playerid, COLOR_GREY, "[ERROR] You are not a member of the LSPD / FBI !"); }
        }
        return 1;
    }
Reply
#5

Don't work..The Siren don't even attach AT ALL
Reply
#6

pawn Код:
if(strcmp(cmd, "/siren", true) == 0)
        {
            if(IsPlayerConnected(playerid))
            {
                if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pMember] == 2)
                {
                    new VID = GetPlayerVehicleID(playerid);
                    tmp = strtok(cmdtext, idx);
                    if(!strlen(tmp))
                    {
                        SendClientMessage(playerid, COLOR_GREY, "USAGE: /siren [inside[lvpd,premier], roof[lvpd/premier], remove]");
                        SendClientMessage(playerid, COLOR_GREY, "[INFO]: 'remove' will remove the item from your vehicle!");
                        return 1;
                    }
                    strmid(Siren, tmp, 0, strlen(cmdtext), 255);
                    if(strcmp(Siren, "insidepremier", true, strlen(Siren)) == 0)
                    {
                        if(!IsValidObject(Siren[playerid]))
                        {
                            if(!IsPlayerInAnyVehicle(playerid)) { return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to be in a Premier / LVPD Cruiser / Cheetah!"); } // If he's not in a Premier...
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            Siren[VID] = CreateObject(18646, 0.575378418, 0.786132812, 0.361483574, 0, 0, 0);
                            AttachObjectToVehicle(Siren[VID], VID, 0.0, 0.75, 0.275, 0.0, 0.1, 0.0); // Inside - Premier
                            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
                        {
                        SendClientMessage(playerid, COLOR_GREY, "[ERROR] You do already have a siren!");
                        return 1;
                        }
                    }
                    else if(strcmp(Siren, "insidelvpd", true, strlen(Siren)) == 0)
                    {
                        if(!IsValidObject(Siren[VID]))
                        {
                            if(!IsPlayerInAnyVehicle(playerid)) { return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to be in a Premier / LVPD Cruiser / Cheetah!"); }
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            Siren[playerid] = CreateObject(18646,  -0.0048828125, -0.860107422, 0.848770142, 0, 0, 0);
                            AttachObjectToVehicle(Siren[VID], VID, 0.406738281, 0.696777344, 0.398208618, 0, 0, 0); // tak - Premier
                            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, "[ERROR] You do already have a siren!"); }
                    }
                    else if(strcmp(Siren, "rooflvpd", true, strlen(Siren)) == 0)
                    {
                        if(!IsValidObject(Siren[VID]))
                        {
                            if(!IsPlayerInAnyVehicle(playerid)) { return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to be in a Premier / LVPD Cruiser / Cheetah!"); }
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            Siren[playerid] = CreateObject(18646,  -0.0048828125, -0.860107422, 0.848770142, 0, 0, 0);
                            AttachObjectToVehicle(Siren[VID], VID, 0.0, 0.0, 0.75, 0, 0, 0); // tak - Premier
                            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, "[ERROR] You do already have a siren!"); }
                    }
                    else if(strcmp(Siren, "roofpremier", true, strlen(Siren)) == 0)
                    {
                        if(!IsValidObject(Siren[VID]))
                        {
                            if(!IsPlayerInAnyVehicle(playerid)) { return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to be in a Premier / LVPD Cruiser / Cheetah!"); }
                            GetPlayerName(playerid, sendername, sizeof(sendername));
                            Siren[playerid] = CreateObject(18646, -0.455505371, -0.143066406, 0.861475945, 0, 0, 0);
                            AttachObjectToVehicle(Siren[VID], VID, 0.0, 0.0, 0.75, 0, 0, 0); // tak - Premier
                            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, "[ERROR] You do already have a siren!"); }
                    }

                    else if(strcmp(Siren, "remove", true, strlen(Siren)) == 0)
                    {
                        GetPlayerName(playerid, sendername, sizeof(sendername));
                        DestroyObject(Siren[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);
                    }
                } else { SendClientMessage(playerid, COLOR_GREY, "[ERROR] You are not a member of the SASD / FBI !"); }
            }
            return 1;
        }
This one works for me, edit it.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)