Guest User

Matrix Useful Function's [v1.0]

a guest
Dec 26th, 2010
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 16.30 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. public
  4.     OnFilterScriptInit()                                                        //- executa os testes
  5. {
  6.     return 1;
  7. }
  8. stock
  9.     ClearString(string[])                                                       //- faz com que a string deixe strng limpa
  10.         return format(string,1,"%s",EOS);
  11.  
  12. stock
  13.     SubChars(source[],ch,char2)                                                 //- Substitui todos caracters contidos em uma strng por outros
  14. {
  15.     for(new i; source[i] ; ++ i)
  16.         if(source[i] == ch)
  17.             source[i] = char2;
  18. }
  19.  
  20. stock
  21.     FindChar(source[],chars)                                                    //- Procura um caracter em uma strng
  22. {
  23.     for(new i;source[i];i++)
  24.         if(source[i] == chars)
  25.             return true;
  26.     return false;
  27. }
  28.  
  29. stock
  30.     RandomTwoValues(value1, value2)
  31.         return random(value2-value1)+value1;
  32.  
  33. stock
  34.     DeleteChar(string[],chars)                                                  //- Deleta todos Caracters de uma String
  35. {
  36.     for(new i = 0; string[i]; ++i)
  37.          if(string[i] == chars)
  38.             string[i] = string[i+1];
  39.     return true;
  40. }
  41.  
  42. stock
  43.     StringFind(String1[],text[])                                                //- Procura algum texto na string | funcao pronta retorna true
  44. {
  45.     if(String1[0] == EOS || String2[0] == EOS)
  46.         return false;
  47.     if(strfind(String1 ,text, true ) == 0 )
  48.         return true;
  49.     else  return false;
  50. }
  51.  
  52. stock
  53.     StringCompare(String1[],String2[])                                          //- Compara duas string se são iguais | funcao pronta retorna true
  54. {
  55.     if(String1[0] == EOS || String2[0] == EOS)
  56.         return false;
  57.     if(strcmp(String1 ,String2, true ) == 0 )
  58.         return true;
  59.     else  return false;
  60. }
  61.  
  62. stock
  63.     GetPlayersInInterior(interiorid)                                            //- Vê quantos players está no interior
  64. {
  65.     new
  66.         PlayersNoInterior
  67.     ;
  68.     for(new i = 0; i< MAX_PLAYERS; i++)
  69.     {
  70.         if(IsPlayerConnected(i)  && GetPlayerInterior(i)  == interiorid)
  71.             PlayersNoInterior++;
  72.     }
  73.     return PlayersNoInterior;
  74. }
  75.  
  76. stock
  77.     SetHealthRangeOfPlayer(playerid, Float:range, Float:health)                 //- Seta vida de Players próximos ao player
  78. {
  79.     static
  80.         Float:X,
  81.         Float:Y,
  82.         Float:Z
  83.     ;
  84.     GetPlayerPos(playerid,X,Y,Z);
  85.     for(new i=0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i))
  86.         if(IsPlayerInRangeOfPoint(i, range, X, Y, Z))
  87.             SetPlayerHealth(i,health);
  88.     return true;
  89. }
  90.  
  91. stock
  92.     TeleportPlayerToPlayer(playerid, gotoid)                                    //- Teleporta player para o player
  93. {
  94.     static
  95.         Float:X,
  96.         Float:Y,
  97.         Float:Z
  98.     ;
  99.     GetPlayerPos(gotoid, X, Y, Z);
  100.     SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(gotoid));
  101.     SetPlayerInterior(playerid, GetPlayerInterior(gotoid));
  102.     return SetPlayerPos(playerid, X+1, Y+1, Z);
  103. }
  104.  
  105. stock
  106.     GiveWeaponRangeOfPlayer(playerid, Float:range, weaponid, ammo)              //- Da armas para players perto do player
  107. {
  108.     static
  109.         Float:X,
  110.         Float:Y,
  111.         Float:Z
  112.     ;
  113.     GetPlayerPos(playerid,X,Y,Z);
  114.     for(new i=0; i < MAX_PLAYERS; i++)
  115.         if(IsPlayerConnected  && IsPlayerInRangeOfPoint(i, range, X, Y, Z))
  116.             GivePlayerWeapon(player, weaponid, ammo);
  117.     return true;
  118. }
  119.  
  120. stock
  121.     GivePVarInt(playerid, var[], val)                                           //- Aumenta PVars
  122.         return SetPVarInt(playerid,var,GetPVarInt(playerid, var)+val);
  123.  
  124. stock
  125.     GetRemainder(divider, divide)                                               //- Geta o Resto de uma divisão
  126.         return divider % divide;
  127.  
  128. stock
  129.     GetPower(n1, n2)                                                            //- Executa potenciação
  130.         return floatround(floatpower(n1,n2));
  131.  
  132. stock
  133.     GetDivision(divider, divide)                                                //- Divide um Numero
  134.         return divider / divide;
  135.  
  136. stock
  137.     GetMultiplication(number, product)                                          //- Multiplica 2 Nuemros
  138.         return number * product;
  139.  
  140. stock
  141.     GetSubtraction(number, slow)                                                //- Substrai numeros
  142.         return number - slow;
  143.  
  144. stock
  145.     GetAddition(number,add)                                                     //- Adiciona Numneros
  146.         return number + add;
  147.  
  148. stock
  149.     GetPercent(n1,n2)
  150.         return (n1 / n2) * 100;
  151.  
  152. stock
  153.     SaveFileInStr(file[],string[],size=sizeof(string))                          //- Armazena arquivo em string
  154. {
  155.     if(!fexist(file))
  156.         return false;
  157.     static
  158.         File:file_add
  159.     ;
  160.     file_add = fopen(file, io_read);
  161.     fread(file_add, string,size);
  162.     fclose(file_add);
  163.     return true;
  164. }
  165.  
  166. stock
  167.     CrashPlayer(playerid)                                                       //- Crash o Player
  168. {
  169.     SetPlayerHoldingObject(playerid, 0, 0);
  170.     Kick(playerid);
  171.     return true;
  172. }
  173.  
  174. stock
  175.     VehiclesRespawn()                                                           //- Spawn todos Veiculos
  176. {
  177.     for(new i=0; i < MAX_VEHICLES;i++)
  178.         SetVehicleToRespawn(i);
  179.     return 1;
  180. }
  181.  
  182. stock
  183.     StringHaveTag(string[])                                                     //- se a string tem tag
  184.         return (StringFind(string,"[") ? (true) : (false);
  185.  
  186. stock
  187.     StringHaveUnder(string[])                                                   //- se a string tem underline
  188.         return (StringFind(string,"_") ? (true) : (false);
  189.  
  190. stock
  191.     NPCFollowPlayer(npcid,playerid)                                             //- NOPC perseguir Player
  192. {
  193.     SetPlayerToFacePlayer(playerid,paraid);
  194.     ApplyAnimation(playerid,"Muscular","MuscleRun",1,1,1,0,0,0);
  195. }
  196.  
  197. stock
  198.     SetPlayerToFacePlayer(playerid, targetid)                                   // Seta a Face de um player no outro ( Tannz0rz )
  199. {
  200.  
  201.         new
  202.                 Float:pX,
  203.                 Float:pY,
  204.                 Float:pZ,
  205.                 Float:X,
  206.                 Float:Y,
  207.                 Float:Z,
  208.                 Float:ang
  209.         ;
  210.  
  211.         if(!IsPlayerConnected(playerid) || !IsPlayerConnected(targetid)) return 0;
  212.  
  213.         GetPlayerPos(targetid, X, Y, Z);
  214.         GetPlayerPos(playerid, pX, pY, pZ);
  215.  
  216.         if( Y > pY ) ang = (-acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 90.0);
  217.         else if( Y < pY && X < pX ) ang = (acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 450.0);
  218.         else if( Y < pY ) ang = (acos((X - pX) / floatsqroot((X - pX)*(X - pX) + (Y - pY)*(Y - pY))) - 90.0);
  219.  
  220.         if(X > pX) ang = (floatabs(floatabs(ang) + 180.0));
  221.         else ang = (floatabs(ang) - 180.0);
  222.  
  223.         SetPlayerFacingAngle(playerid, ang);
  224.  
  225.         return 0;
  226.  
  227. }
  228.  
  229. stock
  230.     CreateFile(filename[])                                                      //- Cria um Arquivo
  231. {
  232.     if (fexist(filename))
  233.         return false;
  234.     static
  235.         File:Temp
  236.     ;
  237.     Temp = fopen(filename,io_write);
  238.     fclose(Temp);
  239.     return true;
  240. }
  241.  
  242. stock
  243.     FileRename(fileorigem[],filerename[])                                       //- Renomeia Arquivo
  244. {
  245.     new
  246.         string[512];
  247.         File:fileo = fopen(fileorigem, io_read),
  248.         File:filer = fopen(filerename, io_write)
  249.     ;
  250.    
  251.     while(fread(fileo, string))
  252.         fwrite(filer,string);
  253.        
  254.     fclose(filer);
  255.     fclose(fileo);
  256.     fremove(fileorigem);
  257.     printf("%s for %s",fileorigem,filerename);
  258.     format(string,sizeof string,"%s",0);
  259.     return 1;
  260. }
  261.  
  262. stock
  263.     CreateQuadrateFromPos(Float:x,Float:y,Float:distance)                       //- cria quadrado de x,y,z
  264. {
  265.     xmax = x + distance; xmin = x - distance;
  266.     ymax = y + distance; ymin = y - distance;
  267.     return true;
  268. }
  269.  
  270. stock
  271.     GetPlayersInArea(Float:minx, Float:maxx, Float:miny, Float:maxy)            //- Geta quantos player tem na area
  272. {
  273.     new
  274.         PlayersArea
  275.     ;
  276.     static
  277.         Float:x,
  278.         Float:y,
  279.         Float:z
  280.     ;
  281.     for(new i;i<MAX_PLAYERS;i++) if(IsPlayerConnected(i))
  282.     {
  283.         GetPlayerPos(i, x, y, z);
  284.         if (x > minx && x < maxx && y > miny && y < maxy)
  285.             PlayersArea++;
  286.     }
  287.     return PlayersArea;
  288. }
  289.  
  290. stock
  291.     GetPlayersInVehicle(vehicleid)                                              //- Geta quantos player tem num veiculos
  292. {
  293.     new PlayersVehicle = 0;
  294.     for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i))
  295.         if(IsPlayerConnected(i) && IsPlayerInVehicle(i,vehicleid))
  296.             PlayersVehicle++;
  297.     return PlayersVehicle;
  298. }
  299.  
  300. stock
  301.     SetPlayerMoney(playerid,count)                                              //- Seta o dinheiro do player
  302.         return GivePlayerMoney(playerid,count-GetPlayerMoney(playerid));
  303.  
  304. stock
  305.     GivePlayerHealth(playerid,count)                                            //- da vida ao player
  306.         return SetPlayerHealth(playerid,count+GetPlayerLife(playerid));
  307.  
  308.  
  309. stock
  310.     GivePlayerArmour(playerid,count)                                            //- da colete ao player
  311.         return SetPlayerArmour(playerid,count+GetPlayerArmor(playerid));
  312.  
  313. stock
  314.     GetPlayerLife(pid)                                                          //- Geta a Life do player
  315. {
  316.     new Float:LifeID;
  317.     return GetPlayerHealth(pid,LifeID);
  318. }
  319. stock
  320.     GetPlayerArmor(pid)                                                         //- Geta colete do player
  321. {
  322.     new Float:ArmorID;
  323.     return GetPlayerHealth(pid,ArmorID);
  324. }
  325. stock
  326.     ClearChatText(playerid)                                                     //- Limpa o Chat
  327. {
  328.     for (new tx = -1 ; a < 100; a++)
  329.         SendClientMessage(playerid,0xFFFFFFFF,"\n");
  330.     return true;
  331. }
  332. stock
  333.     GivePlayerVehicle(playerid, vehicleid)                                      //- Da um veiculo ao player
  334. {
  335.     if(!IsPlayerInAnyVehicle(playerid))
  336.     {
  337.         static
  338.             Float:x,
  339.             Float:y,
  340.             Float:z,
  341.             Float:a
  342.         ;
  343.         GetPlayerPos(playerid, x, y, z);
  344.         GetPlayerFacingAngle(playerid, a);
  345.         PutPlayerInVehicle(playerid,CreateVehicle(vehicleid, x, y, z, a, -1, -1, 50000),0);
  346.     }
  347. }
  348.  
  349. stock
  350.     GetPlayerNick(playerid)                                                     //- Geta nick em array já
  351. {
  352.     static
  353.         namep[24]
  354.     ;
  355.     GetPlayerName(playerid,namep,24);
  356.     return namep;
  357. }
  358.  
  359. stock
  360.     GetIDFromName(part[])                                                       //Geta id pelo nome
  361. {
  362.     static
  363.         namep[24]
  364.     ;
  365.     for(new id; id < MAX_PLAYERS; id++)
  366.     {
  367.         GetPlayerName(i,namep,24);
  368.         if(StringFind(namep,namep))
  369.             return id;
  370.     }
  371.     return -1;
  372. }
  373.  
  374. stock
  375.     GetPlayerRangeIP(playerid)                                                  //- Geta IP Permanente do Player
  376. {
  377.     static
  378.         range[19]
  379.     ;
  380.     GetPlayerIp(playerid,range,19);
  381.     strdel(range,strlen(range)-2,strlen(range));
  382.     format(range,17,"%s**",range);
  383.     return range;
  384. }
  385.  
  386. stock
  387.     StringLineChars(string[128])                                                //- Divide a string em letras por numeros | Criado por [OwN]Papet
  388. {
  389.     new
  390.         Letter[128][2]
  391.     ;
  392.     for(new l = 0; string[l] ; l++)
  393.     {
  394.         format(Letter[l],2,"%s",string[l]);
  395.         printf("Line: %d | Letter: %s",l,Letter[l]);
  396.     }
  397. }
  398.  
  399. stock
  400.     TeleportPlayerToVehicle(playerid, vehicleid)                                //- Teleporte player para aveiculo
  401. {
  402.     static
  403.         Float:X,
  404.         Float:Y,
  405.         FloatZ
  406.     ;
  407.     GetVehiclePos(vehicleid, X, Y, Z);
  408.     SetPlayerVirtualWorld(playerid, GetVehicleVirtualWorld(vehicleid));
  409.     return SetPlayerPos(playerid, X+1, Y+1, Z);
  410. }
  411.  
  412. stock
  413.     GetPlayerRankOne()                                                          //- Geta o melhor player do sevrer | Thankz to Toribio
  414. {
  415.     new
  416.         PlayerScore = 0,
  417.         PlayerHigh = -1
  418.     ;
  419.     for(new i = 0; i < MAX_PLAYERS ;i++) if(GetPlayerScore( i ) > PlayerScore)
  420.     {
  421.         PlayerHigh = i;
  422.         PlayerScore = GetPlayerScore( i );
  423.     }
  424.     return PlayerHigh;
  425. }
  426.  
  427. stock
  428.     ChangeGameMode(gamemode[])                                                  //- Muda game mode
  429. {
  430.     new
  431.         string[128]
  432.     ;
  433.     format(string, sizeof(string), "changegamemode %s", gamemode);
  434.     return SendRconCommand(string);
  435. }
  436.  
  437. stock
  438.     RemoveLineFromFile(file[],line[])                                           //- remove linha do arquivo
  439. {
  440.     new
  441.         strfile[256],
  442.         stringline[100],
  443.         File:gangfile = fopen(file, io_read),
  444.         File:tempfile = fopen("tmpfile.tmp", io_write);
  445.     ;
  446.     format(stringline,100,"%s\r\n",line);
  447.     while(fread(gangfile, strfile))
  448.         if(strcmp(strfile,stringline, true) != 0)
  449.            fwrite(tempfile, strfile);
  450.     fclose(gangfile);
  451.     fclose(tempfile);
  452.     fremove(file);
  453.     tempfile = fopen("tmpfile.tmp", io_read);
  454.     gangfile = fopen(file, io_write);
  455.     while(fread(tempfile, strfile))
  456.         fwrite(gangfile, strfile);
  457.     fclose(gangfile);
  458.     fclose(tempfile);
  459.     fremove("tmpfile.tmp");
  460.     return true;
  461. }
  462.  
  463. stock
  464.     SendClientMessageFormated(pid,msg[],colour,a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0)    //- Envia mensagem formatada com suporte a 10 parametors
  465. {
  466.     new
  467.         stringform[128]
  468.     ;
  469.     format(stringform,strlen(msg), "%s", msg,a,b,c,d,e,f,g,h,i,j);
  470.     return SendClientMessage(pid,colour,stringform);
  471. }
  472.  
  473. stock
  474.     bool:IsPlayerInAnyInterior(playerid)                                        //- se player ta em qualquer interior
  475.         return GetPlayerInterior(playerid) != 0 ? (true) : (false);
  476.  
  477. stock
  478.     GetPlayersOnline()                                                          //- Pega todos Players Online no servidor
  479. {
  480.     new PlayersOn;
  481.     for(new i;i < MAX_PLAYERS; i++)
  482.         if(IsPlayerConnected(i))
  483.             PlayersOn++.
  484.      return PlayersOn;
  485. }
  486.  
  487. stock
  488.     SetVehicleRepaired(vehicleid)                                               //- Repara um veiculo totalmente
  489. {
  490.     SetVehicleHealth(vehicleid,1000);
  491.     RepairVehicle(vehicleid);
  492.     return true;
  493. }
  494.  
  495. stock
  496.     SetVehiclesToRespawns()                                                     //-Seta veiculos desocupados para respawn
  497. {
  498.     for( new j = 0; j < MAX_VEHICLES; j++)
  499.         for(new i = 0; i < MAX_PLAYERS; i++)
  500.             if(IsPlayerInVehicle(i, j) && GetPlayerState(i) == PLAYER_STATE_DRIVER)
  501.                 SetVehicleToRespawn(j);
  502.     return true;
  503. }
  504.  
  505. stock
  506.     SendMessageToAllAdmins(colour,msg[])                                        //- Envia mensagens para admins online
  507. {
  508.     for(new i = 0; i < MAX_PLAYERS; i++)
  509.         if(IsPlayerAdmin(i))
  510.             SendClientMessage(i,colour,msg);
  511.     return true;
  512. }
  513.  
  514. stock
  515.     freset(file[])
  516. {                                                                               //- Limpa o um Arquivo
  517.     if(!fexist(file))
  518.         return false;
  519.     fremove(file);
  520.     new
  521.         File:resetvar = fopen(file,io_write)
  522.     ;
  523.     fclose(resetvar);
  524.     return true;
  525. }
  526.  
  527. stock
  528.     SetPlayerToClassSelection(playerid)                                         //- Seta layer para Selecao de Skins
  529. {
  530.     ForceClassSelection(playerid);
  531.     SetPlayerPos(playerid,0,0,0);
  532.     SpawnPlayer(playerid);
  533.     return true;
  534. }
  535.  
  536. stock
  537.     GetStringFromServerCFG(const strn[])                                        //- Geta uma String do Server.cfg
  538. {
  539.     new str[64];
  540.     GetServerVarAsString(strn, str, sizeof(str));
  541.     return str;
  542. }
  543.  
  544. stock                                                                           //- Geta FPS do Player By DraKiNs | Thankz Mr Turtle
  545.     GetPlayerFPS(playerid)
  546. {
  547.     SetPVarInt(playerid, "DrunkL", GetPlayerDrunkLevel(playerid));
  548.     if(GetPVarInt(playerid, "DrunkL") < 100) SetPlayerDrunkLevel(playerid, 2000);
  549.         else{
  550.             if(GetPVarInt(playerid, "LDrunkL") != GetPVarInt(playerid, "DrunkL"))
  551.             {
  552.                 SetPVarInt(playerid, "FPS", (GetPVarInt(playerid, "LDrunkL") - GetPVarInt(playerid, "DrunkL")));
  553.                 SetPVarInt(playerid, "LDrunkL", GetPVarInt(playerid, "DrunkL"));
  554.                 if((GetPVarInt(playerid, "FPS") > 0) && (GetPVarInt(playerid, "FPS") < 256))
  555.                 {
  556.                     return GetPVarInt(playerid, "FPS") - 1;
  557.                 }
  558.             }
  559.         }
  560.     return 0;
  561. }
  562.  
  563. stock SetVehicleSpeed ( vehicleid , Float:speed , mode = 1 )                    //Seta a Velocidade de um Carro
  564. {
  565.     static
  566.         Float:vAngle,
  567.         Float:poskm [ 3 ]
  568.     ;
  569.     GetVehicleZAngle ( vehicleid , vAngle ) ;
  570.     speed = ( ( !mode ) ? ( floatdiv ( speed, 105.0 ) ) : ( floatdiv ( speed, 170.0 ) ) );
  571.     return SetVehicleVelocity ( vehicleid , speed * floatsin ( -vAngle , degrees ) , speed * floatcos ( -vAngle , degrees ) , 0.0 ) ;
  572. }
  573.  
  574. stock
  575.     GetVehicleSpeed ( playerid , mode = 1 )                                     // Geta a Velocidade de Um Carro
  576. {
  577.     static
  578.         Float:vAngle,
  579.         Float:poskm [ 3 ]
  580.     ;
  581.     GetVehicleVelocity ( GetPlayerVehicleID ( playerid ) , poskm [ 0 ] , poskm [ 1 ] , poskm [ 2 ] ) ;
  582.     return IsPlayerInAnyVehicle ( playerid ) ? floatround ( ( ( floatsqroot ( ( ( poskm [ 0 ] * poskm [ 0 ] ) + ( poskm [ 1 ] * poskm [ 1 ] ) + ( poskm [ 2 ] * poskm [ 2 ] ) ) ) * ( !mode ? 105.0 : 170.0 ) ) ) * 1 ) : 0;
  583. }
Advertisement
Add Comment
Please, Sign In to add comment