Advertisement
Guest User

Feuerwehrsystem + Map V 1.9

a guest
Oct 5th, 2011
487
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 8.63 KB | None | 0 0
  1. //----------------------------------------------------------
  2. //---------Feuerwehrsystem V 1.5.1 by Kaster & |GSR|Honig-----
  3. //---------------Orginal Feuerwehrsystem by FeuerSocke------
  4. //---------dies ist nur eine Verbesserteversion mit Map!!---
  5. //--------Das Script darf Verändert werden allerdings müssen
  6. //----------die Credits erhalten bleiben!-------------------
  7. //----------Dieses Script ist von den Ownern von SoNL-------
  8. //----------für mehr Infos und Updates:www.sonl.de/forum ---
  9. //----------------------------------------------------------
  10. //Edit By Blood/[NeR]CAPO
  11. #include <a_samp>
  12. #pragma tabsize 0
  13.  
  14. new tor ;
  15. new feuerwehrgerufen[MAX_PLAYERS];
  16. new fwfahrzeug[7];
  17.  
  18. forward Ersteller(); // muss bleiben!darf nicht geändert werden!
  19. forward IfAutoKaputtTimer(playerid);
  20. forward fwgerufen(playerid);
  21. forward Float:GetDistanceBetweenPlayers(p1,p2);
  22. #define COLOR_RED 0xE60000FF
  23. #define COLOR_WHITE 0xFFFFFFFF
  24. static bool:PlayerMessageMotorschaden[MAX_PLAYERS] = { false };
  25. public OnFilterScriptInit()
  26. {
  27.     SetTimer("IfAutoKaputtTimer", 1000, 1);
  28.     SetTimer("Ersteller()", 600000, 1); // muss bleiben! darf nicht geändert werden!
  29.  
  30.        CreateObject(987, 1145.8338623047, -1296.8229980469, 12.643404006958, 0, 0, 0);
  31.        tor  = CreateObject(980, 1139.8073730469, -1297.1048583984, 15.349395751953, 0, 0, 0);
  32.        CreateObject(987, 1122.6838378906, -1296.6030273438, 12.564992904663, 0, 0, 0);
  33.        CreateObject(987, 1138.0736083984, -1362.6215820313, 12.730423927307, 0, 0, 0);
  34.        CreateObject(5816, 1105.4582519531, -1313.2609863281, 20.862724304199, 0, 0, 182);
  35.        fwfahrzeug[0] = AddStaticVehicle(407,1100.6349,-1326.9640,13.2519,358.7600,3,1); // [LF]
  36.        fwfahrzeug[1] = AddStaticVehicle(407,1094.6632,-1328.7843,13.0961,0.5164,3,1); // [LF]
  37.        fwfahrzeug[2] = AddStaticVehicle(407,1108.1221,-1328.3400,13.1352,0.1516,3,1); // [LF]
  38.        fwfahrzeug[3] = AddStaticVehicle(407,1114.0485,-1328.7489,13.1029,1.7735,3,1); // [LF]
  39. // Bezeichnungen der FHZ:LF ist das Löschfahrzeug; DL= Die Leiter;ELW= Normale Cars
  40.        fwfahrzeug[4] = AddStaticVehicle(544,1121.0934,-1328.6326,13.1087,0.1740,3,1); // [DL]
  41.        fwfahrzeug[5] = AddStaticVehicle(490,1132.1086,-1331.1992,13.4965,356.3850,3,1); // [ELW]
  42.        fwfahrzeug[6] = AddStaticVehicle(598,1125.5936,-1327.7946,13.1812,359.3127,3,1); // [ELW]
  43.  
  44.     return 1;
  45. }
  46. strtok(const string[], &index)
  47. {
  48.     new length = strlen(string);
  49.     while ((index < length) && (string[index] <= ' '))
  50.     {
  51.         index++;
  52.     }
  53.  
  54.     new offset = index;
  55.     new result[20];
  56.     while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
  57.     {
  58.         result[index - offset] = string[index];
  59.         index++;
  60.     }
  61.     result[index - offset] = EOS;
  62.     return result;
  63. }
  64. public OnPlayerDisconnect(playerid, reason)
  65. {
  66.     PlayerMessageMotorschaden[playerid] = false;
  67.     return 1;
  68. }
  69. public Float:GetDistanceBetweenPlayers(p1,p2){
  70.     new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
  71.     if (!IsPlayerConnected(p1) || !IsPlayerConnected(p2)){
  72.         return -1.00;
  73.     }
  74.     GetPlayerPos(p1,x1,y1,z1);
  75.     GetPlayerPos(p2,x2,y2,z2);
  76.     return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
  77. }
  78. public IfAutoKaputtTimer(playerid)
  79. {
  80.         new Float:health;
  81.         new string[256];
  82.         new vehicleid = GetPlayerVehicleID(playerid);
  83.         if(IsPlayerInAnyVehicle(playerid))
  84.         {
  85.             GetVehicleHealth(vehicleid, health);
  86.             format(string, 256, "~n~~n~~n~~n~~n~~n~~g~Auto Schaden :   ~w~%.0f",health);
  87.             GameTextForPlayer(playerid, string, 2000, 5);
  88.         }
  89.  
  90.         new VID, Float:h_vid;
  91.         if(IsPlayerConnected(playerid) && IsPlayerInAnyVehicle(playerid))
  92.         {
  93.             VID = GetPlayerVehicleID(playerid);
  94.             GetVehicleHealth(VID, h_vid);
  95.             if(h_vid <= 185 && PlayerMessageMotorschaden[playerid] == false)
  96.             {
  97.                 TogglePlayerControllable(playerid, 0);
  98.                 SendClientMessage(playerid, 0xFF6900AA, "Dieses Auto ist kaputt, du kommst nicht mehr raus. Rufe die Feuerwehr mit /Feuerwehr");
  99.                 PlayerMessageMotorschaden[playerid] = true;
  100.                 SetVehicleHealth(vehicleid, 185.0);
  101.                 SetPlayerHealth(playerid,100);
  102.         }   }
  103. }
  104.  
  105. public OnPlayerCommandText(playerid, cmdtext[])
  106. {
  107.     new sendername[MAX_PLAYER_NAME];
  108.     new cmd[256];
  109.     new idx;
  110.     new string[256];
  111.  cmd = strtok(cmdtext,idx);
  112.     if(strcmp("/fhelp",cmdtext,true) == 0)
  113.     {
  114.         SendClientMessage(playerid,COLOR_RED,"/retten | /feuerwehr | /ftor");
  115.         return 1;
  116.     }
  117.     if(strcmp(cmd, "/retten", true) == 0)
  118.         {
  119.             new tmp[256];
  120.             new giveplayer[200];
  121.  
  122.             if(IsPlayerConnected(playerid))
  123.             {
  124.                 tmp = strtok(cmdtext, idx);
  125.                 new otherplayer = strval(tmp);
  126.                 if(!strlen(tmp))
  127.                 {
  128.                     SendClientMessage(playerid, COLOR_WHITE, "/retten [ID]");
  129.                     return 0;
  130.                 }
  131.                 if(!IsPlayerConnected(otherplayer)) return SendClientMessage(playerid, COLOR_WHITE, "Diese ID ist nicht vorhanden/eingesetzt!");
  132.                 if(GetDistanceBetweenPlayers(playerid,otherplayer <= 5.0))
  133.                 {
  134.                 GetPlayerName(otherplayer, giveplayer, sizeof(giveplayer));
  135.                 GetPlayerName(playerid, sendername, sizeof(sendername));
  136.                 new Float:X;
  137.                 new Float:Y;
  138.                 new Float:Z;
  139.                 GetPlayerPos(playerid,X,Y,Z);
  140.                 SetPlayerPos(otherplayer,X,Y+1,Z);
  141.                 new rand = random(300);
  142.                 format(string, sizeof(string), "Du hast %s gerettet. Du bekommst %d$", giveplayer,rand);
  143.                 GivePlayerMoney(playerid,rand);
  144.                 SendClientMessage(playerid,COLOR_WHITE, string);
  145.                 SendClientMessage(otherplayer, COLOR_WHITE, "Du wurdest  von %s gerettet");
  146.                 TogglePlayerControllable(otherplayer, 1);
  147.                 TogglePlayerControllable(playerid, 1);
  148.                 }
  149.                 else
  150.                 {
  151.                     SendClientMessage(playerid, COLOR_RED, "Du kannst %s (ID %d )nicht retten,er zuweit weg!");
  152.                 }
  153.  
  154.             }
  155.             return 0;
  156.         }
  157.     if(strcmp(cmdtext, "/feuerwehr", true) == 0)
  158.         {
  159.         if(feuerwehrgerufen[playerid] == 0)
  160.         {
  161.             feuerwehrgerufen[playerid] = 1;
  162.             new pname[30], str[100];
  163.             SetTimer("fwgerufen",300000,0);
  164.             GetPlayerName(playerid,pname,sizeof(pname));
  165.             format(str,sizeof(str), "%s braucht die Feuerwehr dringend!",pname);
  166.             SendClientMessageToAll(COLOR_RED,str);
  167.             SendClientMessage(playerid,COLOR_RED,"Du darfst nur jede 5te Minute die Feuerwehr rufen. Das, dient gegen Ausnutzung.");
  168.             return 1;
  169.         }
  170.         else
  171.         {
  172.             SendClientMessage(playerid,COLOR_RED,"Du hast die Feuerwehr schon gerufen.");
  173.         }
  174.     return 1;
  175.     }
  176.     if(strcmp("/ftor",cmdtext) == 0)
  177.     {
  178.         if(IsPlayerInRangeOfPoint(playerid, 9.0, 1139.8073730469, -1297.1048583984, 15.349395751953))
  179.         {
  180.             if(tor == 0)
  181.             {
  182.                 MoveObject(tor,1139.8073730469, -1297.1048583984, 15.349395751953,4);
  183.                 tor = 1;
  184.             }
  185.         }
  186.             else
  187.             {
  188.                 MoveObject(tor, 1140.4448242188, -1295.8262939453, 9.5976715087891,4);
  189.                 tor = 0;
  190.             }
  191.  
  192.     }
  193.     return 0;
  194. }
  195. public fwgerufen(playerid)
  196. {
  197.     feuerwehrgerufen[playerid] = 0;
  198.     SendClientMessage(playerid,COLOR_RED,"Du kannst nun die Feuerwehr rufen.");
  199.     return 1;
  200. }
  201.  
  202. public OnPlayerStateChange(playerid, newstate, oldstate)
  203. {
  204.  
  205.     if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
  206.     {
  207.         if(fwfahrzeug[playerid] == 1)
  208.         {
  209.             PlayAudioStreamForPlayer(playerid, "http://www.thebravest.com/manhattan/manhattan.htm");
  210.         }
  211.     }
  212.  
  213.     else if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
  214.     {
  215.         if(fwfahrzeug[playerid] == 0)
  216.         {
  217.         StopAudioStreamForPlayer(playerid);
  218.         }
  219.     }
  220.     return 0;
  221. }
  222. public OnPlayerUpdate(playerid)
  223. {
  224.     if(!IsPlayerConnected(playerid)) return 0;
  225.     if(IsPlayerNPC(playerid)) return 1;
  226.  
  227.  
  228.     if(GetPlayerInterior(playerid) == 17) {
  229.         if(IsPlayerInRangeOfPoint(playerid,70.0,489.5824,-14.7563,1000.6797)) {
  230.             if(!GetPVarInt(playerid,"Funk")) {
  231.                 SetPVarInt(playerid,"Funk",1);
  232.                 PlayAudioStreamForPlayer(playerid, "http://www.thebravest.com/manhattan/manhattan.htm",480.9575,-3.5402,1002.0781,40.0,true);
  233.             }
  234.         }
  235.     }
  236.     else {
  237.         if(GetPVarInt(playerid,"Funk")) {
  238.             DeletePVar(playerid,"Funk");
  239.             StopAudioStreamForPlayer(playerid);
  240.         }
  241.     }
  242.  
  243.     return 1;
  244. }
  245. // ab hier darf nichts verändert werden!
  246. public Ersteller()
  247. {
  248.         SendClientMessageToAll(COLOR_RED, "-----------------------------------");
  249.         SendClientMessageToAll(COLOR_RED, "-------Ersteller:------------------");
  250.         SendClientMessageToAll(COLOR_RED, "-------Kaster und [NeR]Capo--------");
  251.         SendClientMessageToAll(COLOR_RED, "-----Orginal FWsys by FunSocke-----");
  252.         SendClientMessageToAll(COLOR_RED, "------Danke An HonigBrot-----------");
  253.         SendClientMessageToAll(COLOR_RED, "-----------------------------------");
  254.         return 1;
  255.  
  256. }
  257.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement