Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Sente-te livre para editares
- // Mantem apenas os meus creditos.
- // VISITE NOSSO SITE: http://www.sampknd.com/
- // SAMP KND MELHOR BLOG DE SAMP DO BRASIL
- #include <a_samp>
- new GetIn[MAX_PLAYERS], InteriorTruck[9], slot = 0;
- new van;
- forward Float:GetDistanceBetweenVehicles(vehicleid,carid);
- forward Float:GetDistBetweenVehiclePlayer(v1, p2);
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Carrinha das Motas por -> StreetGT <-");
- print("--------------------------------------\n");
- van = AddStaticVehicleEx(498,740.5068,-1332.7472,14.1702,269.5034,6,6,-1); // Mechanics Van
- InteriorTruck[0]= CreateObject(11292, 2081.333496, -1375.118530, 300.764832, 0.0000, 0.0000, 0.0000);
- InteriorTruck[1]= CreateObject(974, 2077.989258, -1376.559937, 300.831085, 0.0000, 0.0000, 0.0000);
- InteriorTruck[2]= CreateObject(974, 2077.123047, -1374.362671, 300.655640, 0.0000, 0.0000, 270.0000);
- InteriorTruck[3]= CreateObject(974, 2078.161133, -1373.030640, 300.330536, 0.0000, 0.0000, 0.0000);
- InteriorTruck[4]= CreateObject(2395, 2080.772949, -1376.560547, 299.490601, 0.0000, 0.0000, 180.0000);
- InteriorTruck[5]= CreateObject(1533, 2085.592773, -1373.328857, 299.552917, 0.0000, 0.0000, 270.0000);
- InteriorTruck[6]= CreateObject(1533, 2085.569824, -1374.802246, 299.539307, 0.0000, 0.0000, 270.0000);
- InteriorTruck[7]= CreateObject(1754, 2083.981445, -1373.538574, 299.553741, 0.0000, 0.0000, 0.0000);
- InteriorTruck[8]= CreateObject(1754, 2083.128906, -1373.539063, 299.553741, 0.0000, 0.0000, 0.0000);
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- main()
- {
- print("\n----------------------------------");
- print(" Carrinha das Motas por StreetGT");
- print(" Aproveita!");
- print("----------------------------------\n");
- }
- public OnPlayerConnect(playerid)
- {
- GetIn[playerid] = 0;
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if(strcmp(cmdtext, "/descarregar", true) == 0)
- {
- if(IsPlayerConnected(playerid))
- {
- if(GetPlayerVehicleID(playerid) == van)
- {
- if(slot == 0) return SendClientMessage(playerid, -1, "Não existe motas dentro da carrinha.");
- Descarregar();
- }
- else SendClientMessage(playerid, -1, "Tu não estás a conduzir a carrinha das motas!");
- }
- }
- return 0;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerEnterRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnRconCommand(cmd[])
- {
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- return 1;
- }
- public OnObjectMoved(objectid)
- {
- return 1;
- }
- public OnPlayerObjectMoved(playerid, objectid)
- {
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- return 1;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- return 1;
- }
- public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
- {
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if(newkeys & KEY_YES)
- {
- if(GetDistBetweenVehiclePlayer(van,playerid) <= 3 || IsPlayerInRangeOfPoint(playerid,3.0, 2084.6538,-1374.2390,300.5588))
- {
- GetInto(playerid);
- }
- }
- if ((newkeys==KEY_ACTION) && (IsPlayerInAnyVehicle(playerid)) && (GetPlayerState(playerid)==PLAYER_STATE_DRIVER))
- {
- if (GetVehicleModel(GetPlayerVehicleID(playerid)) == 498)
- {
- new vid = GetClosestVehicle(playerid);
- if(IsABike(vid))
- {
- if(!IsVehicleInUse(vid))
- {
- if(slot == 0)
- {
- SetVehiclePos(vid,2077.8936,-1375.0763,300.154);
- SetVehicleZAngle(vid,183.4);
- slot++;
- }
- else if(slot == 1)
- {
- SetVehiclePos(vid,2078.9941,-1375.0520,300.1554);
- SetVehicleZAngle(vid,183.4);
- slot++;
- }
- else if(slot == 2)
- {
- SetVehiclePos(vid,2079.8987,-1375.0085,300.1540);
- SetVehicleZAngle(vid,183.4);
- slot++;
- }
- else if(slot == 3)
- {
- SetVehiclePos(vid,2081.0239,-1374.8945,300.1557);
- SetVehicleZAngle(vid,183.4);
- slot++;
- }
- else return SendClientMessage(playerid,-1,"A carrinha das motas já se encontra cheia!");
- if(slot >=0 && slot <= 4 ) { LinkVehicleToInterior(vid,1), SendClientMessage(playerid,0x33CCFFAA,"Veículo rebocado para o interior!"); }
- }
- else SendClientMessage(playerid, -1,"Este veículo não está desocupado!");
- }
- else SendClientMessage(playerid, -1,"Este veículo não é uma mota!");
- }
- }
- return 1;
- }
- public OnRconLoginAttempt(ip[], password[], success)
- {
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- return 1;
- }
- stock GetInto(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- if(IsPlayerInAnyVehicle(playerid)) return 1;
- if(GetIn[playerid] == 0)
- {
- if(GetDistBetweenVehiclePlayer(van,playerid) <= 3)
- {
- GetIn[playerid] = 1;
- SetPlayerPos(playerid, 2084.479980, -1374.825928, 300.628052);
- SetPlayerFacingAngle(playerid, 0);
- SetCameraBehindPlayer(playerid);
- SetPlayerInterior(playerid, 1);
- }
- }
- else if(GetIn[playerid] == 1)
- {
- if(IsPlayerInRangeOfPoint(playerid,3.0, 2084.6538,-1374.2390,300.5588))
- {
- GetIn[playerid] = 0;
- new Float:X, Float:Y, Float:Z;
- GetVehiclePos(van, X, Y, Z);
- SetPlayerPos(playerid, X+4, Y, Z);
- SetPlayerInterior(playerid, 0);
- }
- }
- }
- return 1;
- }
- Descarregar()
- {
- for(new v = 0; v < MAX_VEHICLES; v++)
- {
- if(VehicleToPoint(20.0, v, 2084.479980, -1374.825928, 300.628052))
- {
- new Float:X, Float:Y, Float:Z;
- GetVehiclePos(van, X, Y, Z);
- SetVehiclePos(v, X+5, Y, Z);
- LinkVehicleToInterior(v,0);
- slot = 0;
- }
- }
- return 1;
- }
- public Float:GetDistBetweenVehiclePlayer(v1, p2)
- {
- new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
- if(!IsPlayerConnected(p2))
- {
- return -1.00;
- }
- GetVehiclePos(v1,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));
- }
- VehicleToPoint(Float:radi, vehicleid, Float:x, Float:y, Float:z)
- {
- new Float:oldposx, Float:oldposy, Float:oldposz;
- new Float:tempposx, Float:tempposy, Float:tempposz;
- GetVehiclePos(vehicleid, oldposx, oldposy, oldposz);
- tempposx = (oldposx -x);
- tempposy = (oldposy -y);
- tempposz = (oldposz -z);
- if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
- {
- return 1;
- }
- return 0;
- }
- forward GetClosestVehicle(playerid);
- public GetClosestVehicle(playerid)
- {
- new x,Float:dis,Float:dis2,car;
- car = 0;
- dis = 99999.99;
- for ( x = 0; x < MAX_VEHICLES; x++ )
- {
- dis2 = GetDistBetweenVehiclePlayer(x,playerid);
- if((dis2 < dis && dis2 < 8.0) && GetPlayerVehicleID(playerid) != x)
- {
- dis = dis2;
- car = x;
- }
- }
- return car;
- }
- stock IsABike(carid)
- {
- new id = GetVehicleModel(carid);
- if(id==448 || id==581 || id==522 || id==461 || id==463 || id==521 || id==523 || id==586|| id==468 || id==471 )
- {
- return 1;
- }
- return 0;
- }
- stock IsVehicleInUse(vehicleid)
- {
- new temp;
- for(new i=0;i<GetMaxPlayers();i++)
- {
- if(IsPlayerConnected(i) && IsPlayerInVehicle(i, vehicleid) && GetPlayerState(i)==PLAYER_STATE_DRIVER) { temp++; }
- }
- if(temp > 0)
- {
- return true;
- }
- else return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement