Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <ocmd>
- forward SetItFire();
- forward BurnPlayer();
- forward Feuerwehrcar(playerid);
- forward LoschenCar(playerid,FeuerID);
- forward Loschen(playerid,FeuerID);
- forward IsAFireFighter(playerid);
- forward IsPlayerInRangeOfFeuer(playerid, Float:radius);
- forward IsPlayerInRangeOfFeuerWehrAuto(playerid, Float:radius);
- forward IsPointInArea(Float:PX,Float:PY,Float:MinX, Float:MinY, Float:MaxX, Float:MaxY);
- #define MAX_FEUER 151
- #define MAX_HAUS 6
- #define Dialog_Feuerwehr 9598
- enum RAM_INFO
- {
- HausID,
- Float:Haus_Enter_X,
- Float:Haus_Enter_Y,
- Float:Haus_Enter_Z,
- Float:Haus_Exit_X,
- Float:Haus_Exit_Y,
- Float:Haus_Exit_Z,
- Interior,
- pickup_Innen,
- pickup_Ausen
- }
- enum TORE_INFO{
- Float:OpenX,
- Float:OpenY,
- Float:OpenZ,
- Float:CloseX,
- Float:CloseY,
- Float:CloseZ,
- ISOPEN
- };
- enum Fire_info
- {
- HouseID,
- Float:Firex,
- Float:Firey,
- Float:Firez,
- Fireactive,
- Firefighter,
- pickup
- };
- enum Player_Scheinwerfer{
- Float:Schein_X,
- Float:Schein_Y,
- Float:Schein_Z,
- Float:Schein_A,
- Schein_Objekt,
- Schein_Objekt2,
- Schein_Haben,
- Taschenlampe_Haben,
- Indoor
- }
- new FIRE;
- new Mask[MAX_PLAYERS];
- new Weste[MAX_PLAYERS];
- new InHouse[MAX_PLAYERS];
- new Flasche[MAX_PLAYERS];
- new RamPlace[MAX_HAUS][RAM_INFO] = {
- {0,1889.7766,-1102.6078,25.9435,2496.049804,-1695.238159,1014.742187,3,-1,-1},
- {1,1910.8580,-1112.5986,30.2627,2496.049804,-1695.238159,1014.742187,3,-1,-1},
- {2,1889.7766,-1102.6078,25.9435,2496.049804,-1695.238159,1014.742187,3,-1,-1},
- {3,1922.7523,-1114.9200,27.0883,2496.049804,-1695.238159,1014.742187,3,-1,-1},
- {4,1944.4146,-1104.2792,26.4531,2496.049804,-1695.238159,1014.742187,3,-1,-1},
- {5,1956.3961,-1115.4467,27.8305,2496.049804,-1695.238159,1014.742187,3,-1,-1}
- };
- new Scheinwerfer[MAX_PLAYERS][Player_Scheinwerfer];
- new FireTOR[8];
- new Fires[MAX_FEUER-1][Fire_info] =
- {
- {0,1889.7766,-1102.6078,25.9435,0,-1,0}, // //ID1
- {0,1889.2166,-1113.6791,26.0,0,-1,1}, // //ID1
- {0,1891.1300,-1113.4222,26.0,0,-1,2}, // //ID1
- {0,1886.4065,-1121.3563,25.0,0,-1,3}, // //ID1
- {0,1889.8990,-1118.7157,25.0,0,-1,4}, // //ID1
- {0,1893.3767,-1123.1920,25.0,0,-1,5}, // //ID1
- {0,1892.3390,-1123.4918,25.0,0,-1,6},// //ID1
- {0,1895.5298,-1114.2897,25.0,0,-1,7}, // //ID1
- {0,1893.1611,-1110.6904,25.0,0,-1,8}, // //ID1
- {0,1895.3075,-1102.5140,25.0,0,-1,9}, // //ID1
- {0,1890.3181,-1102.7148,26.0,0,-1,10}, // //ID1
- {0,1889.4672,-1097.0555,25.0,0,-1,11}, // //ID1
- {0,1884.2906,-1102.6754,25.0,0,-1,12}, // //ID1
- {0,1881.5980,-1093.9221,25.0,0,-1,13}, // //ID1
- {0,1879.3818,-1099.8719,25.0,0,-1,14}, // //ID1
- {0,2499.1372,-1706.7642,1014.7422,0,-1,15}, // //
- {0,2493.4895,-1711.4542,1014.7422,0,-1,16}, // //
- {0,2491.8987,-1701.4757,1014.7610,0,-1,17}, // //
- {0,2492.4844,-1695.0027,1014.7488,0,-1,18}, // //
- {0,2500.0776,-1700.8942,1015.5469,0,-1,19},
- {0,2498.6057,-1708.1536,1018.3438,0,-1,20}, // //
- {0,2493.6609,-1706.7434,1018.3368,0,-1,21}, // //
- {0,2491.4648,-1701.2579,1018.3438,0,-1,22}, // //
- {0,2495.7578,-1703.5537,1018.3438,0,-1,23}, // //
- {0,2500.0137,-1711.3540,1014.7422,0,-1,24},
- {1,1910.8580,-1112.5986,30.2627,0,-1,0}, //
- {1,1898.0471,-1118.4760,25.0,0,-1,1}, //
- {1,1902.4236,-1117.3004,25.0,0,-1,2}, //
- {1,1903.7328,-1122.2880,25.0,0,-1,3}, //
- {1,1908.6550,-1119.6453,25.0,0,-1,4}, //
- {1,1908.8674,-1113.6073,25.0,0,-1,5}, //
- {1,1914.0846,-1114.0305,25.0,0,-1,6}, //
- {1,1914.4355,-1102.6272,25.0,0,-1,7}, //
- {1,1910.1592,-1101.7762,25.0,0,-1,8}, //
- {1,1906.1002,-1094.8640,25.0,0,-1,9}, //
- {1,1903.6001,-1099.1346,25.0,0,-1,10}, //
- {1,1897.4680,-1092.4492,25.0,0,-1,11}, //
- {1,1897.0009,-1103.1221,25.0,0,-1,12}, //
- {1,1896.7610,-1112.0461,25.0,0,-1,13}, //
- {1,1899.1481,-1123.2512,25.0,0,-1,14}, //
- {1,2499.1372,-1706.7642,1014.7422,0,-1,15}, // //
- {1,2493.4895,-1711.4542,1014.7422,0,-1,16}, // //
- {1,2491.8987,-1701.4757,1014.7610,0,-1,17}, // //
- {1,2492.4844,-1695.0027,1014.7488,0,-1,18}, // //
- {1,2500.0776,-1700.8942,1015.5469,0,-1,19},
- {1,2498.6057,-1708.1536,1018.3438,0,-1,20}, // //
- {1,2493.6609,-1706.7434,1018.3368,0,-1,21}, // //
- {1,2491.4648,-1701.2579,1018.3438,0,-1,22}, // //
- {1,2495.7578,-1703.5537,1018.3438,0,-1,23}, // //
- {1,2500.0137,-1711.3540,1014.7422,0,-1,24},
- {2,1889.7766,-1102.6078,25.9435,0,-1,0},
- {2,1889.2166,-1113.6791,26.0,0,-1,1},
- {2,1891.1300,-1113.4222,26.0,0,-1,2},
- {2,1886.4065,-1121.3563,25.0,0,-1,3},
- {2,1889.8990,-1118.7157,25.0,0,-1,4},
- {2,1893.3767,-1123.1920,25.0,0,-1,5},
- {2,1892.3390,-1123.4918,25.0,0,-1,6},
- {2,1895.5298,-1114.2897,25.0,0,-1,7},
- {2,1893.1611,-1110.6904,25.0,0,-1,8},
- {2,1895.3075,-1102.5140,25.0,0,-1,9},
- {2,1890.3181,-1102.7148,26.0,0,-1,10},
- {2,1889.4672,-1097.0555,25.0,0,-1,11},
- {2,1884.2906,-1102.6754,25.0,0,-1,12},
- {2,1881.5980,-1093.9221,25.0,0,-1,13},
- {2,1879.3818,-1099.8719,25.0,0,-1,14},
- {2,2499.1372,-1706.7642,1014.7422,0,-1,15}, // //
- {2,2493.4895,-1711.4542,1014.7422,0,-1,16}, // //
- {2,2491.8987,-1701.4757,1014.7610,0,-1,17}, // //
- {2,2492.4844,-1695.0027,1014.7488,0,-1,18}, // //
- {2,2500.0776,-1700.8942,1015.5469,0,-1,19},
- {2,2498.6057,-1708.1536,1018.3438,0,-1,20}, // //
- {2,2493.6609,-1706.7434,1018.3368,0,-1,21}, // //
- {2,2491.4648,-1701.2579,1018.3438,0,-1,22}, // //
- {2,2495.7578,-1703.5537,1018.3438,0,-1,23}, // //
- {2,2500.0137,-1711.3540,1014.7422,0,-1,24},
- {3,1922.8833,-1114.8466,27.0883,0,-1,0}, // //3
- {3,1926.5300,-1114.6715,27.0,0,-1,1}, // //3
- {3,1916.6930,-1118.9037,26.0,0,-1,2}, // //3
- {3,1916.5295,-1113.0507,26.0,0,-1,3}, // //3
- {3,1915.1432,-1101.5618,26.0,0,-1,4}, // //3
- {3,1919.4825,-1099.1381,26.0,0,-1,5}, // //3
- {3,1919.1250,-1093.5547,26.0,0,-1,6}, // //3
- {3,1925.0759,-1095.6322,26.0,0,-1,7}, // //3
- {3,1928.7836,-1093.8676,26.0,0,-1,8}, // //3
- {3,1927.5078,-1099.6964,26.0,0,-1,9}, // //3
- {3,1928.8790,-1106.4839,26.0,0,-1,10}, // //3
- {3,1927.5210,-1115.6608,26.0,0,-1,11}, // //3
- {3,1928.9111,-1121.6437,26.0,0,-1,12}, // //3
- {3,1925.1537,-1121.2345,26.0,0,-1,13}, // //3
- {3,1922.6147,-1124.0177,25.0,0,-1,14}, // //3
- {3,2499.1372,-1706.7642,1014.7422,0,-1,15}, // //
- {3,2493.4895,-1711.4542,1014.7422,0,-1,16}, // //
- {3,2491.8987,-1701.4757,1014.7610,0,-1,17}, // //
- {3,2492.4844,-1695.0027,1014.7488,0,-1,18}, // //
- {3,2500.0776,-1700.8942,1015.5469,0,-1,19},
- {3,2498.6057,-1708.1536,1018.3438,0,-1,20}, // //
- {3,2493.6609,-1706.7434,1018.3368,0,-1,21}, // //
- {3,2491.4648,-1701.2579,1018.3438,0,-1,22}, // //
- {3,2495.7578,-1703.5537,1018.3438,0,-1,23}, // //
- {3,2500.0137,-1711.3540,1014.7422,0,-1,24},
- {4,1944.4146,-1104.2792,26.4531,0,-1,0}, // //4
- {4,1940.4240,-1121.3937,26.0,0,-1,1}, // //4
- {4,1938.5166,-1115.8898,27.0,0,-1,2}, // //4
- {4,1942.7000,-1116.3934,27.0,0,-1,3}, // //4
- {4,1946.2882,-1114.5315,27.0,0,-1,4}, // //4
- {4,1947.8719,-1120.5040,26.0,0,-1,5}, // //4
- {4,1949.4573,-1123.8040,26.0,0,-1,6}, // //4
- {4,1949.3430,-1115.8190,26.0,0,-1,7}, // //4
- {4,1947.3396,-1109.9110,26.0,0,-1,8}, // //4
- {4,1948.7029,-1106.8677,26.0,0,-1,9}, // //4
- {4,1945.8407,-1102.3647,26.0,0,-1,10}, // //4
- {4,1938.9337,-1104.8245,26.0,0,-1,11}, // //4
- {4,1937.3560,-1099.6936,26.0,0,-1,12}, // //4
- {4,1935.3062,-1103.3104,26.0,0,-1,13}, // //4
- {4,1929.7386,-1104.6324,26.0,0,-1,14}, // //4
- {4,2499.1372,-1706.7642,1014.7422,0,-1,15}, // //
- {4,2493.4895,-1711.4542,1014.7422,0,-1,16}, // //
- {4,2491.8987,-1701.4757,1014.7610,0,-1,17}, // //
- {4,2492.4844,-1695.0027,1014.7488,0,-1,18}, // //
- {4,2500.0776,-1700.8942,1015.5469,0,-1,19},
- {4,2498.6057,-1708.1536,1018.3438,0,-1,20}, // //
- {4,2493.6609,-1706.7434,1018.3368,0,-1,21}, // //
- {4,2491.4648,-1701.2579,1018.3438,0,-1,22}, // //
- {4,2495.7578,-1703.5537,1018.3438,0,-1,23}, // //
- {4,2500.0137,-1711.3540,1014.7422,0,-1,24},
- {5,1956.3961,-1115.4467,27.8305,0,-1,0}, // //5
- {5,1955.0698,-1120.3387,27.0,0,-1,1}, // //5
- {5,1955.7924,-1115.8146,28.0,0,-1,2}, // //5
- {5,1960.3033,-1114.6946,28.0,0,-1,3}, // //5
- {5,1958.3920,-1121.4792,27.0,0,-1,4}, // //5
- {5,1963.2944,-1114.7791,26.0,0,-1,5}, // //5
- {5,1961.9972,-1109.6270,27.0,0,-1,6}, // //5
- {5,1960.6274,-1100.8917,27.0,0,-1,7}, // //5
- {5,1956.4510,-1101.5505,27.0,0,-1,8}, // //5
- {5,1952.4231,-1097.9447,27.0,0,-1,9}, // //5
- {5,1949.0735,-1101.8732,27.0,0,-1,10}, // //5
- {5,1950.2546,-1111.0997,27.0,0,-1,11}, // //5
- {5,1949.2008,-1117.7598,27.0,0,-1,12}, // //5
- {5,1959.5428,-1124.4280,27.0,0,-1,13}, // //5
- {5,1956.4510,-1101.5505,27.0,0,-1,14}, // //5//EDIT
- {5,2499.1372,-1706.7642,1014.7422,0,-1,15}, // //
- {5,2493.4895,-1711.4542,1014.7422,0,-1,16}, // //
- {5,2491.8987,-1701.4757,1014.7610,0,-1,17}, // //
- {5,2492.4844,-1695.0027,1014.7488,0,-1,18}, // //
- {5,2500.0776,-1700.8942,1015.5469,0,-1,19},
- {5,2498.6057,-1708.1536,1018.3438,0,-1,20}, // //
- {5,2493.6609,-1706.7434,1018.3368,0,-1,21}, // //
- {5,2491.4648,-1701.2579,1018.3438,0,-1,22}, // //
- {5,2495.7578,-1703.5537,1018.3438,0,-1,23}, // //
- {5,2500.0137,-1711.3540,1014.7422,0,-1,24}
- };
- new TORES[8][TORE_INFO] = {
- {1725.599609375, -1142.2998046875, 24.89999961853 ,1725.599609375, -1142.3000488281, 20.89999961853 ,1},
- {1708.5, -1142.19921875, 24.89999961853 ,1708.5, -1142.1999511719, 20.89999961853 ,1},
- {1733.69921875, -1142.2998046875, 24.89999961853 ,1733.69921875, -1142.3000488281, 20.89999961853 ,1},
- {1716.51953125, -1142.19921875, 24.89999961853 ,1716.51953125, -1142.1999511719, 20.89999961853 ,1},
- {1742.7600097656, -1142.3000488281, 24.89999961853 ,1742.7600097656, -1142.3000488281, 20.89999961853 ,1},
- {1751.0, -1142.3000488281, 24.89999961853 ,1751.0, -1142.3000488281, 20.89999961853 ,1},
- {1723.90002441,-1108.59997559,24.80000114 ,1716.00002441,-1108.59997559,24.80000114 ,1},
- {1731.80004883,-1108.59997559,24.80000114 ,1739.70004883,-1108.59997559,24.80000114 ,1}
- };
- new FIRETIMER;
- new Fire[25];
- public OnGameModeInit()
- {
- SetTimer("BurnPlayer",1051,1);
- FIRETIMER = SetTimer("SetItFire",1031,0);
- for(new x = 0;x < 25;x++)
- {
- Fire[x] = CreateObject(18689,9999,9999,9999,90,0,0);
- }
- CreateObject(4640, 1729.599609375, -1140.69921875, 24.700000762939, 0, 0, 90);
- CreateObject(4640, 1729.5999755859, -1140.6999511719, 28.0, 0, 0, 90);
- CreateObject(4640, 1729.599609375, -1140.69921875, 24.700000762939, 0, 0, 90);
- CreateObject(4640, 1712.5, -1140.599609375, 24.700000762939, 0, 0, 90);
- CreateObject(4640, 1712.5, -1140.5999755859, 28.0, 0, 0, 90);
- CreateObject(4640, 1746.9000244141, -1140.6999511719, 24.700000762939, 0, 0, 90);
- CreateObject(4640, 1746.9000244141, -1140.6999511719, 28.0, 0, 0, 90);
- FireTOR[0] = CreateObject(11313, 1725.599609375, -1142.2998046875, 24.89999961853, 0, 0, 90);//zu
- CreateObject(11313, 1725.599609375, -1142.3000488281, 20.89999961853, 0, 0, 90);//offen
- CreateObject(11313, 1708.5, -1142.1999511719, 20.89999961853, 0, 0, 90);//offen
- FireTOR[1] = CreateObject(11313, 1708.5, -1142.19921875, 24.89999961853, 0, 0, 90);//zu
- FireTOR[2] = CreateObject(11313, 1733.69921875, -1142.2998046875, 24.89999961853, 0, 0, 90);//zu
- CreateObject(11313, 1733.69921875, -1142.3000488281, 20.89999961853, 0, 0, 90);//offen
- CreateObject(11313, 1716.51953125, -1142.1999511719, 20.89999961853, 0, 0, 90);//offen
- FireTOR[3] = CreateObject(11313, 1716.51953125, -1142.19921875, 24.89999961853, 0, 0, 90);//zu
- CreateObject(11313, 1742.7600097656, -1142.3000488281, 20.89999961853, 0, 0, 90);//offen
- FireTOR[4] = CreateObject(11313, 1742.7600097656, -1142.3000488281, 24.89999961853, 0, 0, 90);//zu
- FireTOR[5] = CreateObject(11313, 1751, -1142.3000488281, 24.89999961853, 0, 0, 90);//zu
- FireTOR[6] = CreateObject(986,1723.90002441,-1108.59997559,24.80000114,0.00000000,0.00000000,0.00000000); //object(gate_autol) (1)<---------------------------Tor, wo nach rechts muss
- FireTOR[7] = CreateObject(985,1731.80004883,-1108.59997559,24.80000114,0.00000000,0.00000000,0.00000000); //object(gate_autor) (2)<---------------------------Tor, wo nach links muss
- CreateObject(11313, 1751, -1142.3000488281, 20.89999961853, 0, 0, 90);//offen
- CreateObject(971, 1708.8990478516, -1142.2099609375, 30.459999084473, 0, 180, 0);
- CreateObject(971, 1716.0200195313, -1142.1999511719, 30.469999313354, 0, 179.99450683594, 0);
- CreateObject(971, 1724.375, -1142.3000488281, 30.469999313354, 0, 179.99450683594, 0);
- CreateObject(971, 1733.0050048828, -1142.3000488281, 30.469999313354, 0, 179.99450683594, 0);
- CreateObject(971, 1743.3499755859, -1142.3000488281, 30.469999313354, 0, 179.99450683594, 0);
- CreateObject(971, 1750.3499755859, -1142.3000488281, 30.469999313354, 0, 179.99450683594, 0);
- CreateObject(10828, 1755.3000488281, -1124.4000244141, 28.799999237061, 0, 0, 270);
- CreateObject(10828, 1704, -1124, 29, 0, 0, 90);
- CreateObject(3749, 1728.5999755859, -1111, 28.89999961853, 0, 0, 0);
- CreateObject(1613, 1737.0999755859, -1130, 28.299999237061, 0, 0, 0);
- CreateObject(11245, 1721.0999755859, -1144.9000244141, 29.39999961853, 0, 0, 270);
- CreateObject(11245, 1738.1999511719, -1144.9000244141, 29.200000762939, 0, 0, 270);
- CreatePickup(1239,1,1742.8485,-1131.7037,24.0781);
- AddStaticVehicle(407,1708.4618,-1136.6073,24.3201,177.7533,3,-1); // feuerauto
- AddStaticVehicle(407,1716.8624,-1136.9115,24.3122,178.1461,3,-1); // feuerauto
- AddStaticVehicle(407,1725.5073,-1136.8195,24.3215,179.4288,3,-1); // feuerauto
- AddStaticVehicle(407,1734.5051,-1137.3710,24.3220,178.4930,3,-1); // feuerauto
- AddStaticVehicle(407,1742.5302,-1137.4628,24.3112,179.6624,3,-1); // feuerauto
- AddStaticVehicle(407,1751.0054,-1137.2489,24.3200,180.7295,3,-1); // feuerauto
- }
- public IsPointInArea(Float:PX,Float:PY,Float:MinX, Float:MinY, Float:MaxX, Float:MaxY)
- {
- if(PX >= MinX && PX <= MaxX && PY >= MinY && PY <= MaxY)
- {
- return 1;
- }
- return 0;
- }
- public IsPlayerInRangeOfFeuerWehrAuto(playerid, Float:radius){
- new Float:VX,Float:VY,Float:VZ;
- for(new vehicleid=0;vehicleid<MAX_VEHICLES;vehicleid++){
- if(GetVehicleModel(vehicleid) == 407){
- GetVehiclePos(vehicleid,VX,VY,VZ);
- if(IsPlayerInRangeOfPoint(playerid,radius,VX,VY,VZ))
- {
- return true;
- }
- }
- }
- return false;
- }
- public IsPlayerInRangeOfFeuer(playerid, Float:radius){
- for(new x=0;x<MAX_FEUER;x++)
- {
- if(Fires[x][Fireactive] < 1 )
- {
- }
- else
- {
- if(IsPlayerInRangeOfPoint(playerid,radius,Fires[x][Firex],Fires[x][Firey],Fires[x][Firez]))
- {
- return true;
- }
- }
- }
- return false;
- }
- public IsAFireFighter(playerid){
- if(GetPlayerSkin(playerid) == 277||GetPlayerSkin(playerid) == 278||GetPlayerSkin(playerid) == 279)
- {
- return true;
- }
- else return false;
- }
- public Loschen(playerid,FeuerID)
- {
- if(IsPlayerAimingAt(playerid,Fires[FeuerID][Firex],Fires[FeuerID][Firey],Fires[FeuerID][Firez],0.4))
- {
- if(Fires[FeuerID][Fireactive] >= 2)
- {
- if(!IsPlayerInRangeOfPoint(playerid,3.0,Fires[FeuerID][Firex],Fires[FeuerID][Firey],Fires[FeuerID][Firez])){Fires[FeuerID][Fireactive] = 1;Fires[FeuerID][Firefighter] = -1;return GameTextForPlayer(playerid,"Das Feuer ist nicht erreichtbar aus dieser Entfernung!!",2500,3);}
- if(IsPlayerInRangeOfPoint(playerid,15.0,Scheinwerfer[playerid][Schein_X],Scheinwerfer[playerid][Schein_Y],Scheinwerfer[playerid][Schein_Z]))
- {
- if(Fires[FeuerID][Fireactive] >= 30)
- {
- GivePlayerMoney(playerid,50);
- SetObjectPos(Fire[Fires[FeuerID][pickup]],9999,9999,9999);
- Fires[FeuerID][Fireactive] = -1;
- return GameTextForPlayer(playerid,"Das Feuer ist geloescht!",2500,3);
- }
- }else{
- if(Fires[FeuerID][Fireactive] >= 50)
- {
- GivePlayerMoney(playerid,50);
- SetObjectPos(Fire[Fires[FeuerID][pickup]],9999,9999,9999);
- Fires[FeuerID][Fireactive] = -1;
- return GameTextForPlayer(playerid,"Das Feuer ist geloescht!",2500,3);
- }
- }
- GameTextForPlayer(playerid,"Feuer wird geloescht!",100,3);
- Fires[FeuerID][Fireactive]++;
- SetTimerEx("Loschen",100,0,"ii",playerid,FeuerID);
- return true;
- }
- else
- {
- Fires[FeuerID][Fireactive] = 1;
- Fires[FeuerID][Firefighter] = -1;
- return GameTextForPlayer(playerid,"Das loeschen wurde abgebrochen!",2500,3);
- }
- }
- else
- {
- Fires[FeuerID][Fireactive] = 1;
- Fires[FeuerID][Firefighter] = -1;
- return GameTextForPlayer(playerid,"Sie ziehlen nicht mehr auf das Feuer!Das loeschen wurde abgebrochen!",2500,3);
- }
- }
- public LoschenCar(playerid,FeuerID)
- {
- if(IsPlayerAimingAt(playerid,Fires[FeuerID][Firex],Fires[FeuerID][Firey],Fires[FeuerID][Firez]-1,2.5))
- {
- if(Fires[FeuerID][Fireactive] >= 2)
- {
- if(!IsPlayerInRangeOfPoint(playerid,15.0,Fires[FeuerID][Firex],Fires[FeuerID][Firey],Fires[FeuerID][Firez])){Fires[FeuerID][Fireactive] = 1;Fires[FeuerID][Firefighter] = -1;return GameTextForPlayer(playerid,"Das Feuer ist nicht erreichtbar aus dieser Entfernung!!",2500,3);}
- if(IsPlayerInRangeOfPoint(playerid,15.0,Scheinwerfer[playerid][Schein_X],Scheinwerfer[playerid][Schein_Y],Scheinwerfer[playerid][Schein_Z])){
- if(Fires[FeuerID][Fireactive] >= 20){GivePlayerMoney(playerid,50);SetObjectPos(Fire[Fires[FeuerID][pickup]],9999,9999,9999);Fires[FeuerID][Fireactive] = -1;return GameTextForPlayer(playerid,"Das Feuer ist geloescht!",2500,3);}
- }else{
- if(Fires[FeuerID][Fireactive] >= 40){GivePlayerMoney(playerid,50);SetObjectPos(Fire[Fires[FeuerID][pickup]],9999,9999,9999);Fires[FeuerID][Fireactive] = -1;return GameTextForPlayer(playerid,"Das Feuer ist geloescht!",2500,3);}
- }
- GameTextForPlayer(playerid,"Feuer wird geloescht!",100,3);
- Fires[FeuerID][Fireactive]++;
- SetTimerEx("LoschenCar",100,0,"ii",playerid,FeuerID);
- return true;
- }else{Fires[FeuerID][Fireactive] = 1;Fires[FeuerID][Firefighter] = -1;return GameTextForPlayer(playerid,"Das loeschen wurde abgebrochen!",2500,3);}
- }else{Fires[FeuerID][Fireactive] = 1;Fires[FeuerID][Firefighter] = -1;return GameTextForPlayer(playerid,"Sie ziehlen nicht mehr auf das Feuer!Das loeschen wurde abgebrochen!",2500,3);}
- }
- ocmd:respawnall(playerid,params[])
- {
- for(new x=0;x<MAX_VEHICLES;x++){
- SetVehicleToRespawn(x);
- if(IsPlayerConnected(x)){
- SpawnPlayer(x);
- DestroyObject(Scheinwerfer[x][Schein_Objekt]);
- DestroyObject(Scheinwerfer[x][Schein_Objekt2]);
- Scheinwerfer[x][Schein_X] = 99999;
- Scheinwerfer[x][Schein_Y] = 99999;
- Scheinwerfer[x][Schein_Z] = 99999;
- Scheinwerfer[x][Schein_A] = 99999;
- Scheinwerfer[x][Schein_Haben] = 0;
- Scheinwerfer[x][Schein_Objekt] = -1;
- Scheinwerfer[x][Schein_Objekt2] = -1;
- Scheinwerfer[x][Indoor] = -1;
- Scheinwerfer[x][Taschenlampe_Haben] = 0;
- Mask[x] = 0;
- Weste[x] = 0;
- }
- }
- for(new x=0;x < 9;x++){
- MoveObject(FireTOR[x],TORES[x][OpenX],TORES[x][OpenY],TORES[x][OpenZ],0.5);
- TORES[x][ISOPEN] = 0;
- }
- KillTimer(FIRETIMER);
- new rnd2 = random(5);
- if(rnd2==0){ FIRETIMER = SetTimer("SetItFire",1000*10*60,0); }
- if(rnd2==1){ FIRETIMER = SetTimer("SetItFire",1000*15*60,0); }
- if(rnd2==2){ FIRETIMER = SetTimer("SetItFire",1000*5*60,0); }
- if(rnd2==3){ FIRETIMER = SetTimer("SetItFire",1000*20*60,0); }
- if(rnd2==4){ FIRETIMER = SetTimer("SetItFire",1000*25*60,0); }
- return 0;
- }
- ocmd:ram(playerid,params[])
- {
- if(Scheinwerfer[playerid][Taschenlampe_Haben] == 0)return SendClientMessage(playerid,0xFF0000FF,"Sie haben die Taschenlampe zum einschlagen nicht dabei!");
- for(new x=0;x<MAX_HAUS;x++){
- if(IsPlayerInRangeOfPoint(playerid,2.5,RamPlace[x][Haus_Enter_X],RamPlace[x][Haus_Enter_Y],RamPlace[x][Haus_Enter_Z])){
- SetPlayerInterior(playerid,RamPlace[x][Interior]);
- SetPlayerPos(playerid,RamPlace[x][Haus_Exit_X],RamPlace[x][Haus_Exit_Y],RamPlace[x][Haus_Exit_Z]);
- Scheinwerfer[playerid][Indoor] = x;
- InHouse[playerid] = 1;
- }
- }
- if(IsPlayerInRangeOfPoint(playerid,5.0,RamPlace[Scheinwerfer[playerid][Indoor]][Haus_Exit_X],RamPlace[Scheinwerfer[playerid][Indoor]][Haus_Exit_Y],RamPlace[Scheinwerfer[playerid][Indoor]][Haus_Exit_Z])){
- SetPlayerInterior(playerid,0);
- SetPlayerPos(playerid,RamPlace[Scheinwerfer[playerid][Indoor]][Haus_Enter_X],RamPlace[Scheinwerfer[playerid][Indoor]][Haus_Enter_Y],RamPlace[Scheinwerfer[playerid][Indoor]][Haus_Enter_Z]);
- Scheinwerfer[playerid][Indoor] = -1;
- InHouse[playerid] = 0;
- }
- return 0;
- }
- ocmd:scheinwerfer(playerid,params[])
- {
- if(Scheinwerfer[playerid][Schein_Objekt] != -1)return SendClientMessage(playerid,0xFF0000FF,"Sie haben schon einen Scheinwerfer aufgestellt!");
- if(Scheinwerfer[playerid][Schein_Haben] == 0)return SendClientMessage(playerid,0xFF0000FF,"Sie haben keinen Scheinwerfer dabei!");
- new Float:Px,Float:Py,Float:Pz,Float:Pa;
- GetPlayerPos(playerid,Px,Py,Pz);
- GetPlayerFacingAngle(playerid,Pa);
- Px += floatsin(-Pa, degrees)*2;
- Py += floatcos(-Pa, degrees)*2;
- Scheinwerfer[playerid][Schein_X] = Px;
- Scheinwerfer[playerid][Schein_Y] = Py;
- Scheinwerfer[playerid][Schein_Z] = Pz-3;
- Scheinwerfer[playerid][Schein_A] = Pa;
- Scheinwerfer[playerid][Schein_Objekt] = CreateObject(8879,Px,Py,Pz+5,0,0,Pa);
- Px += floatsin(-Pa, degrees)*4.9;
- Py += floatcos(-Pa, degrees)*4.9;
- Scheinwerfer[playerid][Schein_Objekt2] = CreateObject(8880,Px,Py,Pz+6,0,0,Pa);
- Scheinwerfer[playerid][Schein_Haben] = 0;
- SendClientMessage(playerid,0xFF0000FF,"Sie haben ihren Scheinwerfer aufgestellt!");
- return 0;
- }
- ocmd:abbauen(playerid,params[])
- {
- if(Scheinwerfer[playerid][Schein_Objekt] == -1)return SendClientMessage(playerid,0xFF0000FF,"Sie haben keinen Scheinwerfer aufgestellt!");
- if(!IsPlayerInRangeOfPoint(playerid,2.5,Scheinwerfer[playerid][Schein_X],Scheinwerfer[playerid][Schein_Y],Scheinwerfer[playerid][Schein_Z]+3))return SendClientMessage(playerid,0xFF0000FF,"Sie sind nicht an ihrem Scheinwerfer!");
- DestroyObject(Scheinwerfer[playerid][Schein_Objekt]);
- DestroyObject(Scheinwerfer[playerid][Schein_Objekt2]);
- Scheinwerfer[playerid][Schein_X] = 99999;
- Scheinwerfer[playerid][Schein_Y] = 99999;
- Scheinwerfer[playerid][Schein_Z] = 99999;
- Scheinwerfer[playerid][Schein_A] = 99999;
- Scheinwerfer[playerid][Schein_Haben] = 1;
- Scheinwerfer[playerid][Schein_Objekt] = -1;
- Scheinwerfer[playerid][Schein_Objekt2] = -1;
- SendClientMessage(playerid,0xFF0000FF,"Sie haben ihren Scheinwerfer abgebaut!");
- return 0;
- }
- /*if (strcmp("/Duty", cmdtext, true, 10) == 0)
- {
- if(!IsPlayerInRangeOfPoint(playerid,1.5,1742.8485,-1131.7037,24.0781))return SendClientMessage(playerid,0xFF0000FF,"Sie sind nicht am Duty Punkt!");
- new rnd = random(3);
- if(rnd == 0){SetPlayerSkin(playerid,277);}
- else if(rnd == 1){SetPlayerSkin(playerid,278);}
- else if(rnd == 2){SetPlayerSkin(playerid,279);}
- else{SendClientMessage(playerid,0xFF0000FF,"Duty gehen gescheitert");}
- return 0;
- }*/
- ocmd:mv(playerid,params[])
- {
- if(!IsAFireFighter(playerid))return SendClientMessage(playerid,0xFF0000FF,"Sie sind kein Staatsmitglied!");
- for(new x=0;x < 9;x++){
- if(IsPlayerInRangeOfPoint(playerid,12.5,TORES[x][OpenX],TORES[x][OpenY],TORES[x][OpenZ]))
- {
- if(TORES[x][ISOPEN] == 1)
- {
- MoveObject(FireTOR[x],TORES[x][CloseX],TORES[x][CloseY],TORES[x][CloseZ],0.5);
- TORES[x][ISOPEN] = 0;
- }
- else if(TORES[x][ISOPEN] == 0)
- {
- MoveObject(FireTOR[x],TORES[x][OpenX],TORES[x][OpenY],TORES[x][OpenZ],0.5);
- TORES[x][ISOPEN] = 1;
- }
- }
- }
- return 0;
- }
- ocmd:create(playerid,params[])
- {
- new rnd = random(MAX_HAUS);
- new First;
- for(new x = 0;x < MAX_FEUER;x++)
- {
- Fires[x][Fireactive] = -1;
- Fires[x][Firefighter] = -1;
- if(Fires[x][HouseID] == rnd){
- Fires[x][Fireactive] = 1;
- Fires[x][Firefighter] = -1;
- SetObjectPos(Fire[Fires[x][pickup]],Fires[x][Firex],Fires[x][Firey]+1.5,Fires[x][Firez]-1);
- if(First == 0){
- First = 1;
- FIRE = 1;
- for(new y = 0;y < MAX_PLAYERS; y++){
- if(IsAFireFighter(y)){
- SetPlayerCheckpoint(y,Fires[x][Firex],Fires[x][Firey],Fires[x][Firez],5.0);
- new Gebieta[128];
- new input[124];
- if(IsPointInArea(Fires[x][Firex],Fires[x][Firey],-1114.7791,-1120.7240,1963.2944,1878.1533)){ Gebieta="Glen Park";}
- else{ Gebieta="Unbekanntes Territorium";}
- format(input,sizeof(input),"[ZENTRALE]:{FF0000}Der Brand liegt in Folgendem Gebiet: %s Hausnr: %i",Gebieta,rnd);
- SendClientMessage(y,0xFF5B00FF,"[ZENTRALE]:{FF0000}Ein Brand wurde gemeldet! ");
- SendClientMessage(y,0xFF5B00FF,input);
- SendClientMessage(y,0xFF5B00FF,"[ZENTRALE]:{FF0000}Alle nahegelegenen Einheiten sofort zur Brandstelle.");
- SendClientMessage(y,0xFF5B00FF,"[ZENTRALE]:{FF0000}Am Marker darf in das Gebäude eingedrungen werden(/Ram).");
- }
- }
- }
- continue;//18694
- }
- }
- if(First == 0){
- SendClientMessage(playerid,0xFF0000FF,"[FEUERWACHE]:Es konnte kein Brannt gefunden werden!");
- }
- KillTimer(FIRETIMER);
- new rnd2 = random(5);
- if(rnd2==0){ FIRETIMER = SetTimer("SetItFire",1000*10*60,0); }
- if(rnd2==1){ FIRETIMER = SetTimer("SetItFire",1000*15*60,0); }
- if(rnd2==2){ FIRETIMER = SetTimer("SetItFire",1000*5*60,0); }
- if(rnd2==3){ FIRETIMER = SetTimer("SetItFire",1000*20*60,0); }
- if(rnd2==4){ FIRETIMER = SetTimer("SetItFire",1000*25*60,0); }
- return 0;
- }
- Float:DistanceCameraTargetToLocation(Float:CamX, Float:CamY, Float:CamZ, Float:ObjX, Float:ObjY, Float:ObjZ, Float:FrX, Float:FrY, Float:FrZ)
- {
- new Float:TGTDistance;
- // get distance from camera to target
- TGTDistance = floatsqroot((CamX - ObjX) * (CamX - ObjX) + (CamY - ObjY) * (CamY - ObjY) + (CamZ - ObjZ) * (CamZ - ObjZ));
- new Float:tmpX, Float:tmpY, Float:tmpZ;
- tmpX = FrX * TGTDistance + CamX;
- tmpY = FrY * TGTDistance + CamY;
- tmpZ = FrZ * TGTDistance + CamZ;
- return floatsqroot((tmpX - ObjX) * (tmpX - ObjX) + (tmpY - ObjY) * (tmpY - ObjY) + (tmpZ - ObjZ) * (tmpZ - ObjZ));
- }
- public Feuerwehrcar(playerid){
- new Float:FX,Float:FY,Float:FZ;
- ZielAufBoden(playerid, FX,FY,FZ);
- SetPlayerCheckpoint(playerid,FX,FY,FZ,5.0);
- }
- stock ZielAufBoden(playerid, &Float:zielX, &Float:zielY, &Float:zielZ)
- {
- new
- Float:fPktX,
- Float:fPktY,
- Float:fPktZ,
- Float:fX,
- Float:fY,
- Float:fZ,
- Float:fVecX,
- Float:fVecY,
- Float:fVecZ;
- GetPlayerPos(playerid,fX,fY,fZ);
- GetPlayerCameraFrontVector(playerid,fVecX,fVecY,fVecZ);
- for(new r = 1 ; r < 100 ; r++)
- {
- fPktX = ( fX + ( r * fVecX ));
- fPktY = ( fY + ( r * fVecY ));
- fPktZ = ( fZ + ( r * fVecZ ));
- if(fPktZ < fZ-1)
- {
- zielX = fPktX;
- zielY = fPktY;
- zielZ = fZ;
- return 0;
- }
- }
- return 0;
- }
- stock IsPlayerAimingAt(playerid, Float:x, Float:y, Float:z, Float:radius)
- {
- new Float:cx,Float:cy,Float:cz,Float:fx,Float:fy,Float:fz;
- GetPlayerCameraPos(playerid, cx, cy, cz);
- GetPlayerCameraFrontVector(playerid, fx, fy, fz);
- return (radius >= DistanceCameraTargetToLocation(cx, cy, cz, x, y, z, fx, fy, fz));
- }
- public BurnPlayer(){
- for(new x=0;x<MAX_PLAYERS;x++){
- if(IsPlayerConnected(x)){
- if(!IsPlayerInAnyVehicle(x)){
- if(InHouse[x] == 1 && Flasche[x] == 0){
- new Float:Health;
- GetPlayerHealth(x,Health);
- SetPlayerHealth(x,Health-5);
- if(Weste[x] == 0 && Mask[x] == 0){
- if(IsPlayerInRangeOfFeuer(x,1.5)){
- GetPlayerHealth(x,Health);
- SetPlayerHealth(x,Health-5);
- }
- }else if(Mask[x] == 0){
- if(IsPlayerInRangeOfFeuer(x,1.5)){
- GetPlayerHealth(x,Health);
- SetPlayerHealth(x,Health-2);
- }
- }else if(Weste[x] == 0){
- if(IsPlayerInRangeOfFeuer(x,1.5)){
- GetPlayerHealth(x,Health);
- SetPlayerHealth(x,Health-3);
- }
- }
- }else{
- if(Weste[x] == 0 && Mask[x] == 0){
- if(IsPlayerInRangeOfFeuer(x,1.5)){
- new Float:Health;
- GetPlayerHealth(x,Health);
- SetPlayerHealth(x,Health-5);
- }
- }
- else if(Mask[x] == 0){
- if(IsPlayerInRangeOfFeuer(x,1.5)){
- new Float:Health;
- GetPlayerHealth(x,Health);
- SetPlayerHealth(x,Health-2);
- }
- }
- else if(Weste[x] == 0){
- if(IsPlayerInRangeOfFeuer(x,1.5)){
- new Float:Health;
- GetPlayerHealth(x,Health);
- SetPlayerHealth(x,Health-3);
- }
- }
- }
- }
- }
- }
- return true;
- }
- public SetItFire(){
- new int1;
- for(new x = 0;x < MAX_PLAYERS;x++)
- {
- if(IsAFireFighter(x))
- {
- int1++;
- }
- }
- if(int1 == 0)return FIRETIMER = SetTimer("SetItFire",1000*1*60,0);
- new rnd2 = random(5);
- if(rnd2==0){ FIRETIMER = SetTimer("SetItFire",1000*10*60,0); }
- if(rnd2==1){ FIRETIMER = SetTimer("SetItFire",1000*15*60,0); }
- if(rnd2==2){ FIRETIMER = SetTimer("SetItFire",1000*5*60,0); }
- if(rnd2==3){ FIRETIMER = SetTimer("SetItFire",1000*20*60,0); }
- if(rnd2==4){ FIRETIMER = SetTimer("SetItFire",1000*25*60,0); }
- new rnd = random(MAX_HAUS);
- new First;
- for(new x = 0;x < MAX_FEUER;x++)
- {
- Fires[x][Fireactive] = -1;
- Fires[x][Firefighter] = -1;
- if(Fires[x][HouseID] == rnd){
- Fires[x][Fireactive] = 1;
- Fires[x][Firefighter] = -1;
- SetObjectPos(Fire[Fires[x][pickup]],Fires[x][Firex],Fires[x][Firey]+1.5,Fires[x][Firez]-1);
- if(First == 0){
- First = 1;
- FIRE = 1;
- for(new y = 0;y < MAX_PLAYERS; y++){
- if(IsAFireFighter(y)){
- SetPlayerCheckpoint(y,Fires[x][Firex],Fires[x][Firey],Fires[x][Firez],5.0);
- new Gebietq[68];
- new input[124];
- if(IsPointInArea(Fires[x][Firex],Fires[x][Firey],-1114.7791,-1120.7240,1963.2944,1878.1533)){ Gebietq="Glen Park";}
- else{ Gebietq="Unbekanntes Territorium";}
- format(input,sizeof(input),"[ZENTRALE]:{FF0000}Der Brand liegt in Folgendem Gebiet: %s Hausnr: %i",Gebietq,rnd);
- SendClientMessage(y,0xFF5B00FF,"[ZENTRALE]:{FF0000}Ein Brand wurde gemeldet! ");
- SendClientMessage(y,0xFF5B00FF,input);
- SendClientMessage(y,0xFF5B00FF,"[ZENTRALE]:{FF0000}Alle nahegelegenen Einheiten sofort zur Brandstelle.");
- SendClientMessage(y,0xFF5B00FF,"[ZENTRALE]:{FF0000}Am Marker darf in das Gebäude eingedrungen werden(/Ram).");
- }
- }
- }
- continue;//18694
- }
- }
- return 0;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- new input[128];
- if(newkeys == 65536){
- if(!IsAFireFighter(playerid))return false;
- if(IsPlayerInRangeOfFeuerWehrAuto(playerid,2.0)){
- ShowPlayerDialog(playerid,Dialog_Feuerwehr,DIALOG_STYLE_LIST,"FEUERWEHR","FEUERLÖSCHER\nFEUER-SCHUTZMASKE\nFEUER-SCHUTZWESTE\nSCHEINWERFER\nTASCHENLAMPE\nSAUERSTOFF-FLASCHE\nBEENDEN","OK","");
- }else return SendClientMessage(playerid,0xAF0000FF,"Sie sind an keinem Feuerwehrauto!");
- }
- if(newkeys == 132){
- if(!IsAFireFighter(playerid))return false;
- if(IsPlayerInAnyVehicle(playerid))return false;
- if(FIRE == 1){
- for(new x = 0;x < MAX_FEUER;x++)
- {
- //if(Fires[x][Firefighter] == -1 || Fires[x][Firefighter] == playerid)
- //{
- if(IsPlayerAimingAt(playerid,Fires[x][Firex],Fires[x][Firey],Fires[x][Firez],0.4))
- {
- if(Fires[x][Fireactive] == 1)
- {
- if(GetPlayerWeapon(playerid) == 42){
- if(IsPlayerInRangeOfPoint(playerid,3,Fires[x][Firex],Fires[x][Firey],Fires[x][Firez])){
- format(input,sizeof(input),"Feuer wird geloescht!");
- GameTextForPlayer(playerid,input,100,3);
- Fires[x][Fireactive] = 2;
- Fires[x][Firefighter] = playerid;
- SetTimerEx("Loschen",100,0,"ii",playerid,x);
- return true;
- }else return GameTextForPlayer(playerid,"Das Feuer ist nicht erreichtbar aus dieser Entfernung!!",2500,3);
- }else return GameTextForPlayer(playerid,"Feuer kann man nur mit einem Feuerlöscher loeschen!",2500,3);
- }
- }
- //}else return GameTextForPlayer(playerid,"Feuer kann nur von einem Feuerwehrmann geloescht werden!",2500,3);
- }
- }else return GameTextForPlayer(playerid,"Kein Einsatz!",1000,3);
- }
- if(newkeys == 4){
- if(!IsAFireFighter(playerid))return false;
- if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 407)return false;
- if(FIRE == 1){
- for(new x = 0;x < MAX_FEUER;x++)
- {
- //if(Fires[x][Firefighter] == -1 || Fires[x][Firefighter] == playerid)
- //{
- if(IsPlayerAimingAt(playerid,Fires[x][Firex],Fires[x][Firey],Fires[x][Firez]-1,2.5))
- {
- if(Fires[x][Fireactive] == 1)
- {
- if(IsPlayerInRangeOfPoint(playerid,15,Fires[x][Firex],Fires[x][Firey],Fires[x][Firez])){
- format(input,sizeof(input),"Feuer wird geloescht!");
- GameTextForPlayer(playerid,input,100,3);
- Fires[x][Fireactive] = 2;
- Fires[x][Firefighter] = playerid;
- SetTimerEx("LoschenCar",100,0,"ii",playerid,x);
- return true;
- }else return GameTextForPlayer(playerid,"Das Feuer ist nicht erreichtbar aus dieser Entfernung!!",2500,3);
- }
- }
- //}else return GameTextForPlayer(playerid,"Feuer kann nur von einem Feuerwehrmann geloescht werden!",2500,3);
- }
- }else return GameTextForPlayer(playerid,"Kein Einsatz!",1000,3);
- }
- if(newkeys){
- if(!IsAFireFighter(playerid))return false;
- for(new x = 0;x < MAX_FEUER;x++)
- {
- if(Fires[x][Fireactive] > 1 &&Fires[x][Fireactive] < 50 && Fires[x][Firefighter] == playerid)
- {
- Fires[x][Fireactive] = 1;
- Fires[x][Firefighter] = -1;
- GameTextForPlayer(playerid,"Loeschen abgebrochen da sie nicht mehr darauf spruehen!",2500,3);
- }
- }
- }
- return 1;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- if(GetVehicleModel(vehicleid) == 407){
- if(IsAFireFighter(playerid))return true;
- TogglePlayerControllable(playerid,0);
- TogglePlayerControllable(playerid,1);
- SendClientMessage(playerid,0x0041FFFF,"Du bist nicht bei der Feuerwehr!");
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement