Commands doesn't works
#1

if i do any command say me "Unknown command", give me this error when i add this pawn code

+1 rep for the best
pawn Код:
if(strcmp(cmdtext, "/gang", true, 5) == 0)
    {
        new tmp[256], tmp2[256], Index; tmp = strtok(cmdtext,Index), tmp2 = strtok(cmdtext,Index);
        if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GIALLO, "USE: /gang [create/invite/join/leave/stats/list/radar]");

        if(strcmp(tmp, "info", true) == 0)
        {
            SendClientMessageML(playerid, COLOR_GIALLO, "_________________Guida Sistema Gang_________________", "_________________Tutorial Gang System_________________");
            SendClientMessageML(playerid, COLOR_VERDE, "Conquista: Per poter conquistare GangZone bisogna essere almeno in 2", "Conquest: In order to win GangZone must be at least 2");
            SendClientMessageML(playerid, COLOR_VERDE, "Conquista: Se la GangZone non и di nessuno ci mette 30 secondi, se giа conquistata 2 minuti", "Conquest: If the GangZone is not nobody takes 30 seconds if you are already conquered two minutes");
            SendClientMessageML(playerid, COLOR_VERDE, "Guadagni: Ogni conquista delle GangZone ricevi Punti Skill e Soldi", "Earnings: Every conquest of GangZone receive Skill Points and Money");
            SendClientMessageML(playerid, COLOR_VERDE, "Guadagni: Il founder puo ritirare i ricavi delle zone (Soldi) e puт spartirli, SE VUOLE", "Earnings: The founder may collect the revenues of the zones (money) and can spartirli, HE WANTS");
            SendClientMessageML(playerid, COLOR_VERDE, "Guadagni: Piщ zone avete e piщ soldi avrete", "Earnings: Most areas have and the more money you'll get");
            SendClientMessageML(playerid, COLOR_VERDE, "Ritiro ricavi: Il founder puт ritirare i ricavi andando in un Pickup (Simbolo del $)", "Withdrawal revenues: The founder may withdraw the revenues going into a Pickup ($ symbol)");
            SendClientMessageML(playerid, COLOR_VERDE, "Ritiro ricavi: Il Pickup puт essere trovato in tutte le gangzone (PS: si possono trovare dentro interior a volte", "Withdrawal revenues: The Pickup can be found in all gangzone (PS: you can find inside interior sometimes");
            SendClientMessageML(playerid, COLOR_VERDE, "Gang Chat: Ogni gang ha una sua chat, per usarla basta digitare '!'+ testo (Es: '!Andiamo a conquistare?')", "Gang Chat: Each gang has its own chat, to use it just type '!' + Text (eg '! Let's win?')");
            SendClientMessageML(playerid, COLOR_GIALLO, "______________________________________________________", "______________________________________________________");
            return 1;
        }
        if(strcmp(tmp, "cmds", true) == 0)
        {
            SendClientMessageML(playerid, COLOR_GIALLO, "_________________Comandi Sistema Gang_________________", "_________________Gang System Commands_________________");
            SendClientMessageML(playerid, COLOR_VERDE, "/gang info - Guida del sistema gang", "/gang info - Help the gang system");
            SendClientMessageML(playerid, COLOR_VERDE, "/gang stats - Guardi le info della gang", "/gang stats - Look at the details of the gang");
            SendClientMessageML(playerid, COLOR_VERDE, "/gang list - Genera una lista di gang create assieme alle info della gang", "/gang list - Generate a list of gang created along with the gang info");
            SendClientMessageML(playerid, COLOR_VERDE, "/gang create - Crea una nuova gang", "/gang create - Create a new gang");
            if(PlayerInfo[playerid][GangOwner] == true)
            {
                SendClientMessageML(playerid, COLOR_VERDE, "/gang tag - Setti la tag per la gang", "/gang tag - Set tag for the gang");
                SendClientMessageML(playerid, COLOR_VERDE, "/gang color - Scegli il colore della gang", "/gang color - Select the color of the gang");
                SendClientMessageML(playerid, COLOR_VERDE, "/gang kick - Mandi via un membro della gang", "/gang kick - Kick a member of the gang");
            }
            SendClientMessageML(playerid, COLOR_VERDE, "/gang invite - Inviti un player ad entrare in gang", "/gang invite - Invites a player to enter the gang");
            SendClientMessageML(playerid, COLOR_VERDE, "/gang join - Entri nella gang a cui sei stato invitato", "/gang join - Get into the gang to which you have been invited");
            SendClientMessageML(playerid, COLOR_VERDE, "/gang leave - Abbandoni la gang", "/gang leave - Leave the gang");
            SendClientMessageML(playerid, COLOR_GIALLO, "______________________________________________________", "______________________________________________________");
            return 1;
        }
        if(strcmp(tmp, "create", true) == 0)
        {
            if(PlayerInfo[playerid][GangID] != -1) return SendClientMessageML(playerid, COLOR_VERDE, "Sei giа in una gang, usa /gang leave per lasciare la gang", "You're already in a gang, use /gang leave to leave the gang");
            if(PlayerStats[playerid][Skillz_Gang] == 0) return SendClientMessageML(playerid, COLOR_ROSSO, "Per creare una gang devi avere l'abilita skill 'Gang' maggiore di 0!", "To create a gang you have to have the ability skill 'Gang' greater than 0!");
            ShowPlayerDialogML(playerid, DIALOG_GANGCREATE, DIALOG_STYLE_INPUT, "Crea Gang", "Gang Create", "Inserisci il nome per la tua nuova gang", "Input the nome of your new gang", "Ok", "Ok", "Annulla", "Cancel");
            return 1;
        }
        if(strcmp(tmp, "tag", true) == 0)
        {
            if(PlayerInfo[playerid][GangID] == -1) return SendClientMessageML(playerid, COLOR_ROSSO, "Devi far parte di una gang!", "You aren't in any gang!");
            if(PlayerInfo[playerid][GangOwner] == false) return SendClientMessageML(playerid, COLOR_ROSSO, "Devi essere founder della gang!", "You need to be founder of the gang!");
            ShowPlayerDialogML(playerid, DIALOG_GANGTAG, DIALOG_STYLE_INPUT, "Gang Tag", "Gang Tag", "Inserisci la tag per la tua gang", "Input the tag for your gang", "Ok", "Ok", "Annulla", "Cancel");
            return 1;
        }
        if(strcmp(tmp, "color", true) == 0)
        {
            if(PlayerInfo[playerid][GangID] == -1) return SendClientMessageML(playerid, COLOR_ROSSO, "Non sei in nessuna gang!", "You aren't in any gang!");
            if(PlayerInfo[playerid][GangOwner] == false) return SendClientMessageML(playerid, COLOR_ROSSO, "Devi essere founder della gang!", "You need to be founder of the gang!");
            ShowPlayerDialogML(playerid, DIALOG_GANGCOLOUR, DIALOG_STYLE_LIST, "Cambia Colore Gang", "Change Gang Color", "{FF0000}Rosso\n{9900FF}Fucsia\n{0000FF}Blu\n{0066FF}Celeste\n{00FF00}Verde\n{00FF99}Verde Acqua\n{FFFF00}Giallo\n{FF9900}Arancione\n{663300}Marrone\n{FF6666}Rosa\n{9900FF}Salmone", "{FF0000}Red\n{9900FF}Fuchsia\n{0000FF}Blue\n{0066FF}Light Blue\n{00FF00}Green\n{00FF99}Water Green\n{FFFF00}Yellow\n{FF9900}Orange\n{663300}Brown\n{FF6666}Pink\n{9900FF}Salmon", "Ok", "Ok", "Annulla", "Cancel");
            return 1;
        }
        if(strcmp(tmp, "zone", true) == 0)
        {
            if(!IsPlayerAdmin(playerid)) return SendClientMessageML(playerid, COLOR_VERDE, "Devi essere Admin RCon per usare questo comando!", "You need to be admin RCon to use this command!");
            if(CreatingZone == false)
            {
                GetPlayerPos(playerid, ZonePos[0][0], ZonePos[0][1], ZonePos[0][2]);
                CreatingZone = true;
                SendClientMessageML(playerid, COLOR_GIALLO, "Riesegui il comando dall'altra parte per terminare la creazione", "Redo the command in the other side to terminate the creation");
            }
            else
            {
                CreatingZone = false;
                GetPlayerPos(playerid, ZonePos[1][0], ZonePos[1][1], ZonePos[1][2]);
                for(new zoneid = 1; zoneid < MAX_ZONES; zoneid++) //inizio controllo degli ID liberi
                {
                    new ZoneFile[255];
                    format(ZoneFile,sizeof(ZoneFile),GangZoneFile, zoneid);
                    if(!dini_Exists(ZoneFile))
                    {
                        //salvataggio CFG
                        new cfgFile[255];
                        TotZone ++;
                        format(cfgFile,sizeof(cfgFile),GangCFGFile);
                        dini_Create(cfgFile);
                        dini_IntSet(cfgFile,"TotZone", TotZone);

                        //creazione zona
                        format(ZoneFile,sizeof(ZoneFile),GangZoneFile, zoneid);
                        dini_Create(ZoneFile);
                        dini_IntSet(ZoneFile,"ZoneID", zoneid);
                        dini_IntSet(ZoneFile,"OfGangID", -1);
                        if(ZonePos[0][0] < ZonePos[1][0])
                        {
                            dini_FloatSet(ZoneFile,"X1", ZonePos[0][0]);
                            dini_FloatSet(ZoneFile,"X2", ZonePos[1][0]);
                        }
                        else
                        {
                            dini_FloatSet(ZoneFile,"X1", ZonePos[1][0]);
                            dini_FloatSet(ZoneFile,"X2", ZonePos[0][0]);
                        }
                        if(ZonePos[0][1] < ZonePos[1][1])
                        {
                            dini_FloatSet(ZoneFile,"Y1", ZonePos[0][1]);
                            dini_FloatSet(ZoneFile,"Y2", ZonePos[1][1]);
                        }
                        else
                        {
                            dini_FloatSet(ZoneFile,"Y1", ZonePos[1][1]);
                            dini_FloatSet(ZoneFile,"Y2", ZonePos[0][1]);
                        }
                        ZoneInfo[zoneid][ID] = dini_Int(ZoneFile,"ZoneID");
                        ZoneInfo[zoneid][OfGangID] = dini_Int(ZoneFile,"OfGangID");
                        ZoneInfo[zoneid][PosX1] = dini_Float(ZoneFile,"X1");
                        ZoneInfo[zoneid][PosY1] = dini_Float(ZoneFile,"Y1");
                        ZoneInfo[zoneid][PosX2] = dini_Float(ZoneFile,"X2");
                        ZoneInfo[zoneid][PosY2] = dini_Float(ZoneFile,"Y2");

                        ZoneInfo[zoneid][GZID] = GangZoneCreate(ZoneInfo[zoneid][PosX1], ZoneInfo[zoneid][PosY1], ZoneInfo[zoneid][PosX2], ZoneInfo[zoneid][PosY2]);
                        if(ZoneInfo[zoneid][OfGangID] == -1)
                        {
                            GangZoneShowForAll(ZoneInfo[zoneid][GZID], GCOLOR_GRIGIO);
                        }
                        else
                        {
                            GangZoneShowForAll(ZoneInfo[zoneid][GZID], GangInfo[ZoneInfo[zoneid][OfGangID]][Color]);
                        }
                        ZoneInfo[zoneid][CKID] = CreateDynamicRectangle(ZoneInfo[zoneid][PosX1], ZoneInfo[zoneid][PosY1], ZoneInfo[zoneid][PosX2], ZoneInfo[zoneid][PosY2]);

                        //ferma il ciclo dopo la creazione gang
                        zoneid = MAX_ZONES;
                    }
                }
            }
            return 1;
        }
        if(strcmp(tmp, "pickup", true) == 0)
        {
            if(!IsPlayerAdmin(playerid)) return SendClientMessageML(playerid, COLOR_VERDE, "Devi essere Admin RCon per usare questo comando!", "You need to be admin RCon to use this command!");
            ShowPlayerDialogML(playerid, DIALOG_GANGPICKUP, DIALOG_STYLE_INPUT, "Crea Pickup Zona", "PickUp Zone Create", "Inserisci l'ID della zona a cui assegnare il pickup", "Input the ID of the zone to assign the Pickup", "Ok", "Ok", "Annulla", "Cancel");
            return 1;
        }
        if(strcmp(tmp, "stats", true) == 0)
        {
            new gangid = PlayerInfo[playerid][GangID];
            if(gangid == -1) return SendClientMessageML(playerid, COLOR_ROSSO, "Non sei in nessuna gang!", "You aren't in any gang!");
            new GangFile[255];
            format(GangFile, sizeof(GangFile), GangIDFile, gangid);
            if(!dini_Exists(GangFile)) return SendClientMessageML(playerid, COLOR_ROSSO, "Gang non esistente! Il founder avrа abbandonato la gang...", "Gang doesn't exist! Il founder will abandoned the gang...");
            new MembriOn = 0;
            for(new l = 0; l < MAX_PLAYERS; l++)
            {
                if(IsPlayerConnected(l) && PlayerInfo[l][GangID] == gangid) MembriOn ++;
            }

            new ZoneDellaGang = 0;
            new ZoneFile[255];
            for(new z = 0; z < MAX_ZONES; z++)
            {
                format(ZoneFile, sizeof(ZoneFile), GangZoneFile, z);
                if(dini_Exists(ZoneFile)) if(ZoneInfo[z][OfGangID] == gangid) ZoneDellaGang ++;
            }
            new strITA[255], strENG[255];
            format(strITA, sizeof(strITA), "ID: %d | Nome: %s | Founder: %s | Zone conquistate: %d | Membri Online: %d", GangInfo[gangid][GangID], GangInfo[gangid][GangName], GangInfo[gangid][Owner], ZoneDellaGang, MembriOn);
            format(strENG, sizeof(strENG), "ID: %d | Name: %s | Founder: %s | Conquired zones: %d | Online Members: %d", GangInfo[gangid][GangID], GangInfo[gangid][GangName], GangInfo[gangid][Owner], ZoneDellaGang, MembriOn);
            SendClientMessageML(playerid, GangInfo[gangid][Color], strITA, strENG);
            return 1;
        }
        if(strcmp(tmp, "invite", true) == 0)
        {
            if(PlayerInfo[playerid][GangID] == -1) return SendClientMessageML(playerid, COLOR_ROSSO, "Non sei in nessuna gang!", "You aren't in any gang!");

            new UserFile[255];
            new gangid = PlayerInfo[playerid][GangID];
            format(UserFile, sizeof(UserFile), GangIDFile, GangInfo[gangid][Owner]);
            new ownerskill = dini_Int(UserFile,"Gang");
            if(GangInfo[gangid][Members] == ownerskill) return SendClientMessageML(playerid, COLOR_ROSSO, "Il founder della gang non ha l'abilitа gang sufficente per invitare altri in gang!", "The founder of the gang does not have the ability gang enough to invite others in the gang!");
            ShowPlayerDialog(playerid, DIALOG_GANGINVITE, DIALOG_STYLE_INPUT, "Gang Invite", "Inserisci l'ID del player da invitare", "Ok", "Annulla");
            return 1;
        }
        if(strcmp(tmp, "join", true) == 0)
        {
            if(PlayerInfo[playerid][GangID] != -1) return SendClientMessage(playerid, COLOR_ROSSO, "Fai giа parte di una gang! Usa /gang leave per lasciare la gang attuale");
            if(PlayerInfo[playerid][InvitedByGang] == -1) return SendClientMessage(playerid, COLOR_ROSSO, "Non hai nessun invito gang");

            new UserFile[255];
            new gangid = PlayerInfo[playerid][InvitedByGang];
            format(UserFile, sizeof(UserFile), GangIDFile, GangInfo[gangid][Owner]);
            new ownerskill = dini_Int(UserFile,"Gang");
            if(GangInfo[gangid][Members] == ownerskill) return SendClientMessageML(playerid, COLOR_ROSSO, "Il founder della gang a cui sei stato invitato non ha l'abilitа gang sufficente per invitare altri in gang!", "The founder of the gang does not have the ability gang enough to invite others in the gang!");

            new GangFile[255], pName[MAX_PLAYER_NAME], strITA[255], strENG[255];

            format(GangFile, sizeof(GangFile), GangIDFile, gangid);
            GangInfo[gangid][Members] ++;
            dini_IntSet(GangFile,"Members", GangInfo[gangid][Members]);

            GetPlayerName(playerid, pName, sizeof(pName));
            format(strITA, sizeof(strITA), "%s (ID:%d) и entrato a far parte della gang %s", pName, playerid, GangInfo[PlayerInfo[playerid][InvitedByGang]][GangName]);
            format(strENG, sizeof(strENG), "%s (ID:%d) has joined the gang %s", pName, playerid, GangInfo[PlayerInfo[playerid][InvitedByGang]][GangName]);
            SendClientMessageToAllML(GangInfo[gangid][Color], strITA, strENG);

            format(strITA, sizeof(strITA), "%s (ID:%d) и entrato nella tua gang", pName, playerid);
            format(strENG, sizeof(strENG), "%s (ID:%d) has joined your gang", pName, playerid);
            for(new p = 0; p < MAX_PLAYERS; p++)
            {
                if(IsPlayerConnected(p) && PlayerInfo[p][GangID] == gangid) SendClientMessageML(p, GangInfo[gangid][Color], strITA, strENG);
            }

            SetPlayerColor(playerid, GangInfo[gangid][Color]);

            PlayerInfo[playerid][GangID] = PlayerInfo[playerid][InvitedByGang];

            PlayerInfo[playerid][InvitedByGang] = -1;
            return 1;
        }
        if(strcmp(tmp, "leave", true) == 0)
        {
            if(PlayerInfo[playerid][GangID] == -1) return SendClientMessageML(playerid, COLOR_ROSSO, "Non sei in nessuna gang!", "You aren't in any gang!");
            new GangFile[255], NomeGang[255];
            new gangid = PlayerInfo[playerid][GangID];
            new strITA[255], strENG[255];
            if(PlayerInfo[playerid][GangOwner] == true)
            {
                format(strITA, sizeof(strITA), "Il founder della gang {FFFF00}'%s' {00FF00}ha abbandonato la gang. La gang si и sciolta", GangInfo[gangid][GangName]);
                format(strENG, sizeof(strENG), "The founder of the gang {FFFF00}'%s' {00FF00}has abandoned the gang. The gang has dissolved", GangInfo[gangid][GangName]);
                for(new p = 0; p < MAX_PLAYERS; p++)
                {
                    if(IsPlayerConnected(p) && PlayerInfo[p][GangID] == gangid)
                    {
                        SendClientMessageML(p, COLOR_VERDE, strITA, strENG);
                    }
                }

                for(new z = 1; z < MAX_ZONES; z++)
                {
                    new ZoneFile[255];
                    format(ZoneFile, sizeof(ZoneFile), GangZoneFile, z);
                    if(dini_Exists(ZoneFile))
                    {
                        if(ZoneInfo[z][OfGangID] == gangid)
                        {
                            dini_IntSet(ZoneFile,"OfGangID",-1);

                            ZoneInfo[z][OfGangID] = dini_Int(ZoneFile,"OfGangID");

                            GangZoneShowForAll(ZoneInfo[z][GZID], GCOLOR_GRIGIO);
                        }
                    }
                }

                format(GangFile, sizeof(GangFile), GangIDFile, PlayerInfo[playerid][GangID]);
                if(dini_Exists(GangFile))
                {
                    dini_Remove(GangFile);
                }
                PlayerInfo[playerid][GangOwner] = false;
            }
            else
            {
                format(GangFile, sizeof(GangFile), GangIDFile, gangid);
                GangInfo[gangid][Members] --;
                dini_IntSet(GangFile,"Members", GangInfo[gangid][Members]);

                format(GangFile, sizeof(GangFile), GangIDFile, PlayerInfo[playerid][GangID]);
                if(dini_Exists(GangFile))
                {
                    NomeGang = dini_Get(GangFile,"Name");
                }
                format(strITA, sizeof(strITA), "Hai lasciato la gang %s (ID:%d)", GangInfo[gangid][GangName], gangid);
                format(strENG, sizeof(strENG), "You left the gang %s (ID:%d)", GangInfo[gangid][GangName], gangid);
                SendClientMessageML(playerid, COLOR_VERDE, strITA, strENG);
            }
            PlayerInfo[playerid][GangID] = -1;
            PlayerInfo[playerid][GangOwner] = false;
            return 1;
        }
        if(strcmp(tmp, "kick", true) == 0)
        {
            if(PlayerInfo[playerid][GangOwner] == false) return SendClientMessageML(playerid, COLOR_ROSSO, "Devi essere founder della gang!", "You need to be founder of the gang!");
            ShowPlayerDialogML(playerid, DIALOG_GANGKICK, DIALOG_STYLE_INPUT, "Caccia Player dalla Gang", "Kick Player from Gang", "Inserisci l'ID del player da espellere dalla Gang", "Input the ID of the player to kick by the Gang", "Ok", "Ok", "Annulla", "Cancel");
            return 1;
        }
        if(strcmp(tmp, "list", true) == 0)
        {
            SendClientMessageML(playerid, COLOR_VERDE, "________________Lista delle Gang________________", "________________Gang List________________");
            for(new g = 0; g < MAX_GANGS; g++)
            {
                new GangFile[255], strITA[255], strENG[255];
                format(GangFile, sizeof(GangFile), GangIDFile, g);
                if(dini_Exists(GangFile))
                {
                    new MembriOn = 0;
                    for(new l = 0; l < MAX_PLAYERS; l++)
                    {
                        if(IsPlayerConnected(l) && PlayerInfo[l][GangID] == g) MembriOn ++;
                    }
                    new ZoneDellaGang = 0;
                    new ZoneFile[255];
                    for(new z = 0; z < MAX_ZONES; z++)
                    {
                        format(ZoneFile, sizeof(ZoneFile), GangZoneFile, z);
                        if(dini_Exists(ZoneFile)) if(ZoneInfo[z][OfGangID] == g) ZoneDellaGang ++;
                    }

                    format(strITA, sizeof(strITA), "ID: %d | Nome: %s | Founder: %s | Zone conquistate: %d | Membri: %d | Membri Online: %d", GangInfo[g][GangID], GangInfo[g][GangName], GangInfo[g][Owner], ZoneDellaGang, GangInfo[g][Members], MembriOn);
                    format(strENG, sizeof(strENG), "ID: %d | Name: %s | Founder: %s | Conquired zones: %d | Members: %d | Online Members: %d", GangInfo[g][GangID], GangInfo[g][GangName], GangInfo[g][Owner], ZoneDellaGang, GangInfo[g][Members], MembriOn);
                    SendClientMessageML(playerid, GangInfo[g][Color], strITA, strENG);
                }
            }
            return 1;
        }
        if(strcmp(tmp, "resetcash", true) == 0)
        {
            if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COLOR_VERDE, "Devi essere Admin RCon per usare questo comando!");
            new ZoneFile[255];
            for(new zoneid = 1; zoneid < MAX_ZONES; zoneid++)
            {
                format(ZoneFile, sizeof(ZoneFile), GangZoneFile, zoneid);
                if(dini_Exists(ZoneFile))
                {
                    dini_IntSet(ZoneFile,"Cash", 0);

                    ZoneInfo[zoneid][PickUpCash] = 0;

                    new txt[50];
                    format(txt, sizeof(txt), "Money\n%d$", ZoneInfo[zoneid][PickUpCash]);
                    Update3DTextLabelText(ZoneInfo[zoneid][Label], COLOR_VERDE, txt);
                }
            }
            SendClientMessageML(playerid, COLOR_VERDE, "Soldi delle zone resettate!", "Zones' zone resetted!");
            return 1;
        }
        return 1;
    }
Reply
#2

Post Your Includes pls
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)