Szerző Téma: Rendõr Parancsok  (Megtekintve 1549 alkalommal)

Rendõr Parancsok
« Dátum: 2011. március 14. - 06:41:20 »
0 Show voters
Hello.
Az lenne kérésem hogy valaki  összedonba e nekem egy olyan scriptet hogy ha a player
 

if(gTeam[playerid] == TEAM_COP)

 
Val legyenek  valami rendõr parancsok.
pl.:
/bilincs (id)
/jail(id)
/elenged (id)- a bilincsre gondolok
/unjail (id)
Elõre is kösz......

Nem elérhető nyE

  • 1745
    • Profil megtekintése
Rendõr Parancsok
« Válasz #1 Dátum: 2011. március 14. - 07:10:02 »
0 Show voters
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xa61515FF, \"Hiba: Te nem vagy RCON admnisztrátor!\");

 
Helyett:
 
if(gTeam[playerid] != TEAM_COP) return SendClientMessage(playerid, 0xa61515FF, \"Hiba: Te nem vagy rendõr!\");

 


//KÉSZÍTÕ: STRICICA
#define FILTERSCRIPT
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == \'\\0\') && (dcmd_%1(playerid, \"\"))) || (((%3)[(%2) + 1] == \' \') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#include <a_samp>
public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(bilincs, 7, cmdtext);
dcmd(elenged, 7, cmdtext);
dcmd(betesz, 6, cmdtext);
dcmd(lecsuk, 6, cmdtext);
dcmd(say, 3, cmdtext);
dcmd(szolgalat, 9, cmdtext);
dcmd(policehelp, 10, cmdtext);
return 0;
}
dcmd_bilincs(playerid, params[])
{
new giveplayerid;
if (sscanf(params, \"u\", giveplayerid)) SendClientMessage(playerid, 0xa61515FF, \"Használat: /bilincs [playerid]\");
else if (giveplayerid == INVALID_PLAYER_ID) SendClientMessage(playerid, 0xa61515FF, \"Hiba: Nincs ilyen játékos!\");
else{
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xa61515FF, \"Hiba: Te nem vagy RCON admnisztrátor!\");
new name[MAX_PLAYER_NAME],string[200];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof string, \"%s megbilincselt egy civilt!\", name);
        SendClientMessageToAll(0xB3D5B2AA,string);
        TogglePlayerControllable(giveplayerid,0);
}
return 1;
}
dcmd_elenged(playerid, params[])
{
new giveplayerid;
if (sscanf(params, \"u\", giveplayerid)) SendClientMessage(playerid, 0xa61515FF, \"Használat: /elenged [playerid]\");
else if (giveplayerid == INVALID_PLAYER_ID) SendClientMessage(playerid, 0xa61515FF, \"Hiba: Nincs ilyen játékos!\");
else{
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xa61515FF, \"Hiba: Te nem vagy RCON admnisztrátor!\");
new name[MAX_PLAYER_NAME],string[200];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof string, \"%s elengedett egy civilt!\", name);
        SendClientMessageToAll(0xB3D5B2AA,string);
        TogglePlayerControllable(giveplayerid,1);
}
return 1;
}
dcmd_betesz(playerid, params[])
{
new giveplayerid;
if (sscanf(params, \"u\", giveplayerid)) SendClientMessage(playerid, 0xa61515FF, \"Használat: /betesz [playerid]\");
else if (giveplayerid == INVALID_PLAYER_ID) SendClientMessage(playerid, 0xa61515FF, \"Hiba: Nincs ilyen játékos!\");
else{
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xa61515FF, \"Hiba: Te nem vagy RCON admnisztrátor!\");
    if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0xa61515FF,\"Hiba: Te nem vagy jármûben!\");
    new vehicleid;
    vehicleid = GetPlayerVehicleID(playerid);
new name[MAX_PLAYER_NAME],string[200];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof string, \"%s betett egy civilt a jármûvébe!\", name);
        SendClientMessageToAll(0xB3D5B2AA,string);
        PutPlayerInVehicle(giveplayerid, vehicleid, 2);
}
return 1;
}
dcmd_lecsuk(playerid, params[])
{
new giveplayerid;
if (sscanf(params, \"u\", giveplayerid)) SendClientMessage(playerid, 0xa61515FF, \"Használat: /lecsuk [playerid]\");
else if (giveplayerid == INVALID_PLAYER_ID) SendClientMessage(playerid, 0xa61515FF, \"Hiba: Nincs ilyen játékos!\");
else{
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xa61515FF, \"Hiba: Te nem vagy RCON admnisztrátor!\");
new name[MAX_PLAYER_NAME],string[200];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof string, \"%s lecsukott egy civilt 1 percre!\", name);
        SendClientMessageToAll(0xB3D5B2AA,string);
        SetPlayerPos(playerid,264.6288,77.5742,1001.0391);
        SetPlayerInterior(giveplayerid, 6);
        SetTimerEx( \"jail\", 60000, false, \"i\", giveplayerid);
        TogglePlayerControllable(giveplayerid,0);
}
return 1;
}
dcmd_say(playerid,params[]) {
#pragma unused params
if(IsPlayerAdmin(playerid)) {
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, sizeof(aname));
if(!strlen(params)) return SendClientMessage(playerid, 0xa61515FF, \"Használat: /say [szöveg]\");
new string[128]; format(string, sizeof(string), \"%s rendõrtiszt: %s\", aname, params[0] );
return SendClientMessageToAll(0xB3D5B2AA,string);
} else return SendClientMessage(playerid,0xa61515FF,\"Hiba: Te nem vagy RCON admnisztrátor!\");
}
dcmd_szolgalat(playerid,params[]) {
#pragma unused params
if(IsPlayerAdmin(playerid)) {
SetPlayerColor(playerid, 0xB3D5B200);
SetPlayerSkin(playerid, 282);
ResetPlayerWeapons(playerid);
GivePlayerWeapon(playerid, 24, 99999);
GivePlayerWeapon(playerid, 26, 99999);
GivePlayerWeapon(playerid, 28, 99999);
GivePlayerWeapon(playerid, 31, 99999);
GivePlayerWeapon(playerid, 34, 99999);
GivePlayerWeapon(playerid, 41, 99999);
SetPlayerArmour(playerid, 100);
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, sizeof(aname));
new string[128]; format(string, sizeof(string), \"%s rendõrtiszt szolgálatba lépett!\", aname);
return SendClientMessageToAll(0xB3D5B2AA,string);
} else return SendClientMessage(playerid,0xa61515FF,\"Hiba: Te nem vagy RCON admnisztrátor!\");
}
dcmd_policehelp(playerid,params[]) {
#pragma unused params
if(IsPlayerAdmin(playerid)){
    SendClientMessage(playerid,0xB3D5B2AA,\"Parancsok:\");
    SendClientMessage(playerid,0xB3D5B2AA,\"/bilincs [playerid] - Játékos megbilincselése\");
    SendClientMessage(playerid,0xB3D5B2AA,\"/elenged [playerid] - Játékos elengedése (bilincsbõl)\");
    SendClientMessage(playerid,0xB3D5B2AA,\"/betesz [playerid] - Játékos kocsiba tevése\");
    SendClientMessage(playerid,0xB3D5B2AA,\"/lecsuk [playerid] - Játékos lecsukása 1 percre\");
    SendClientMessage(playerid,0xB3D5B2AA,\"/say [szöveg] - Üzenet írása mindenkinek\");
    SendClientMessage(playerid,0xB3D5B2AA,\"/szolgalat - Szolgálatba lépni\");
} else return SendClientMessage(playerid,0xa61515FF,\"Hiba: Te nem vagy RCON admnisztrátor!\");
}
public jail(giveplayerid);
public jail(giveplayerid) {
        new name[MAX_PLAYER_NAME],string[200];
GetPlayerName(giveplayerid, name, sizeof(name));
format(string, sizeof string, \"%s kiszabadult a börtönbõl!\", name);
        SendClientMessageToAll(0xB3D5B2AA,string);
        SetPlayerHealth(giveplayerid, 0);
        SetPlayerInterior(giveplayerid, 0);
        TogglePlayerControllable(giveplayerid,1);
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
   new vehicle = GetVehicleModel(vehicleid);
   if(vehicle == 425 || vehicle == 432 || vehicle == 427 || vehicle == 490|| vehicle == 497|| vehicle == 528|| vehicle == 596|| vehicle == 597|| vehicle == 597|| vehicle == 599|| vehicle == 601) {
      if(!IsPlayerAdmin(playerid)) {
         ClearAnimations(playerid);
         SendClientMessage(playerid,0xa61515FF,\"Hiba: Te nem vagy RCON adminisztrátor!\");
      } else return 1;
      }
   return 0;
}
stock sscanf(string[], format[], {Float,_}:...)
{
#if defined isnull
if (isnull(string))
#else
if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
#endif
{
   return format[0];
}
#pragma tabsize 4
new
formatPos = 0,
stringPos = 0,
paramPos = 2,
paramCount = numargs(),
delim = \' \';
while (string[stringPos] && string[stringPos] <= \' \')
{
stringPos++;
}
while (paramPos < paramCount && string[stringPos])
{
switch (format[formatPos++])
{
   case \'\\0\':
   {
      return 0;
   }
   case \'i\', \'d\':
   {
      new
         neg = 1,
         num = 0,
         ch = string[stringPos];
      if (ch == \'-\')
      {
         neg = -1;
         ch = string[++stringPos];
      }
      do
      {
         stringPos++;
         if (\'0\' <= ch <= \'9\')
         {
            num = (num * 10) + (ch - \'0\');
         }
         else
         {
            return -1;
         }
      }
      while ((ch = string[stringPos]) > \' \' && ch != delim);
      setarg(paramPos, 0, num * neg);
   }
   case \'h\', \'x\':
   {
      new
         num = 0,
         ch = string[stringPos];
      do
      {
         stringPos++;
         switch (ch)
         {
            case \'x\', \'X\':
            {
               num = 0;
               continue;
            }
            case \'0\' .. \'9\':
            {
               num = (num << 4) | (ch - \'0\');
            }
            case \'a\' .. \'f\':
            {
               num = (num << 4) | (ch - (\'a\' - 10));
            }
            case \'A\' .. \'F\':
            {
               num = (num << 4) | (ch - (\'A\' - 10));
            }
            default:
            {
               return -1;
            }
         }
      }
      while ((ch = string[stringPos]) > \' \' && ch != delim);
      setarg(paramPos, 0, num);
   }
   case \'c\':
   {
      setarg(paramPos, 0, string[stringPos++]);
   }
   case \'f\':
   {
      new changestr[16], changepos = 0, strpos = stringPos;
      while(changepos < 16 && string[strpos] && string[strpos] != delim)
      {
         changestr[changepos++] = string[strpos++];
                }
      changestr[changepos] = \'\\0\';
      setarg(paramPos,0,_:floatstr(changestr));
   }
   case \'p\':
   {
      delim = format[formatPos++];
      continue;
   }
   case \'\\\'\':
   {
      new
         end = formatPos - 1,
         ch;
      while ((ch = format[++end]) && ch != \'\\\'\') {}
      if (!ch)
      {
         return -1;
      }
      format[end] = \'\\0\';
      if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
      {
         if (format[end + 1])
         {
            return -1;
         }
         return 0;
      }
      format[end] = \'\\\'\';
      stringPos = ch + (end - formatPos);
      formatPos = end + 1;
   }
   case \'u\':
   {
      new
         end = stringPos - 1,
         id = 0,
         bool:num = true,
         ch;
      while ((ch = string[++end]) && ch != delim)
      {
         if (num)
         {
            if (\'0\' <= ch <= \'9\')
            {
               id = (id * 10) + (ch - \'0\');
            }
            else
            {
               num = false;
            }
         }
      }
      if (num && IsPlayerConnected(id))
      {
         setarg(paramPos, 0, id);
      }
      else
      {
         #if !defined foreach
            #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
            #define __SSCANF_FOREACH__
         #endif
         string[end] = \'\\0\';
         num = false;
         new
            name[MAX_PLAYER_NAME];
         id = end - stringPos;
         foreach (Player, playerid)
         {
            GetPlayerName(playerid, name, sizeof (name));
            if (!strcmp(name, string[stringPos], true, id))
            {
               setarg(paramPos, 0, playerid);
               num = true;
               break;
            }
         }
         if (!num)
         {
            setarg(paramPos, 0, INVALID_PLAYER_ID);
         }
         string[end] = ch;
         #if defined __SSCANF_FOREACH__
            #undef foreach
            #undef __SSCANF_FOREACH__
         #endif
      }
      stringPos = end;
   }
   case \'s\', \'z\':
   {
      new
         i = 0,
         ch;
      if (format[formatPos])
      {
         while ((ch = string[stringPos++]) && ch != delim)
         {
            setarg(paramPos, i++, ch);
         }
         if (!i)
         {
            return -1;
         }
      }
      else
      {
         while ((ch = string[stringPos++]))
         {
            setarg(paramPos, i++, ch);
         }
      }
      stringPos--;
      setarg(paramPos, i, \'\\0\');
   }
   default:
   {
      continue;
   }
}
while (string[stringPos] && string[stringPos] != delim && string[stringPos] > \' \')
{
   stringPos++;
}
while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= \' \'))
{
   stringPos++;
}
paramPos++;
}
do
{
if ((delim = format[formatPos++]) > \' \')
{
   if (delim == \'\\\'\')
   {
      while ((delim = format[formatPos++]) && delim != \'\\\'\') {}
   }
   else if (delim != \'z\')
   {
      return delim;
   }
}
}
while (delim > \' \');
return 0;
}

Rendõr Parancsok
« Válasz #2 Dátum: 2011. március 14. - 14:35:30 »
0 Show voters
Köszke.

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
Rendõr Parancsok
« Válasz #3 Dátum: 2011. március 14. - 16:22:20 »
0 Show voters
Ha megoldódott, akkor kérlek zárd a témát.  :)

Rendõr Parancsok
« Válasz #4 Dátum: 2011. március 15. - 06:38:39 »
0 Show voters
Hát lennne még egy kérésem....
Leírná valaki nekem
 

}
   if(strcmp(cmd, \"/race3\", true) == 0) {
if(IsPlayerInAnyVehicle(playerid)) {
new Float:X;
new Float:Y;
new Float:Z;
new VehicleID;
GetPlayerPos(playerid, X, Y, Z);
VehicleID = GetPlayerVehicleID(playerid);
SetVehiclePos(VehicleID,1146.1569,2300.2820,19.7628);
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
format(string, sizeof(string), \"..::%s eltelézett a race-re (/race3)::..\", pname);
SendClientMessageToAll(COLOR_GREEN, string);
} else {
new Float:X;
new Float:Y;
new Float:Z;
GetPlayerPos(playerid, X, Y, Z);
SetPlayerPos(playerid,1146.1569,2300.2820,19.7628);
new pname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
format(string, sizeof(string), \"..::%s eltelézett a race-re (/race3)::..\", pname);
SendClientMessageToAll(COLOR_GREEN, string);
}
return 1;
}

 
Formában mivel a gm be akarom betenni.Külön scriptbe mükszik..
« Utoljára szerkesztve: 2011. március 15. - 06:47:24 írta miroslavbrnic »

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
Rendõr Parancsok
« Válasz #5 Dátum: 2011. március 15. - 10:45:36 »
0 Show voters
Háát, ha valakinek igen sok ideje van és vágja a strtok-ot akkor kezdheti is.  :D
Ugyanis nem elég, ha csak parancsként beírjuk az OnPlayerCommandText függ. alá, mivel a sscanf ott nem használható.  :dead:
Szerk.:
Elég ha bemásolod az OnPlayerCommandText függ. alá a dcmd parancsokat, majd a parancsokat a mód olyan részére, ahol nem ütközik funkcióba.
Ha gondolod megcsinálhatom neked, csak küld el a módot PÜ-be.  ;)
« Utoljára szerkesztve: 2011. március 15. - 10:50:45 írta IceMan™ »

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
Rendõr Parancsok
« Válasz #6 Dátum: 2011. március 15. - 14:21:16 »
0 Show voters
Idézetet írta: IceMan™ date=1300182336\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6807\" data-ipsquote-contentclass=\"forums_Topic
nem elég, ha csak parancsként beírjuk az OnPlayerCommandText függ. alá, mivel a sscanf ott nem használható.  :dead:
 
:dodge: Hülyeség.

Nem elérhető Depi

  • 2259
  • Még mindig TrYp. :)
    • Profil megtekintése
Rendõr Parancsok
« Válasz #7 Dátum: 2011. március 15. - 17:15:02 »
0 Show voters
Idézetet írta: IceMan™ date=1300182336\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"6807\" data-ipsquote-contentclass=\"forums_Topic
Háát, ha valakinek igen sok ideje van és vágja a strtok-ot akkor kezdheti is.  :D
Ugyanis nem elég, ha csak parancsként beírjuk az OnPlayerCommandText függ. alá, mivel a sscanf ott nem használható.  :dead:
Szerk.:
Elég ha bemásolod az OnPlayerCommandText függ. alá a dcmd parancsokat, majd a parancsokat a mód olyan részére, ahol nem ütközik funkcióba.
Ha gondolod megcsinálhatom neked, csak küld el a módot PÜ-be.  ;)
 
Lehet használni OnPlayerCommandText-ben is, csak át kell nevezni valamire,de most nem jut az eszembe.

Rendõr Parancsok
« Válasz #8 Dátum: 2011. március 16. - 13:56:23 »
0 Show voters
Köszke mindent zárok..
« Utoljára szerkesztve: 2011. március 18. - 16:15:31 írta miroslavbrnic »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal