Szerző Téma: Rendõr munka  (Megtekintve 4773 alkalommal)

dexi

  • Vendég
Rendõr munka
« Dátum: 2012. január 02. - 21:34:58 »
+26 Show voters
/*
 

Rendõr munka by Fl0rian
 

*/
 
Jó estét!
Készítettem egy rendõr munka FilterScriptet így unalmamban. Remélem hasznotokra válik, kérem a nevet ne írjátok át, tehát ne mondjátok azt hogy: \" Én csináltam. \"
Elkészítési idõ: Körülbelül 1 óra.
Fontos:
A filterscriptet tesztelni nem tudtam, nem volt lehetõségem!

Az ebbõl eredõ hibákat kérem jelezzétek hozzászólásban, és javítom!

=======================================================
Újításokv1.1:
/107 -> Rendõr hívása.
/elfogad -> Hívás elfogadása.
/lista -> Rendõrt hívók listája.
/elenged -> Bilincsben lévõ elengedése.
A /mennyi parancsnál minuszba mutatott érték javítása. (Tehát ha lejárt a bünti nem fog minuszba számolni.)
Újítások v1.11
/sokk, /bilincs parancs javítása.
Link:
v1.0(RÉGI)
http://solidfiles.com/d/8eb1b08cb4/
v1.1(RÉGI)
http://solidfiles.com/d/6340aa4c6d/
v1.11(ÚJ)
http://solidfiles.com/d/f64964d7ac/
 
// Készítõ: Horváth Flórián   |  2012 01. 02. - 20:46
/*
----------
Parancsok:
----------
/rc <- Rendõr chat( Rádióként funkcionál. )
/lecsuk <- Játékos lecsukása, csak azt csukja le aki a kocsiban van.
/sokk <- A legközelebb lévõ játékos sokkolása.
/bilincs <- A legközelebb lévõ játékos megbilincselése.
/mennyi <- Hátralévõ idõ a börtönbõl.
/felvesz <- Játékos felvétele a rendõrökhöz. ( Rcon admin is használhatja! )
/rangad <- Játékos rangját átálítjuk. ( Rcon admin is használhatja! )
/kirug <- Kirúgjuk a játékost a rendõrök közül.
/elenged <- El tudjuk engedni a kívánt játékost a bilincsbõl.
/107 <- Rendõrt tudunk hívni.
/elfogad <- Hívás elfogadása.
/lista <- Kiírja azoknak a nevét akik rendõrt hívtak.
_________________________________________________________________
*****************************************************************
_________________________________________________________________
 
---------
Funkciók:
---------
Bemérés: Ha egy rendõr rákattint a playerlist-en egy illetõre. Két kimenetele lehet( random ),
 az egyik hogy sikeresen bemérjük az illetõt, a másik az hogy sikertelen.
*/
#include <a_samp>
#include <zcmd>
#include <sscanf>
enum dolgok
{
munka,
munkarang
}
new pInfo[MAX_PLAYERS][dolgok];
new IsPlayerSokked[MAX_PLAYERS];
new IsPlayerBilincsed[MAX_PLAYERS];
new mennyi[MAX_PLAYERS];
new bortonben[MAX_PLAYERS];
new rendorthivott[MAX_PLAYERS];
public OnFilterScriptInit()
{
print(\"\\n=========================================\");
print(\"\\n Rendõr meló | Készítõ: Fl0rian \");
print(\"\\n=========================================\");
return 1;
}
public OnFilterScriptExit()
{
print(\"\\n=========================================\");
print(\"\\n Rendõr meló kiiktatva | Készítõ: Fl0rian \");
print(\"\\n=========================================\");
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
new
    Float:x,
    Float:y,
    Float:z;
   
if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] >= 3)
{
switch(random(2))
{
   case 0:
   {
            GetPlayerPos(clickedplayerid, x, y, z);
       SetPlayerCheckpoint(playerid, x, y, z, 4.0);
       SendClientMessage(playerid, 0x00FF00, \"Bemérés sikeres!\");
   }
   case 1:
   {
   SendClientMessage(playerid, 0x00FF00, \"Sikertelen bemérés..késõbb próbáld újra.\");
   }
}
}
else SendClientMessage(playerid, 0x00FF00, \"Használatához rendõrnek kell lenned.\");
return 1;
}
/*=================================[ Sokkolás ]=================================*/
CMD:sokk(playerid,params[])
{
new
Float:x,
Float:y,
Float:z;
for(new i = 0; i < MAX_PLAYERS; i++)
{
GetPlayerPos(i, x, y, z);
{
   if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] >= 1)
{
   if(IsPlayerInRangeOfPoint(playerid, 2.0, x, y, z) && playerid != i)
   {
      if(IsPlayerSokked == 0)
      {
         TogglePlayerControllable(i, 0);
             IsPlayerSokked = 1;
             GameTextForPlayer(i, \"~r~Sokkolva!\", 1500, 0);
             SetTimerEx(\"Sokk\", 60000, 0,\"i\",i);
      }
      else SendClientMessage(playerid, 0x00FF00, \"A játékos már sokkolva van.\");
   }
   else SendClientMessage(playerid, 0x00FF00, \"Nincs a közeledben senki.\");
}
else SendClientMessage(playerid, 0x00FF00, \"Nem vagy rendõr!\");
}
}
return 1;
}
forward Sokk(playerid);
public Sokk(playerid)
{
GameTextForPlayer(playerid, \"~g~Ujra erzed a vegtagjaid!\", 1500, 0);
TogglePlayerControllable(playerid, 1);
IsPlayerSokked[playerid] = 0;
return 1;
}
/*=================================[ Bilincselés ]=================================*/
CMD:bilincs(playerid, params[])
{
new
Float:x,
Float:y,
Float:z;
for(new i = 0; i < MAX_PLAYERS; i++)
{
GetPlayerPos(i, x, y, z);
{
   if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] >= 1)
{
   if(IsPlayerInRangeOfPoint(playerid, 2.0, x, y, z) && playerid != i)
   {
      if(IsPlayerBilincsed == 0 && IsPlayerSokked == 1)
      {
         GameTextForPlayer(i, \"~r~Megbilincselve!\", 1500, 0);
         TogglePlayerControllable(i, 0);
         ApplyAnimation(playerid, \"PED\", \"cower\", 1, 1, 0, 0, 0, 0, 1);
      }
   }
}
}
}
return 1;
}
/*=================================[ Lecsukás ]=================================*/
CMD:lecsuk(playerid, params[])
{
new
    pName[MAX_PLAYER_NAME],
    iName[MAX_PLAYER_NAME],
    String[128],
    String2[128],
    mp;
   
for(new i = 0; i < MAX_PLAYERS; i++)
{
new IDVeh = GetPlayerVehicleID(playerid);
new IVeh = GetPlayerVehicleID(i);
new IDVehPos = GetPlayerState(playerid);
new IVehPos = GetPlayerState(i);
/*============================*/
if(sscanf(params,\"d\", mp))return SendClientMessage(playerid,0x00FF00,\"HIBA: /lecsuk [Másodperc]\");
{
   if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] >= 1)
   {
      if( ( IDVeh == IVeh ) && ( IDVehPos == PLAYER_STATE_DRIVER && IVehPos == PLAYER_STATE_PASSENGER ) )
         {
         SetPlayerPos(i, 1, 2, 3);
         bortonben = 1;
            SetTimerEx(\"Lecsuk\", mp * 1000, 0,\"i\",i);
         mennyi[playerid] = mp;
            SetTimerEx(\"Mennyi\", 1000, 1,\"i\",i);
         format(String, sizeof(String), \"%s lecsukott %d másodpercre.\", pName, mp);
         format(String2, sizeof(String2), \"Lecsuktad %s-t %d másodpercre.\", iName, mp);
         SendClientMessage(i, 0x00FF00, String);
         SendClientMessage(playerid, 0x00FF00, String2);
      }
                else SendClientMessage(playerid, 0x00FF00, \"Nincs senki a jármûvedben.\");
   }
   else SendClientMessage(playerid, 0x00FF00, \"Nem vagy rendõr.\");
}
}
return 1;
}
forward Mennyi(playerid);
public Mennyi(playerid)
{
mennyi[playerid]--;
}
forward Lecsuk(playerid);
public Lecsuk(playerid)
{
SendClientMessage(playerid, 0x00FF00, \"Lejárt a büntetésed, kiengedgetek a börtönbõl\");
SetPlayerPos(playerid, 1, 2, 3);
bortonben[playerid] = 0;
return 1;
}
/*=================================[ Mennyi van hátra ]=================================*/
CMD:mennyi(playerid, params[])
{
new string[128];
if(bortonben[playerid] == 1)
{
format(string, sizeof(string), \"Hátra: %d mp\", mennyi[playerid]);
SendClientMessage(playerid, 0x00FF00, string);
}
else SendClientMessage(playerid, 0x00FF00, \"Nem vagy börtönben.\");
return 1;
}
/*=================================[ Rendõr chat ]=================================*/
CMD:rc(playerid, params[])
{
new Szoveg[128];
new Elkuldes[200];
new Rang[50];
new Neve[MAX_PLAYER_NAME];
if(sscanf(params,\"s[128]\", Szoveg))return SendClientMessage(playerid,0x00FF00,\"HIBA: /rc [szöveg]\");
{
if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] >= 1)
{
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
      /*==========================*/
      if(pInfo[playerid][munkarang] == 1) { Rang = \"Újonc\" ; }
      else if(pInfo[playerid][munkarang] == 2) { Rang = \"Tizedes\" ; }
      else if(pInfo[playerid][munkarang] == 3) { Rang = \"Százados\" ; }
      else if(pInfo[playerid][munkarang] == 4) { Rang = \"Ezredes\" ; }
      else if(pInfo[playerid][munkarang] == 5) { Rang = \"Törzsõrmester\" ; }
      /*==========================*/
      GetPlayerName(playerid, Neve, sizeof(Neve));
      format(Elkuldes, sizeof(Elkuldes), \"*%s %s mondja(rádió): %s\", Rang, Neve, Szoveg);
      if(pInfo[munka] == 1 && pInfo[munkarang] >= 1) { SendClientMessage(i, 0x00FF00, Elkuldes); }
   }
}
}
return 1;
}
/*=================================[ Felvétel ]=================================*/
CMD:felvesz(playerid, params[])
{
new
id,
String[256],
String2[256],
AdoName[MAX_PLAYER_NAME],
KapoName[MAX_PLAYER_NAME];
if(sscanf(params,\"i\", id)) return SendClientMessage(playerid, 0x00FF00, \"HIBA: /felvesz [iD]\");
{
if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] == 5 || IsPlayerAdmin(playerid))
{
    if(pInfo[id][munka] == 0)
    {
      pInfo[id][munka] = 1;
      pInfo[id][munkarang] = 1;
      SetPlayerColor(id, 0x2600ffAA);
      GetPlayerName(playerid, AdoName, sizeof(AdoName));
      GetPlayerName(id, KapoName, sizeof(KapoName));
      format(String, sizeof(String), \"%s felvett téged rendõrnek.\", AdoName);
      format(String2, sizeof(String2), \"Felvetted %s-t rendõrnek.\", KapoName);
      SendClientMessage(playerid, 0x00FF00, String2);
      SendClientMessage(id, 0x00FF00, String);
   }
   else SendClientMessage(playerid, 0x00FF00, \"A játékosnak már van munkája.\");
}
else SendClientMessage(playerid, 0x00FF00, \"Nem vagy rendõrfõnök.\");
}
return 1;
}
/*=================================[ Rang adás ]=================================*/
CMD:rangad(playerid, params[])
{
new
    id,
    rang,
String[128],
String2[128],
    AdoName[MAX_PLAYER_NAME],
    KapoName[MAX_PLAYER_NAME];
   
if(sscanf(params, \"ii\", id, rang)) return SendClientMessage(playerid, 0x00FF00, \"HIBA: /rangad [iD] [Rang]\");
{
if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] == 5 || IsPlayerAdmin(playerid))
{
    if(pInfo[id][munkarang] != rang && pInfo[id][munka] == 1)
    {
        pInfo[id][munkarang] = rang;
        GetPlayerName(playerid, AdoName,sizeof(AdoName));
        GetPlayerName(id, KapoName,sizeof(KapoName));
        format(String, sizeof(String), \"%s rangot adott neked! ( *%d )\", AdoName, rang);
        format(String2, sizeof(String2), \"Rangot adtál %s-nek. ( *%d )\", KapoName, rang);
              SendClientMessage(playerid, 0x00FF00, String2);
      SendClientMessage(id, 0x00FF00, String);
   }
   else SendClientMessage(playerid, 0x00FF00, \"A játékos nem rendõr, vagy már ezen a rangon van.\");
}
else SendClientMessage(playerid, 0x00FF00, \"Nem vagy rendõrfõnök.\");
}
return 1;
}
/*=================================[ Kirúgás ]=================================*/
CMD:kirug(playerid, params[])
{
new id;
if(sscanf(params, \"i\", id))return SendClientMessage(playerid, 0x00FF00, \"HIBA: /kirug [iD]\");
{
if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] == 5)
{
    if(pInfo[id][munka] == 1)
    {
            pInfo[id][munka] = 0;
            pInfo[id][munkarang] = 0;
            SetPlayerColor(id, -1);
            SendClientMessage(id, 0x00FF00, \"A fõnököd kirúgott a munkádból.\");
            SendClientMessage(playerid, 0x00FF00, \"Kirúgtad az illetõt a rendõrségrõl.\");
   }
   else SendClientMessage(playerid, 0x00FF00, \"Az illetõ nem rendõr.\");
}
else SendClientMessage(playerid, 0x00FF00, \"Nem vagy rendõrfõnök.\");
}
return 1;
}
/*=================================[ Elengedés ]=================================*/
CMD:elenged(playerid, params[])
{
new
Float:x,
Float:y,
Float:z;
for(new i = 0; i < MAX_PLAYERS; i++)
{
   if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] >= 1)
{
   GetPlayerPos(i, x, y, z);
   if(IsPlayerInRangeOfPoint(i, 2.0, x, y, z) && playerid != i)
   {
      if(IsPlayerBilincsed)
      {
          TogglePlayerControllable(i, 1);
          ClearAnimations(i);
      }
      else SendClientMessage(playerid, 0x00FF00, \"A játékos nincs megbilincselve.\");
   }
   else SendClientMessage(playerid, 0x00FF00, \"Nincs a közeledben senki.\");
}
else SendClientMessage(playerid, 0x00FF00, \"Nem vagy rendõr.\");
}
return 1;
}
/*=================================[ 107 ]=================================*/
CMD:107(playerid, params[])
{
new String[128];
new Name[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, sizeof(Name));
format(String, sizeof(String),\"%s rendõrt hívott. Hogy elfogadd: /elfogad %d\",Name,playerid);
rendorthivott[playerid] = 1;
SendClientMessage(playerid, 0x00FF00, \"Rendõrt hívtál, várj míg elfogadják a hívásodat.\");
for(new i = 0; i < MAX_PLAYERS; i++)
{
    if(pInfo[munka] == 1 && pInfo[munkarang] >= 1)
    {
   SendClientMessage(i, 0x00FF00, String);
}
}
return 1;
}
/*=================================[ Elfogadás ]=================================*/
CMD:elfogad(playerid, params[])
{
new
id,
String[128],
String2[128],
FogadottName[MAX_PLAYER_NAME],
FogadoName[MAX_PLAYER_NAME],
Float:x,
Float:y,
Float:z;
GetPlayerName(playerid, FogadoName, sizeof(FogadoName));
if(sscanf(params, \"i\", id))return SendClientMessage(playerid, 0x00FF00, \"HIBA: /elfogad [iD]\");
{
if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] >= 1)
{
GetPlayerName(id, FogadottName, sizeof(FogadottName));
if(rendorthivott[id] == 1)
{
      GetPlayerPos(id, x, y, z);
   SetPlayerCheckpoint(playerid, x, y, z, 3.0);
   format(String, sizeof(String), \"%s elfogadta a hívásod.\",FogadoName);
   format(String2, sizeof(String2),\"Elfogadtad %s hívását.\",FogadottName);
   SendClientMessage(playerid, 0x00FF00, String);
   SendClientMessage(id, 0x00FF00, String2);
}
else SendClientMessage(playerid, 0x00FF00, \"Az illetõ nem hívott rendõrt.\");
}
else SendClientMessage(playerid, 0x00FF00, \"Nem vagy rendõr.\");
}
return 1;
}
/*=================================[ Lista ]=================================*/
CMD:lista(playerid, params[])
{
new
bool:first,
Name[MAX_PLAYER_NAME],
String[128];
SendClientMessage(playerid, 0x00FF00, \"A rendõrt hívók listája:\");
SendClientMessage(playerid, 0x00FF00, \" \");
for(new i = 0, Emberek = GetMaxPlayers(); i < Emberek; i++)
{
GetPlayerName(i, Name, sizeof(Name));
if(IsPlayerConnected(i))
{
    if(rendorthivott)
    {
        first = true;
   format(String, sizeof(String), \"%s [iD: %d]\",Name, i);
   SendClientMessage(playerid, 0x00FF00, String);
}
}
}
if(!first) SendClientMessage(playerid, 0x00FF00, \"Nem hívott senki rendõrt.\");
return 1;
}
« Utoljára szerkesztve: 2012. április 05. - 16:56:51 írta ScreaM »

Nem elérhető instant

  • 2778
  • ZzzzzZ
    • Profil megtekintése
Rendõr munka
« Válasz #1 Dátum: 2012. január 02. - 21:39:05 »
0 Show voters
jol nézki :)

dexi

  • Vendég
Rendõr munka
« Válasz #2 Dátum: 2012. január 03. - 00:39:26 »
0 Show voters
Újítások a fõposztban!

Swat

  • Vendég
Rendõr munka
« Válasz #3 Dátum: 2012. január 03. - 08:55:52 »
0 Show voters
ez kellet ment a +
« Utoljára szerkesztve: 2012. január 03. - 09:00:01 írta Swat »

Rendõr munka
« Válasz #4 Dátum: 2012. január 06. - 19:13:57 »
0 Show voters
Kössz ez jól jött a szerómhoz  ;D

Rendõr munka
« Válasz #5 Dátum: 2012. január 06. - 20:37:01 »
0 Show voters
ez kellet ment a +[/quote]
mindenhez azt irja hogy ment a + és sosem ad xDDDDDDDDDDD
amugy szép script :D

Nem elérhető IXT

  • 2502
  • Steph Curry
    • Profil megtekintése
Rendõr munka
« Válasz #6 Dátum: 2012. január 07. - 08:56:44 »
0 Show voters
Köszi,lehet felhasználok 1-2 parancsot. +

Nem elérhető Dead

  • 2045
    • Profil megtekintése
Rendõr munka
« Válasz #7 Dátum: 2012. január 07. - 12:15:02 »
0 Show voters
Jó lett adtam Likeot! :)

Nem elérhető The

  • 4384
    • Profil megtekintése
Rendõr munka
« Válasz #8 Dátum: 2012. január 07. - 14:11:10 »
0 Show voters
Tetszik. Grat.  ;)

Nem elérhető skyLine

  • Globális moderátor
  • 2171
  • 2020
  • Vaterán
    • Profil megtekintése
Rendõr munka
« Válasz #9 Dátum: 2012. március 26. - 19:24:59 »
0 Show voters
Miért van az, hogy mindegyik csak adminok számára jó? Miért nem csináljátok úgy mint Epsilon, hogy rendõrskinekre van?  :tantrum:

Nem elérhető Gabor..

  • 1883
  • Gabor..
    • Profil megtekintése
Rendõr munka
« Válasz #10 Dátum: 2012. március 26. - 19:41:14 »
0 Show voters
Annyi az egész, hogy átírod magadnak megfelelõen, például, ha van munka scripted, akkor annak megfelelõen, vagy skinhez kötötten stb....

dexi

  • Vendég
Rendõr munka
« Válasz #11 Dátum: 2012. március 26. - 20:07:43 »
0 Show voters
Ez kérlekszépen nem admin szerint mûködik.. leaderes melóként van betéve. Tehát vannak rangok satöbbi.. Köze nincs az admin joghoz.

Rendõr munka
« Válasz #12 Dátum: 2012. március 26. - 20:21:28 »
0 Show voters
Szép script lett!

Nem elérhető skyLine

  • Globális moderátor
  • 2171
  • 2020
  • Vaterán
    • Profil megtekintése
Rendõr munka
« Válasz #13 Dátum: 2012. március 26. - 21:06:27 »
0 Show voters
      if(pInfo[playerid][munka] == 1 && pInfo[playerid][munkarang] == 5 || IsPlayerAdmin(playerid))

 
Gondolom dísz...

dexi

  • Vendég
Rendõr munka
« Válasz #14 Dátum: 2012. március 26. - 21:19:35 »
+1 Show voters
Felvenni / Rangot adni admin is tud... Hiszen akkor hogy lenne egyáltalán leader ha nincs ki felvenné? Kicsit nézd át mielõtt leszólod.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal