Advertisement
SSYT

Mr. Wang DealerShip

Dec 14th, 2017
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 5.90 KB | None | 0 0
  1. #include <a_samp>
  2. #include <a_actor>
  3.  
  4. new PlayerCP[MAX_PLAYERS];
  5. new WangActor,
  6.     WangCars[6],
  7.     bool:SpeekWang[MAX_PLAYERS],
  8.     bool:WangDeliver[MAX_PLAYERS],
  9.     VehicleDeliver[MAX_PLAYERS],
  10.     VehicleToDeliver[MAX_PLAYERS];
  11. new PlayerText:WangTD[MAX_PLAYERS][1];
  12.  
  13. #define PRESSED(%0) \
  14.     (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
  15.  
  16. public OnGameModeInit()
  17. {
  18.     WangActor = CreateActor(147, -1988.9906, 306.7720, 35.1794, 258.0676);
  19.     SetActorInvulnerable(WangActor, true);
  20.     SetActorHealth(WangActor, 100);
  21.     Create3DTextLabel("Press F to interact\n(69) Mr. Wang", 0xFFFFFFFF, -1988.9906, 306.7720, 35.3894+1, 20.0, 0, 0);
  22.     WangCars[0] = AddStaticVehicle(400, 2351.3931,1466.0297,10.5474,89.9896,0,1);   //
  23.     WangCars[1] = AddStaticVehicle(401, 1730.1884,2015.6097,10.5473,270.3722,0,1);  //
  24.     WangCars[2] = AddStaticVehicle(466, 1134.2227,1920.0132,10.5474,268.4950,0,1);  //
  25.     WangCars[3] = AddStaticVehicle(475, 41.7530,-243.3970,1.4657,355.7589,0,1);     //
  26.     WangCars[4] = AddStaticVehicle(545, -2390.5513,1128.0756,55.4532,161.5015,0,1); //
  27.     WangCars[5] = AddStaticVehicle(559, -2042.4554,-502.0495,35.0630,179.5511,0,1); //
  28.     return 1;
  29. }
  30.  
  31. public OnPlayerConnect(playerid)
  32. {
  33.     WangTD[playerid][0] = CreatePlayerTextDraw(playerid, 318.125000, 328.833160, "Mr._Wang: Salut,_am_auzit_ca_ai_nevoie_de_niste_banii..._te_bagi_intr-o_afacere?~n~Mr._Wang: Am_nevoie_sa_imi_aduci_cele_6_masini_aici,_te_voi_plati_bine.~n~~n~Press_Y_to_accept_or_N_for_reject.");
  34.     PlayerTextDrawLetterSize(playerid, WangTD[playerid][0], 0.243124, 1.010832);
  35.     PlayerTextDrawAlignment(playerid, WangTD[playerid][0], 2);
  36.     PlayerTextDrawColor(playerid, WangTD[playerid][0], -33577473);
  37.     PlayerTextDrawSetShadow(playerid, WangTD[playerid][0], 0);
  38.     PlayerTextDrawSetOutline(playerid, WangTD[playerid][0], 0);
  39.     PlayerTextDrawBackgroundColor(playerid, WangTD[playerid][0], 255);
  40.     PlayerTextDrawFont(playerid, WangTD[playerid][0], 1);
  41.     PlayerTextDrawSetProportional(playerid, WangTD[playerid][0], 1);
  42.     PlayerTextDrawSetShadow(playerid, WangTD[playerid][0], 0);
  43.    
  44.    
  45.     PlayerCP[playerid] = -1;
  46.     SpeekWang[playerid] = false;
  47.     WangDeliver[playerid] = false;
  48.     VehicleDeliver[playerid] = -1;
  49.     VehicleToDeliver[playerid] = -1;
  50.     return 1;
  51. }
  52.  
  53. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  54. {
  55.     for(new i = 0, j = sizeof(WangCars); i <= j; i++) {
  56.         if(WangCars[i] >= 0 && WangDeliver[playerid] == true) {
  57.             VehicleToDeliver[playerid] = i;
  58.             SetPlayerCheckpoint(playerid, -1973.4478, 301.8968, 34.1620, 3.0);
  59.             PlayerCP[playerid] = 69;
  60.             if(IsPlayerInRangeOfPoint(playerid, 5.0, 2351.3931, 1466.0297, 10.5474)) {
  61.                 VehicleDeliver[playerid] = 1;
  62.             } else if(IsPlayerInRangeOfPoint(playerid, 5.0, 1730.1884,2015.6097,10.5473)) {
  63.                 VehicleDeliver[playerid] = 2;
  64.             } else if(IsPlayerInRangeOfPoint(playerid, 5.0, 1134.2227,1920.0132,10.5474)) {
  65.                 VehicleDeliver[playerid] = 3;
  66.             } else if(IsPlayerInRangeOfPoint(playerid, 5.0, 41.7530,-243.3970,1.4657)) {
  67.                 VehicleDeliver[playerid] = 4;
  68.             } else if(IsPlayerInRangeOfPoint(playerid, 5.0, -2390.5513,1128.0756,55.4532)) {
  69.                 VehicleDeliver[playerid] = 5;
  70.             } else if(IsPlayerInRangeOfPoint(playerid, 5.0, -2042.4554,-502.0495,35.0630)) {
  71.                 VehicleDeliver[playerid] = 6;
  72.             }
  73.         }
  74.     }
  75.     return 1;
  76. }
  77.  
  78. public OnPlayerEnterCheckpoint(playerid)
  79. {
  80.     if(PlayerCP[playerid] == 69) {
  81.         new vehicleid = VehicleToDeliver[playerid];
  82.         RemovePlayerFromVehicle(playerid);
  83.         DestroyVehicle(WangCars[vehicleid]);
  84.         printf("Ai adus masina #%d", vehicleid);
  85.         DisablePlayerCheckpoint(playerid);
  86.         GivePlayerMoney(playerid, random(5000) + 596);
  87.         GameTextForPlayer(playerid, "Deliver vehicle finish.", 2000, 3);
  88.         RemovePlayerMapIcon(playerid, VehicleDeliver[playerid]);
  89.         VehicleDeliver[playerid] = -1;
  90.         VehicleToDeliver[playerid] = -1;
  91.     }
  92.     return 1;
  93. }
  94.  
  95. stock ShowWangTD(playerid) {
  96.     if(WangDeliver[playerid] == false) {
  97.         PlayerTextDrawShow(playerid, WangTD[playerid][0]);
  98.     } else {
  99.         // PlayerTextDrawShow(playerid, WangTD[playerid][0]);
  100.     }
  101.     return 1;
  102. }
  103.  
  104. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  105. {
  106.     if(PRESSED(KEY_YES) && SpeekWang[playerid] == true) {
  107.         SpeekWang[playerid] = false;
  108.         WangDeliver[playerid] = true;
  109.         SetPlayerVirtualWorld(playerid, 0);
  110.         SetActorVirtualWorld(WangActor, 0);
  111.         TogglePlayerControllable(playerid, true);
  112.         PlayerTextDrawHide(playerid, WangTD[playerid][0]);
  113.         ClearActorAnimations(WangActor);
  114.  
  115.         SetPlayerMapIcon(playerid, 1, 2351.3931,1466.0297,10.5474,  55, 0, MAPICON_GLOBAL);
  116.         SetPlayerMapIcon(playerid, 2, 1730.1884,2015.6097,10.5473,  55, 0, MAPICON_GLOBAL);
  117.         SetPlayerMapIcon(playerid, 3, 1134.2227,1920.0132,10.5474,  55, 0, MAPICON_GLOBAL);
  118.         SetPlayerMapIcon(playerid, 4, 41.7530,-243.3970,1.4657,     55, 0, MAPICON_GLOBAL);
  119.         SetPlayerMapIcon(playerid, 5, -2390.5513,1128.0756,55.4532, 55, 0, MAPICON_GLOBAL);
  120.         SetPlayerMapIcon(playerid, 6, -2042.4554,-502.0495,35.0630, 55, 0, MAPICON_GLOBAL);
  121.         SendClientMessage(playerid, -1, "{cc540a}Mr. Wang: {FFFFFF}Trebuie sa aduci imi aduci aici cele 6 masini pentru a te platii.");
  122.     }
  123.    
  124.     if(PRESSED(KEY_NO) && SpeekWang[playerid] == true) {
  125.         SpeekWang[playerid] = false;
  126.         WangDeliver[playerid] = false;
  127.         SetPlayerVirtualWorld(playerid, 0);
  128.         SetActorVirtualWorld(WangActor, 0);
  129.         TogglePlayerControllable(playerid, true);
  130.         PlayerTextDrawHide(playerid, WangTD[playerid][0]);
  131.         ClearActorAnimations(WangActor);
  132.     }
  133.  
  134.     if(PRESSED(KEY_SECONDARY_ATTACK) && SpeekWang[playerid] == false) {
  135.         new Float: x, Float: y, Float: z;
  136.         GetActorPos(WangActor, x, y, z);
  137.        
  138.         if(!IsPlayerInAnyVehicle(playerid) && IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z)) {
  139.             SetPlayerVirtualWorld(playerid, 69);
  140.             SetPlayerPos(playerid, x+1.5, y, z);
  141.             SetActorVirtualWorld(WangActor, 69);
  142.             TogglePlayerControllable(playerid, false);
  143.             ApplyActorAnimation(WangActor, "MISC", "Idle_Chat_02", 4.1, 0, 0, 0, 0, 0);
  144.             ShowWangTD(playerid);
  145.             SpeekWang[playerid] = true;
  146.         }
  147.     }
  148.     return 1;
  149. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement