Got poblems with /siren
#1

Hello, I got a problem with /siren, it says Unknown Command, when i try to use it..
Here is my code, and im using it as FS, on ServerFFS

Код:
// Siren filterscript for civilian vehicles.
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT

#include <a_samp>

#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print(" Siren");
	print("--------------------------------------\n");
	return 1;
}

if(strcmp(cmd, "/siren", true) == 0)
    {
        if(!IsValidObject(Siren[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, nothing]");
                    SendClientMessage(playerid, COLOR_GREY, "[INFO]: 'nothing' 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(Siren[playerid] != INVALID_OBJECT_ID)
                    {
                        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] = CreateObject(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, "[INFO]: You do already have a siren..."); }
                }
                else if(strcmp(siren, "roof", true, strlen(siren)) == 0)
                {
                    if( Siren[playerid] != INVALID_OBJECT_ID )
                    {
                        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] = CreateObject(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, "[INFO]: You do already have a siren..."); }
                }
                else if(strcmp(siren, "nothing", 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, "[INFO]: Are you a cop?"); }
        }
        return 1;
    }
}
#endif
Reply
#2

pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmd, "/siren", true) == 0)
    {
        if(!IsValidObject(Siren[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, nothing]");
                    SendClientMessage(playerid, COLOR_GREY, "[INFO]: 'nothing' 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(Siren[playerid] != INVALID_OBJECT_ID)
                    {
                        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] = CreateObject(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, "[INFO]: You do already have a siren..."); }
                }
                else if(strcmp(siren, "roof", true, strlen(siren)) == 0)
                {
                    if( Siren[playerid] != INVALID_OBJECT_ID )
                    {
                        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] = CreateObject(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, "[INFO]: You do already have a siren..."); }
                }
                else if(strcmp(siren, "nothing", 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, "[INFO]: Are you a cop?"); }
        }
        return 1;
    }
    return 0;
}
This would work, you forgot to put it inside OnPlayerCommandText
Reply
#3

Quote:
Originally Posted by Wesley221
Посмотреть сообщение
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmd, "/siren", true) == 0)
    {
        if(!IsValidObject(Siren[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, nothing]");
                    SendClientMessage(playerid, COLOR_GREY, "[INFO]: 'nothing' 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(Siren[playerid] != INVALID_OBJECT_ID)
                    {
                        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] = CreateObject(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, "[INFO]: You do already have a siren..."); }
                }
                else if(strcmp(siren, "roof", true, strlen(siren)) == 0)
                {
                    if( Siren[playerid] != INVALID_OBJECT_ID )
                    {
                        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] = CreateObject(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, "[INFO]: You do already have a siren..."); }
                }
                else if(strcmp(siren, "nothing", 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, "[INFO]: Are you a cop?"); }
        }
        return 1;
    }
    return 0;
}
This would work, you forgot to put it inside OnPlayerCommandText
I got 5errors, while compiling it..


Код:
C:\Users\Usman\Desktop\siren.pwn(1) : warning 235: public function lacks forward declaration (symbol "OnPlayerCommandText")
C:\Users\Usman\Desktop\siren.pwn(3) : error 017: undefined symbol "strcmp"
C:\Users\Usman\Desktop\siren.pwn(5) : error 017: undefined symbol "IsValidObject"
C:\Users\Usman\Desktop\siren.pwn(5) : warning 215: expression has no effect
C:\Users\Usman\Desktop\siren.pwn(5) : error 001: expected token: ";", but found "]"
C:\Users\Usman\Desktop\siren.pwn(5) : error 029: invalid expression, assumed zero
C:\Users\Usman\Desktop\siren.pwn(5) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


5 Errors.
Reply
#4

No errors for me, but still Unknown Command.. help?
Reply
#5

Quote:
Originally Posted by Armqus_FIN
Посмотреть сообщение
No errors for me, but still Unknown Command.. help?
But if you work Command ??
Reply
#6

The command is here: if(strcmp(cmd, "/siren", true) == 0) if you mean it, but when i'm IG it says ''Unknown Command''
Reply
#7

Work Command? Hmm?
Reply
#8

you must return the command.
Reply
#9

You mean this; return 1; ? It's already there D:
Reply
#10

Remove the #define FILTERSCRIPT, #if defined FILTERSCRIPT, #endif and try again
Reply
#11

Quote:
Originally Posted by Wesley221
View Post
Remove the #define FILTERSCRIPT, #if defined FILTERSCRIPT, #endif and try again
When they are removed happens this;
Quote:

G:\Documents and Settings\Administrator\Desktop\Ravens Roleplay\filterscripts\siren.pwn(16) : error 017: undefined symbol "cmd"
G:\Documents and Settings\Administrator\Desktop\Ravens Roleplay\filterscripts\siren.pwn(18) : error 017: undefined symbol "Siren"
G:\Documents and Settings\Administrator\Desktop\Ravens Roleplay\filterscripts\siren.pwn(18) : warning 215: expression has no effect
G:\Documents and Settings\Administrator\Desktop\Ravens Roleplay\filterscripts\siren.pwn(18) : error 001: expected token: ";", but found "]"
G:\Documents and Settings\Administrator\Desktop\Ravens Roleplay\filterscripts\siren.pwn(18) : error 029: invalid expression, assumed zero
G:\Documents and Settings\Administrator\Desktop\Ravens Roleplay\filterscripts\siren.pwn(18) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


5 Errors.

Still help needed :D
Reply
#12

Code:
new Sirenobj[MAX_PLAYERS];
PHP Code:
    if(strcmp(cmd"/siren"true) == 0)
    {
        if(
PlayerInfo[playerid][pMember] == || PlayerInfo[playerid][pLeader] == || PlayerInfo[playerid][pMember] == || PlayerInfo[playerid][pLeader] == 2)
        {
            new 
siren[65];
            new 
VID GetPlayerVehicleID(playerid);
            
tmp strtok(cmdtextidx);
            if(!
strlen(tmp))
            {
                
SendClientMessage(playeridCOLOR_GREY"USAGE: /siren [inside, roof, nothing]");
                
SendClientMessage(playeridCOLOR_GREY"[INFO]: 'nothing' will remove the item from your vehicle!");
                return 
1;
            }
            
strmid(sirentmp0strlen(cmdtext), 255);
            if(
strcmp(siren"inside"truestrlen(siren)) == 0)
            {
                if(
Sirenobj[playerid] != INVALID_OBJECT_ID)
                {
                    if(
VID != 426) { return SendClientMessage(playeridCOLOR_LIGHTRED"You need to be in a Premier"); } // If he's not in a Premier...
                    
GetPlayerName(playeridsendernamesizeof(sendername));
                    
Sirenobj[playerid] = CreateObject(1864610.010.010.0000);
                    
AttachObjectToVehicle(Sirenobj[playerid], VID0.00.750.2750.00.10.0);
                    
format(stringsizeof(string), "%s puts the siren on the dashboard."sendername);
                    
ProxDetector(30.0playeridstringCOLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                } else { return 
SendClientMessage(playeridCOLOR_GREY"[INFO]: You do already have a siren..."); }
            }
            else if(
strcmp(siren"roof"truestrlen(siren)) == 0)
            {
                if(
Sirenobj[playerid] != INVALID_OBJECT_ID )
                {
                    if(
VID != 426) { return SendClientMessage(playeridCOLOR_LIGHTRED"You need to be in a Premier"); } // If he's not in a Premier...
                    
GetPlayerName(playeridsendernamesizeof(sendername));
                    
Sirenobj[playerid] = CreateObject(1864610.010.010.0000);
                    
AttachObjectToVehicle(Sirenobj[playerid], VID, -0.430.00.7850.00.10.0);
                    
format(stringsizeof(string), "%s puts the siren on the roof."sendername);
                    
ProxDetector(30.0playeridstringCOLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                } else { return 
SendClientMessage(playeridCOLOR_GREY"[INFO]: You do already have a siren..."); }
            }
            else if(
strcmp(siren"nothing"truestrlen(siren)) == 0)
            {
                
GetPlayerName(playeridsendernamesizeof(sendername));
                
DestroyObject(Sirenobj[playerid]);
                
format(stringsizeof(string), "%s takes down the siren."sendername);
                
ProxDetector(30.0playeridstringCOLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
            }
        }
        return 
1;
    } 
Reply
#13

Also, change "if(strcmp(cmd, "/siren", true) == 0)" in "if(strcmp(cmdtext, "/siren", true) == 0)"
Reply
#14

Updated above post, code is now right
Reply
#15

Quote:
Originally Posted by Wesley221
View Post
Also, change "if(strcmp(cmd, "/siren", true) == 0)" in "if(strcmp(cmdtext, "/siren", true) == 0)"
Still Unknown Command.

Quote:

new Sirenobj[MAX_PLAYERS];

Added it, but Unknown Command still..
Reply
#16

i has quit for a long time scripting pawno but what is ProxDetector
what function have... ?
Reply
#17

Bump
Reply
#18

Bump..
Help, please
Reply
#19

Bump, please help!!
Reply
#20

Cant any try that code, and reply if it works or not? Hmm?'
Sorry for doublepost
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)