Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //-------->___________________________________<---------------------------------
- //-------->Script Hersteller: [NeR]CAPO________<--------------------------------
- //-------->Dieses Script darf nicht als eigenes ausgegeebn werden<--------------
- //-------->Den Befehl /credits dürft ihr nicht entfernen !!<------------------
- /*To Do List
- -Feuerwehr Fraktion [Erledigt]
- -Tacho [Erledigt]
- -Feuerwehr System [In Arbeit]
- -Feuerwehr Autos einfügen [Erledigt]
- -Nur Feuerwehr Leute Autos fahren [Erledigt&Ungetestet]
- */
- #include <a_samp>
- //Fraktionen
- new feuerwehr[MAX_PLAYERS];
- //Fraktionen
- #define FILTERSCRIPT
- #if defined FILTERSCRIPT
- //Farben
- #define DUNKELBLAU 0x0005FFFF
- #define HELLBLAU 0x009BFFFF
- #define HELLBLAU2 0x00CDFFFF
- #define LILABLAU 0x3200FFFF
- #define ROT 0xFF0000FF
- #define COLOR_RED 0xFF0000FF
- #define HELLROT 0xFF0000A4
- #define ORANGE 0xFF8C00FF
- #define ORANGE2 0xFFA000FF
- #define ORANGEGELB 0xFFC800FF
- #define HELLGRUEN 0x73FF00FF
- #define GRUEN 0x00FF1EFF
- #define GRUENBLAU 0x00FF8CFF
- #define SCHWARZ 0x000000FF
- #define GRAUV1 0x8C8C8CFF
- #define GRAUV2 0xAAAAAAFF
- #define GRAUV3 0x464646FF
- #define GRAUV4 0xBEBEBEFF
- #define ROSA 0xFF00D7FF
- #define LILA 0xB400FFFF
- #define BRAUNROT 0x4B0000FF
- #define WEIß 0xFEFEFEFF
- #define BRAUN 0x370000FF
- #define CYAN 0x00FFF0FF
- #define ORANGEV2 0xFF4600FF
- #define LILAV2 0x7800FFFF
- #define GRAUV5 0xD2D2D2FF
- #define GRASGRUEN 0x69FF00FF
- #define GRASGRUENV2 0xB9FF00FF
- #define LILAROT 0xFF0055FF
- #define HAUTFARBE 0xCF6C008C
- #define HELLROSA 0xCF6CE08C
- #define DUNKELGRÜN 0x002400FF
- #define DUNKELBLAUV2 0x002438FF
- #define SANITAETERFARBE 0xFF4435FF
- #define HELLROSAV2 0xFF84FFFF
- #define GELB 0xFFFF00FF
- #define DUNKELLILA 0xB000CCFF
- #define WEINROT 0xB0003CFF
- #define ANDERSGELB 0xCCDD8CFF
- #define DUNKELGRAU 0x3C3C3CFF
- #define DIFFERENZROSA 0xC75C83B5
- #define PISSGELB 0xFFFF0FB5
- #define HELLGRUENV5 0x00FF0041
- #define GANZWEIß 0xFFFFFFFF
- #define FBIBLAU 0x1400FFFF
- #define LVPDBLAU 0x00AFFFFF
- #define GSGRUEN 0x41FF00FF
- #define BALLALILA 0xAA00FFFF
- #define HITMANSCHWARZ 0x0A0A0AFF
- #define TERRORORANGE 0xFF6E00FF
- #define CRIMEROT 0xFF0005FF
- #define ZIVIWEIß 0xF0F0F0FF
- #define COLOR_LIGHTBLUE 0x0093FFFF
- //Farben
- //Dialoge
- #define icondialog 500
- //dialoge
- forward OnPlayerCommandText(playerid,cmdtext[]);
- // Distance
- new Float:Xneu[MAX_PLAYERS];
- new Float:Yneu[MAX_PLAYERS];
- new Float:Zneu[MAX_PLAYERS];
- new Float:Xalt[MAX_PLAYERS];
- new Float:Yalt[MAX_PLAYERS];
- new Float:Zalt[MAX_PLAYERS];
- new Float:Num[MAX_PLAYERS];
- // Textdraw
- new Text:kmhdraw;
- // kmh
- forward kmh();
- //Timer Variables
- new JQTimer;
- //Public Forwards (Die Neuen)
- forward jobquit(playerid);
- forward OnPlayerPickUpPickup(playerid, pickupid);
- forward OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]);
- forward OnPlayerStateChange(playerid, newstate, oldstate);
- forward FahrzeugCheck(playerid);
- forward Float:GetDistanceBetweenPlayers(p1,p2);
- //Icons/Pickups
- new fwicon;
- //Feuerwehr Fahrzeuge
- new fwfahrzeuge[2];
- forward IstFwCar(carid);
- public OnFilterScriptInit()
- {
- //Überprüfung -> Weniger als 400 HP Fahrzeug
- SetTimer("FahrzeugCheck",1000,1);
- fwicon = CreatePickup(1239,2,1172.9697,-1323.3682,15.3982);
- //-------Timer-----------
- SetTimer("kmh", 300, 1);
- //-----Textdraw----------
- kmhdraw = TextDrawCreate(518, 421, "KM/H: 0");
- TextDrawFont(kmhdraw, 3);
- //TextDrawLetterSize(kmhdraw, 0.6, 1.8);
- TextDrawColor(kmhdraw, GRAUV2);
- //TextDrawSetOutline(kmhdraw, 2);
- //-----------------------
- //Fahrzeuge Feuerwehr
- fwfahrzeuge[0] = AddStaticVehicle(407,1176.4711,-1338.2260,13.6110,268.8260,0,0); // Fwehrauto1
- fwfahrzeuge[1] = AddStaticVehicle(416,1178.0768,-1309.0399,13.4901,267.3289,0,0); // Fwehrauto2
- //Fahrzeuge Feuerwehr
- return 1;
- }
- #endif
- public kmh()
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerInAnyVehicle(i) == 1)
- {
- //---------------------------------------------------
- GetPlayerPos(i, Xneu[i], Yneu[i], Zneu[i]);
- Num[i] = (Xneu[i] - Xalt[i]) - (Yneu[i] - Yalt[i]) - (Zneu[i] - Zalt[i]);
- Xalt[i] = Xneu[i]; Yalt[i] = Yneu[i]; Zalt[i] = Zneu[i];
- Num[i] = Num[i] * 4;
- //---------------------------------------------------
- if(Num[i] < 0)
- {
- Num[i] = Num[i] - Num[i] - Num[i];
- }
- //---------------------------------------------------
- new string1[256];
- format(string1, sizeof(string1), "KM/H: %0f", Num[i]);
- TextDrawSetString(Text:kmhdraw,string1);
- }
- }
- }
- // Beim Austeigen wird Textdraw ausgeblendet! Funktion
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- TextDrawHideForPlayer(playerid, Text:kmhdraw);
- return 1;
- }
- // Beim Einsteigen wird Textdraw angezeigt! Funktion
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- TextDrawShowForPlayer(playerid, Text:kmhdraw);
- return 1;
- }
- public jobquit(playerid)
- {
- KillTimer(JQTimer);
- SendClientMessage(playerid,HELLBLAU,"Du kannst deinen Job als Freiwillige Feuerwehr nun beenden.");
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new cmd[256];
- new sendername[MAX_PLAYER_NAME];
- new idx;
- if(strcmp(cmd, "/retten", true) == 0)
- {
- new string [256];
- new tmp[256];
- new giveplayer[200];
- new text[70];
- if(IsPlayerConnected(playerid))
- {
- tmp = strtok(cmdtext, idx);
- new otherplayer = strval(tmp);
- if(!strlen(tmp))
- {
- SendClientMessage(playerid, GRAUV2, "Benutze: /retten [ID]");
- return 0;
- }
- if(!IsPlayerConnected(otherplayer)) return SendClientMessage(playerid, ROT, "Ungültige ID!");
- if(GetDistanceBetweenPlayers(playerid,otherplayer <= 5.0))
- {
- GetPlayerName(otherplayer, giveplayer, sizeof(giveplayer));
- GetPlayerName(playerid, sendername, sizeof(sendername));
- new Float:X;
- new Float:Y;
- new Float:Z;
- GetPlayerPos(playerid,X,Y,Z);
- SetPlayerPos(otherplayer,X,Y+1,Z);
- new rand = random(50);
- format(string, sizeof(string), "Du hast %s gerettet. Du bekommst %d$", giveplayer,rand);
- GivePlayerMoney(playerid,rand);
- SendClientMessage(playerid,WEIß, string);
- format(text, sizeof(text),"Du wurdest von %s gerettet, dir wurde -%d$ als Rettungskosten abgezogen.",playerid,rand);
- SendClientMessage(otherplayer, WEIß, text);
- TogglePlayerControllable(otherplayer, 1);
- TogglePlayerControllable(playerid, 1);
- }
- else
- {
- SendClientMessage(playerid, COLOR_RED, "Du kannst %s (ID %d )nicht retten, er zuweit weg!");
- }
- }
- return 0;
- }
- if(strcmp("/feuerwehr kündigen",cmdtext,true) == 0)
- {
- if(IsPlayerInRangeOfPoint(playerid,3.0,1172.9697,-1323.3682,15.3982))
- {
- if(feuerwehr[playerid] == 1)
- {
- if(JQTimer == 0)
- {
- feuerwehr[playerid] = 0;
- SendClientMessage(playerid,HELLBLAU,"Du hast deinen Job als Freiwillige Feuerwehr gekündigt.");
- return 1;
- }
- else
- {
- SendClientMessage(playerid,ROT,"Du kannst deinen Job noch nicht kündigen.");
- }
- }
- else
- {
- SendClientMessage(playerid,ROT,"Du arbeitset nicht bei der Freiwilligen Feuerwehr, also kannst du nichts kündigen.");
- }
- }
- else
- {
- SendClientMessage(playerid,ROT,"Du bist nicht beim Krankenhaus in LS.");
- }
- return 1;
- }
- if(strcmp("/feuerwehr beitreten",cmdtext,true) == 0)
- {
- if(IsPlayerInRangeOfPoint(playerid,3.0,1172.9697,-1323.3682,15.3982))
- {
- if(feuerwehr[playerid] == 0)
- {
- JQTimer = SetTimer("jobquit",1800000,0);
- SendClientMessage(playerid,DUNKELGRÜN,"Du bist nun Mitglied der Freiwilligen Feuerwehr.");
- feuerwehr[playerid] = 1;
- }
- else
- {
- SendClientMessage(playerid,ROT,"Du bist schon Mitglied der Freiwilligen Feuerwehr.");
- }
- }
- else
- {
- SendClientMessage(playerid,ROT,"Du bist nicht beim Krankenhaus in LS");
- }
- return 1;
- }
- if(strcmp("/credits",cmdtext,true) == 0)
- {
- SendClientMessage(playerid,DUNKELGRÜN,"------Filterscript Mix------");
- SendClientMessage(playerid,ROT,"Der Scripthersteller ist: [NeR]CAPO");
- SendClientMessage(playerid,DUNKELGRÜN,"------Filterscript Mix------");
- return 1;
- }
- if(strcmp("/changelog",cmdtext,true) == 0)
- {
- SendClientMessage(playerid,HELLBLAU,"Es wurde folgendes gemacht:");
- SendClientMessage(playerid,HELLBLAU,"V0.1 KM/H System eingefügt");
- SendClientMessage(playerid,HELLBLAU,"V0.2 Feuerwehr Fraktion eingefügt");
- return 1;
- }
- return 0;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- if(pickupid == fwicon)
- {
- ShowPlayerDialog(playerid,icondialog,DIALOG_STYLE_MSGBOX,"Feuerwehr","Du kannst hier den Feuerwehr Job annehmen oder kündigen.\nTippe dafür /feuerwehr beitreten oder /feuerwehr kündigen","Ok","");
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- new fwcar = GetPlayerVehicleID(playerid);
- if(newstate == PLAYER_STATE_DRIVER)
- {
- if(IstFwCar(fwcar))
- {
- if(feuerwehr[playerid] == 1) {}
- else
- {
- RemovePlayerFromVehicle(playerid);
- SendClientMessage(playerid, COLOR_RED, "Du bist nicht bei der Feuerwehr!");
- }
- }
- }
- return 1;
- }
- public IstFwCar(carid)
- {
- for(new i = 0; i < sizeof(fwfahrzeuge); i++)
- {
- if(carid == fwfahrzeuge[i])
- {
- return 1;
- }
- }
- return 0;
- }
- public FahrzeugCheck(playerid)
- {
- new Float:health;
- new string[256];
- new vehicleid = GetPlayerVehicleID(playerid);
- if(IsPlayerInAnyVehicle(playerid))
- {
- GetVehicleHealth(vehicleid, health);
- format(string, 256, "Autoschaden: %0.0f",health);
- SendClientMessage(playerid,ROT, string);
- }
- if(IsPlayerConnected(playerid) && IsPlayerInAnyVehicle(playerid))
- {
- new veh;
- veh = GetPlayerVehicleID(playerid);
- GetVehicleHealth(veh, health);
- if(health < 400)
- {
- TogglePlayerControllable(playerid, 0);
- SendClientMessage(playerid, 0xFF6900AA, "Dieses Auto ist kaputt, du kommst nicht mehr raus. Rufe die Feuerwehr mit /Feuerwehr");
- SetVehicleHealth(vehicleid, 185.0);
- SetPlayerHealth(playerid,100);
- } }
- }
- strtok(const string[], &index)
- {
- new length = strlen(string);
- while ((index < length) && (string[index] <= ' '))
- {
- index++;
- }
- new offset = index;
- new result[20];
- while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
- {
- result[index - offset] = string[index];
- index++;
- }
- result[index - offset] = EOS;
- return result;
- }
- public Float:GetDistanceBetweenPlayers(p1,p2){
- new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
- if (!IsPlayerConnected(p1) || !IsPlayerConnected(p2)){
- return -1.00;
- }
- GetPlayerPos(p1,x1,y1,z1);
- GetPlayerPos(p2,x2,y2,z2);
- return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
- }
- //Damit keine Warnings entstehen !!
- #pragma unused IsNumeric
- #pragma unused ReturnUser
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement