Advertisement
EnzoMetlc

[FilterScript] stunt.inc - ejemplo.

Aug 27th, 2015
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 6.35 KB | None | 0 0
  1. #include <a_samp>
  2. #include <ZCMD>
  3. #include <stunt>
  4.  
  5.  
  6. static Text:BonusUpd_BOX;
  7. static Text:BonusUpd_Stunt[2];
  8.  
  9. static PlayerText:BonusInfo[MAX_PLAYERS][2];
  10. static PlayerText:FinalBonusTD[MAX_PLAYERS];
  11.  
  12.  
  13. public OnGameModeInit()
  14. {
  15.     EnableStuntBonusForAll(false);
  16.    
  17.    
  18.     /* Bonus Update */
  19.     BonusUpd_BOX = TextDrawCreate(612.000000, 176.000000, "_");
  20.     TextDrawBackgroundColor(BonusUpd_BOX, 255);
  21.     TextDrawFont(BonusUpd_BOX, 1);
  22.     TextDrawLetterSize(BonusUpd_BOX, 0.720000, 10.900001);
  23.     TextDrawColor(BonusUpd_BOX, -1);
  24.     TextDrawSetOutline(BonusUpd_BOX, 0);
  25.     TextDrawSetProportional(BonusUpd_BOX, 1);
  26.     TextDrawSetShadow(BonusUpd_BOX, 1);
  27.     TextDrawUseBox(BonusUpd_BOX, 1);
  28.     TextDrawBoxColor(BonusUpd_BOX, 150);
  29.     TextDrawTextSize(BonusUpd_BOX, 392.000000, 3.000000);
  30.  
  31.     BonusUpd_Stunt[0] = TextDrawCreate(404.000000, 175.000000, "- Wheelie");
  32.     TextDrawBackgroundColor(BonusUpd_Stunt[0], 255);
  33.     TextDrawFont(BonusUpd_Stunt[0], 2);
  34.     TextDrawLetterSize(BonusUpd_Stunt[0], 0.509999, 2.100000);
  35.     TextDrawColor(BonusUpd_Stunt[0], 16777215);
  36.     TextDrawSetOutline(BonusUpd_Stunt[0], 1);
  37.     TextDrawSetProportional(BonusUpd_Stunt[0], 1);
  38.  
  39.     BonusUpd_Stunt[1] = TextDrawCreate(404.000000, 175.000000, "- Stoppie");
  40.     TextDrawBackgroundColor(BonusUpd_Stunt[1], 255);
  41.     TextDrawFont(BonusUpd_Stunt[1], 2);
  42.     TextDrawLetterSize(BonusUpd_Stunt[1], 0.509999, 2.100000);
  43.     TextDrawColor(BonusUpd_Stunt[1], 16777215);
  44.     TextDrawSetOutline(BonusUpd_Stunt[1], 1);
  45.     TextDrawSetProportional(BonusUpd_Stunt[1], 1);
  46.     return 1;
  47. }
  48.  
  49.  
  50. public OnPlayerConnect(playerid)
  51. {
  52.     BonusInfo[playerid][0] = CreatePlayerTextDraw(playerid, 405.000000, 202.000000, "_");
  53.     PlayerTextDrawBackgroundColor(playerid, BonusInfo[playerid][0], 255);
  54.     PlayerTextDrawFont(playerid, BonusInfo[playerid][0], 1);
  55.     PlayerTextDrawLetterSize(playerid, BonusInfo[playerid][0], 0.440000, 1.800000);
  56.     PlayerTextDrawColor(playerid, BonusInfo[playerid][0], -1);
  57.     PlayerTextDrawSetOutline(playerid, BonusInfo[playerid][0], 1);
  58.     PlayerTextDrawSetProportional(playerid, BonusInfo[playerid][0], 1);
  59.  
  60.     BonusInfo[playerid][1] = CreatePlayerTextDraw(playerid, 600.000000, 255.000000, "_");
  61.     PlayerTextDrawAlignment(playerid, BonusInfo[playerid][1], 3);
  62.     PlayerTextDrawBackgroundColor(playerid, BonusInfo[playerid][1], 255);
  63.     PlayerTextDrawFont(playerid, BonusInfo[playerid][1], 1);
  64.     PlayerTextDrawLetterSize(playerid, BonusInfo[playerid][1], 0.639999, 1.900000);
  65.     PlayerTextDrawColor(playerid, BonusInfo[playerid][1], -1);
  66.     PlayerTextDrawSetOutline(playerid, BonusInfo[playerid][1], 1);
  67.     PlayerTextDrawSetProportional(playerid, BonusInfo[playerid][1], 1);
  68.  
  69.     FinalBonusTD[playerid] = CreatePlayerTextDraw(playerid, 319.000000, 340.000000, "_");
  70.     PlayerTextDrawAlignment(playerid, FinalBonusTD[playerid], 2);
  71.     PlayerTextDrawBackgroundColor(playerid, FinalBonusTD[playerid], 255);
  72.     PlayerTextDrawFont(playerid, FinalBonusTD[playerid], 1);
  73.     PlayerTextDrawLetterSize(playerid, FinalBonusTD[playerid], 0.580000, 2.200000);
  74.     PlayerTextDrawColor(playerid, FinalBonusTD[playerid], -1);
  75.     PlayerTextDrawSetOutline(playerid, FinalBonusTD[playerid], 1);
  76.     PlayerTextDrawSetProportional(playerid, FinalBonusTD[playerid], 1);
  77.     return 1;
  78. }    
  79.  
  80.  
  81.  
  82. /* stunt.inc */
  83. public OnPlayerStartStunt(playerid, stuntid)
  84. {
  85.     new stunt[][] = {"Wheelie", "Stoppie"};
  86.     new str[53];
  87.    
  88.     format(str, 53, "* Comenzando acrobacia: {0000FF}%s{FFFFFF}.", stunt[stuntid - 1]);
  89.     SendClientMessage(playerid, -1, str);
  90.    
  91.     TextDrawShowForPlayer(playerid, BonusUpd_BOX);
  92.     TextDrawShowForPlayer(playerid, BonusUpd_Stunt[stuntid - 1]);
  93.     PlayerTextDrawShow(playerid, BonusInfo[playerid][0]);
  94.     PlayerTextDrawShow(playerid, BonusInfo[playerid][1]);
  95.     return 1;
  96. }
  97.  
  98. public OnPlayerUpdateStunt(playerid, stuntid, time, Float:dist)
  99. {
  100.     new info[144], bonus_str[14];
  101.     new bonus;
  102.    
  103.     switch(time / 1000)
  104.     {
  105.         case 2 .. 4: bonus = 1;
  106.         case 5 .. 9: bonus = 2;
  107.         case 10 .. 14: bonus = 3;
  108.         case 15 .. 25: bonus = 4;
  109.     }
  110.  
  111.     format(info, sizeof(info), "Tiempo: %imms~n~Distancia: %0.2fmtrs~n~Dinero: ~g~$%i", time, dist, (time / 1000) + floatround(dist));
  112.     format(bonus_str, sizeof(bonus_str), "Bonus ~r~X%i", bonus);
  113.    
  114.     PlayerTextDrawSetString(playerid, BonusInfo[playerid][0], info);
  115.     PlayerTextDrawSetString(playerid, BonusInfo[playerid][1], bonus_str);
  116.     return 1;
  117. }
  118.  
  119. public OnPlayerFinishStunt(playerid, stuntid, time, Float:dist, bool:success)
  120. {
  121.     SetTimerEx("HideTD", 3000, false, "d", playerid);
  122.    
  123.     if(time < 2000 || dist < 25.0) return 1; // Evitar falsas acrobacias
  124.    
  125.     new bonus;
  126.     switch(time / 1000)
  127.     {
  128.         case 2 .. 4: bonus = 1;
  129.         case 5 .. 9: bonus = 2;
  130.         case 10 .. 14: bonus = 3;
  131.         case 15 .. 25: bonus = 4;
  132.     }
  133.    
  134.     new stunt[][] = {"Wheelie", "Stoppie"};
  135.     new str[80];
  136.     new const money = ((time / 1000) + floatround(dist)) * bonus;
  137.    
  138.     if(success) format(str, 80, "Bonificacion por ~b~%s~w~: ~g~$%i~n~~w~Tiempo: %i'' - Distancia: %0.2f", stunt[stuntid - 1], money, time / 1000 , dist);
  139.     else format(str, 23, "Acrobacia ~r~fallida!");
  140.  
  141.     PlayerTextDrawSetString(playerid, FinalBonusTD[playerid], str);
  142.     PlayerTextDrawShow(playerid, FinalBonusTD[playerid]);
  143.     GivePlayerMoney(playerid, money);
  144.     return 1;
  145. }
  146.  
  147.  
  148.  
  149. /* ZCMD.inc */
  150. CMD:car(playerid, params[]) // Create a bike: PCJ-600(461), Pizzaboy(462), Sanchez(468)...
  151. {
  152.     new Float:Pos[3], Float:angle;
  153.  
  154.     GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
  155.     GetPlayerFacingAngle(playerid, angle);
  156.  
  157.     new const veh = CreateVehicle(strval(params), Pos[0], Pos[1], Pos[2], angle, 0, 0, -1, 1);
  158.     PutPlayerInVehicle(playerid, veh, 0);
  159.     return 1;
  160. }
  161.  
  162.  
  163.  
  164. /* Funciones */
  165. forward HideTD(playerid);
  166. public HideTD(playerid)
  167. {
  168.     TextDrawHideForPlayer(playerid, BonusUpd_BOX);
  169.     TextDrawHideForPlayer(playerid, BonusUpd_Stunt[0]);
  170.     TextDrawHideForPlayer(playerid, BonusUpd_Stunt[1]);
  171.    
  172.     PlayerTextDrawHide(playerid, BonusInfo[playerid][0]);
  173.     PlayerTextDrawHide(playerid, BonusInfo[playerid][1]);
  174.     PlayerTextDrawHide(playerid, FinalBonusTD[playerid]);
  175.    
  176.     PlayerTextDrawSetString(playerid, BonusInfo[playerid][0], "_");
  177.     PlayerTextDrawSetString(playerid, BonusInfo[playerid][1], "_");
  178.     return 1;
  179. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement