Jump to content

Cerere Tutorial


R3dD

Recommended Posts

Uite aici, o comanda, trebuie sa mearga si pe MySQL si pe Dini.

[pawn] if(strcmp(cmd, "/leaderchat", true) == 0 || strcmp(cmd, "/lc", true) == 0)

{

new sendername[MAX_PLAYER_NAME], idx;

if(PlayerInfo[playerid][pLeader] <= 1)

return SendClientMessage(playerid, COLOR_ERROR, "Not a game master");

GetPlayerName(playerid, sendername, sizeof(sendername));

new length = strlen(cmdtext);

while ((idx < length) && (cmdtext[idx] <= ' '))

{

idx++;

}

new offset = idx;

new result[182];

while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))

{

result[idx - offset] = cmdtext[idx];

idx++;

}

result[idx - offset] = EOS;

if(!strlen(result))

return SendClientMessage(playerid, COLOR_SYN, "Syntax: (/lc)leaderchat <text>");

if (PlayerInfo[playerid][pLeader] >= 1)

format(string, sizeof(string), "{Leader - %s[%d]: %s", sendername, playerid , result);

for(new i = 0; i < MAX_PLAYERS; i++)

{

if(IsPlayerConnected(i))

{

    if(PlayerInfo[pLeader] >= 1)

    {

SendClientMessage(i, 0xC0C0C0FF, string);

}

}

}

return 1;

}[/pawn]

Link to comment
Share on other sites

La cea postata de Wopss sar putea sa ai erori...sa nu ai unele variabile definite + ca pe rgaming nu e PlayerInfo, ci "PlayerData". Uite aici o comanda calumea:

if(strcmp(cmd, "/lc", true) == 0 || strmcp(cmd, "/leaderchat", true) == 0)

{

    if(IsPlayerConnected(playerid))

    {

        if(PlayerData[playerid][pMuted] == 1)

{

SendClientMessage(playerid, COLOR_LIGHTRED, "Nu poti folosi /lc, esti mutit!");

return 1;

}

    if(gPlayerLogged[playerid] == 0)

        {

            SendClientMessage(playerid, COLOR_GREY, "{ffffff}Ne pare rau, dar nu esti logat pentru a utiliza aceata comanda!");

            return 1;

        }

        new length = strlen(cmdtext);

while ((idx < length) && (cmdtext[idx] <= ' '))

{

idx++;

}

new offset = idx;

new result[256];

while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))

{

result[idx - offset] = cmdtext[idx];

idx++;

}

result[idx - offset] = EOS;

result[0] = toupper(result[0]);

if(!strlen(result))

{

SendUsage(playerid,"(/lc) [leader chat]");

return 1;

}

        if(FindIP(result)) /// Anti-Reclama

{

                new playersip[256];

GetPlayerIp(playerid, playersip, sizeof(playersip));

    new year, month,day;

getdate(year, month, day);

format(string, sizeof(string), "AdmCmd: %s a primit ban de la AdmBOT, motivul: /lc %s (%d-%d-%d)", sendername,(result),month,day,year);

AdmCmdsLog(string);

format(string, sizeof(string), "AdmBOT: %s a primit Ban Permanent de la AdmBot, Motiv: Reclama(pe /lc)!", sendername);

SendClientMessageToAll(COLOR_LIGHTRED, string);

SendClientMessage(playerid, COLOR_YELLOW, "Pentru unban vizitati [forumul tau]");

SendClientMessage(playerid, COLOR_YELLOW, "Nu uita sa faci poza {FF0000}(F8)");

PlayerData[playerid][pLocked] = 1;

MySQLADDBan(PlayerData[playerid][pSQLID]);

                new query[MAX_STRING];

format(query, MAX_STRING, "UPDATE cars SET ");

new hour,minuite,second;

gettime(hour,minuite,second);

format(query, sizeof(query), "UPDATE banuri SET BanmD='%d' WHERE idd=%d", minuite, PlayerData[playerid][pSQLID]);

mysql_query(query);

format(query, sizeof(query), "UPDATE banuri SET BanoD='%d' WHERE idd=%d", hour, PlayerData[playerid][pSQLID]);

mysql_query(query);

format(query, sizeof(query), "UPDATE banuri SET BanzD='%d' WHERE idd=%d", day, PlayerData[playerid][pSQLID]);

mysql_query(query);

format(query, sizeof(query), "UPDATE banuri SET BanlD='%d' WHERE idd=%d", month, PlayerData[playerid][pSQLID]);

mysql_query(query);

format(query, sizeof(query), "UPDATE banuri SET BanaD='%d' WHERE idd=%d", year, PlayerData[playerid][pSQLID]);

mysql_query(query);

format(query, sizeof(query), "UPDATE banuri SET Nume='%s' WHERE idd=%d", PlayerData[playerid][pNume], PlayerData[playerid][pSQLID]);

mysql_query(query);

format(query, sizeof(query), "UPDATE banuri SET AdminBan='AdmBOT' WHERE idd=%d", PlayerData[playerid][pSQLID]);

mysql_query(query);

format(query, sizeof(query), "UPDATE banuri SET BanReason='Reclama' WHERE idd=%d", PlayerData[playerid][pSQLID]);

mysql_query(query);

format(query, sizeof(query), "UPDATE banuri SET PlayerIP='%s' WHERE idd=%d", playersip, PlayerData[playerid][pSQLID]);

mysql_query(query);

format(query, sizeof(query), "UPDATE players SET Locked='%d' WHERE id=%d", PlayerData[playerid][pLocked], PlayerData[playerid][pSQLID]);

mysql_query(query);

BanEx(playerid, "Reclama");

return 1;

}

GetPlayerName(playerid, sendername, sizeof(sendername));

if (PlayerData[playerid][pLeader] >= 1)

{

                new ltext[10];

                if(PlayerData[playerid][pLeader] == 1)

                {

                    ltext = "P.Romana";

}

else if(PlayerData[playerid][pLeader] == 2)

                {

                    ltext = "S.R.I.";

}

else if(PlayerData[playerid][pLeader] == 3)

                {

                    ltext = "A.Romana";

}

else if(PlayerData[playerid][pLeader] == 4)

                {

                    ltext = "SMURD";

}

else if(PlayerData[playerid][pLeader] == 5)

                {

                    ltext = "Rromii";

}

else if(PlayerData[playerid][pLeader] == 6)

                {

                    ltext = "Taxi";

}

else if(PlayerData[playerid][pLeader] == 7)

                {

                    ltext = "S.Instructor";

}

else if(PlayerData[playerid][pLeader] == 8)

                {

                    ltext = "Hitman Ag.";

}

else if(PlayerData[playerid][pLeader] == 9)

                {

                    ltext = "N.Reporter";

}

else if(PlayerData[playerid][pLeader] == 10)

                {

                    ltext = "Remorcari";

}

else if(PlayerData[playerid][pLeader] == 11)

                {

                    ltext = "C.Sadoveanu";

}

else if(PlayerData[playerid][pLeader] == 12)

                {

                    ltext = "C.Capone";

}

else if(PlayerData[playerid][pLeader] == 13)

                {

                    ltext = "C.Duduianu";

}

else if(PlayerData[playerid][pLeader] == 14)

                {

                    ltext = "C.Corsicanu";

}

else if(PlayerData[playerid][pLeader] == 15)

                {

                    ltext = "C.Tobosaru";

}

else if(PlayerData[playerid][pLeader] == 16)

                {

                    ltext = "C.Camataru";

}

for(new i = 0; i < MAX_PLAYERS; i ++)

{

    if(PlayerData[pLeader] >= 1)

    {

        format(string, sizeof(string), "[LeaderChat] (%s) %s: %s.", ltext, sendername, (result));

        SendClientMessage(i, COLOR_LIGHTGREEN, string);

}

}

}

else

{

    SendClientMessage(playerid, COLOR_GRAD2, "Nu esti lider la nicio factiune! => Acces respins!");

    return 1;

}

}

return 1;

}

Link to comment
Share on other sites

Multumesc pentru ajutor. pentru cei care au nevoie de comanda are cateva bug-uri...

if(strcmp(cmd, "/lc", true) == 0 || strcmp(cmd, "/leaderchat", true) == 0)

  {

      if(IsPlayerConnected(playerid))

      {

          if(PlayerData[playerid][pMuted] == 1)

        {

            SendClientMessage(playerid, COLOR_LIGHTRED, "Nu poti folosi /lc, esti mutit!");

            return 1;

        }

          if(gPlayerLogged[playerid] == 0)

          {

              SendClientMessage(playerid, COLOR_GREY, "{ffffff}Ne pare rau, dar nu esti logat pentru a utiliza aceata comanda!");

              return 1;

          }

          new length = strlen(cmdtext);

        while ((idx < length) && (cmdtext[idx] <= ' '))

        {

            idx++;

        }

        new offset = idx;

        new result[256];

        while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))

        {

            result[idx - offset] = cmdtext[idx];

            idx++;

        }

        result[idx - offset] = EOS;

        result[0] = toupper(result[0]);

        if(!strlen(result))

        {

            SendUsage(playerid,"(/lc) [leader chat]");

            return 1;

        }

          if(FindIP(result)) /// Anti-Reclama

        {

                new playersip[256];

            GetPlayerIp(playerid, playersip, sizeof(playersip));

            new year, month,day;

            getdate(year, month, day);

            format(string, sizeof(string), "AdmCmd: %s a primit ban de la AdmBOT, motivul: /lc %s (%d-%d-%d)", sendername,(result),month,day,year);

            AdmCmdsLog(string);

            format(string, sizeof(string), "AdmBOT: %s a primit Ban Permanent de la AdmBot, Motiv: Reclama(pe /lc)!", sendername);

            SendClientMessageToAll(COLOR_LIGHTRED, string);

            SendClientMessage(playerid, COLOR_YELLOW, "Pentru unban vizitati [forumul tau]");

            SendClientMessage(playerid, COLOR_YELLOW, "Nu uita sa faci poza {FF0000}(F8)");

            PlayerData[playerid][pLocked] = 1;

            MySQLADDBan(PlayerData[playerid][pSQLID]);

                new query[MAX_STRING];

            format(query, MAX_STRING, "UPDATE cars SET ");

            new hour,minuite,second;

            gettime(hour,minuite,second);

            format(query, sizeof(query), "UPDATE banuri SET BanmD='%d' WHERE idd=%d", minuite, PlayerData[playerid][pSQLID]);

            mysql_query(query);

            format(query, sizeof(query), "UPDATE banuri SET BanoD='%d' WHERE idd=%d", hour, PlayerData[playerid][pSQLID]);

            mysql_query(query);

            format(query, sizeof(query), "UPDATE banuri SET BanzD='%d' WHERE idd=%d", day, PlayerData[playerid][pSQLID]);

            mysql_query(query);

            format(query, sizeof(query), "UPDATE banuri SET BanlD='%d' WHERE idd=%d", month, PlayerData[playerid][pSQLID]);

            mysql_query(query);

            format(query, sizeof(query), "UPDATE banuri SET BanaD='%d' WHERE idd=%d", year, PlayerData[playerid][pSQLID]);

            mysql_query(query);

            format(query, sizeof(query), "UPDATE banuri SET Nume='%s' WHERE idd=%d", PlayerData[playerid][pNume], PlayerData[playerid][pSQLID]);

            mysql_query(query);

            format(query, sizeof(query), "UPDATE banuri SET AdminBan='AdmBOT' WHERE idd=%d", PlayerData[playerid][pSQLID]);

            mysql_query(query);

            format(query, sizeof(query), "UPDATE banuri SET BanReason='Reclama' WHERE idd=%d", PlayerData[playerid][pSQLID]);

            mysql_query(query);

            format(query, sizeof(query), "UPDATE banuri SET PlayerIP='%s' WHERE idd=%d", playersip, PlayerData[playerid][pSQLID]);

            mysql_query(query);

            format(query, sizeof(query), "UPDATE players SET Locked='%d' WHERE id=%d", PlayerData[playerid][pLocked], PlayerData[playerid][pSQLID]);

            mysql_query(query);

            BanEx(playerid, "Reclama");

            return 1;

        }

        GetPlayerName(playerid, sendername, sizeof(sendername));

        if (PlayerData[playerid][pLeader] >= 1)

        {

                new ltext[20];

                if(PlayerData[playerid][pLeader] == 1)

                {

                    ltext = "P.Romana";

            }

            else if(PlayerData[playerid][pLeader] == 2)

                {

                    ltext = "S.R.I.";

            }

            else if(PlayerData[playerid][pLeader] == 3)

                {

                    ltext = "A.Romana";

            }

            else if(PlayerData[playerid][pLeader] == 4)

                {

                    ltext = "SMURD";

            }

            else if(PlayerData[playerid][pLeader] == 5)

                {

                    ltext = "Rromii";

            }

            else if(PlayerData[playerid][pLeader] == 6)

                {

                    ltext = "Taxi";

            }

            else if(PlayerData[playerid][pLeader] == 7)

                {

                    ltext = "S.Instructor";

            }

            else if(PlayerData[playerid][pLeader] == 8)

                {

                    ltext = "Hitman Ag.";

            }

            else if(PlayerData[playerid][pLeader] == 9)

                {

                    ltext = "N.Reporter";

            }

            else if(PlayerData[playerid][pLeader] == 10)

                {

                    ltext = "Remorcari";

            }

            else if(PlayerData[playerid][pLeader] == 11)

                {

                    ltext = "C.Sadoveanu";

            }

            else if(PlayerData[playerid][pLeader] == 12)

                {

                    ltext = "C.Capone";

            }

            else if(PlayerData[playerid][pLeader] == 13)

                {

                    ltext = "C.Duduianu";

            }

            else if(PlayerData[playerid][pLeader] == 14)

                {

                    ltext = "C.Corsicanu";

            }

            else if(PlayerData[playerid][pLeader] == 15)

                {

                    ltext = "C.Tobosaru";

            }

            else if(PlayerData[playerid][pLeader] == 16)

                {

                    ltext = "C.Camataru";

            }

            for(new i = 0; i < MAX_PLAYERS; i ++)

            {

        if(PlayerData[playerid][pLeader] >= 1)

        {

                    format(string, sizeof(string), "[LeaderChat] (%s) %s: %s.", ltext, sendername, (result));

                    SendClientMessage(i, COLOR_LIGHTGREEN, string);

              }

            }

        }

        else

        {

            SendClientMessage(playerid, COLOR_GRAD2, "Nu esti lider la nicio factiune! => Acces respins!");

            return 1;

        }

      }

      return 1;

  }

asta e versiunea fara buguri

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.