Advertisement
MartisK

Untitled

Feb 2nd, 2015
420
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 3.62 KB | None | 0 0
  1. #include <a_samp>
  2. #include <zcmd>
  3. #include <sscanf2>
  4.  
  5. #define p       playerid
  6. #define Balta   0xFFFFFFFF
  7.  
  8. new bool:pasiuleKauliukais  [ MAX_PLAYERS ],
  9.     pasiulytaSuma           [ MAX_PLAYERS ],
  10.     zaidziaSu               [ MAX_PLAYERS ],
  11.     ismeteAkiu              [ MAX_PLAYERS ];
  12.  
  13. CMD:isdalinti( playerid )
  14. {
  15.     new Float:pos[3], inRange = 0, amount;
  16.  
  17.     GetPlayerPos( p, pos[0], pos[1], pos[2] );
  18.     for( new i; i < MAX_PLAYERS; i++ )
  19.     {
  20.         if( IsPlayerConnected( i ) )
  21.         {
  22.             if( IsPlayerInRangeOfPoint( i, 5.0, pos[0], pos[1], pos[2] ) )
  23.             {
  24.                 inRange += 1;
  25.             }
  26.         amount = GetPlayerMoney( p ) / inRange;
  27.             if( p != i && inRange > 0 )
  28.             {
  29.                 GivePlayerMoney( i, amount );
  30.             }
  31.         }
  32.     }
  33.     return true;
  34. }
  35.  
  36. CMD:kauliukai( playerid, params[] )
  37. {
  38.     new string[100], id, suma;
  39.    
  40.     if( sscanf( params, "ui", id, suma ) ) return SendClientMessage( playerid, Balta, "Komandos naudojimas: /kauliukai <Vardas_Pavardė> <suma>" );
  41.     else
  42.     {
  43.         if( !IsPlayerConnected( id ) ) return SendClientMessage( p, Balta, "Žaidėjas neprisijungęs." );
  44.         if( suma < 1 ) return SendClientMessage( p, Balta, "Suma per maža." );
  45.         if( suma > GetPlayerMoney( p ) ) return SendClientMessage( p, Balta, "Tiek pinigų neturite." );
  46.         if( suma > GetPlayerMoney( id ) ) return SendClientMessage( p, Balta, "Žaidėjas tiek pinigų neturi." );
  47.        
  48.         format( string, sizeof( string ), "%s pasiūlė jums žaisti kauliukais iš %i. Rašykite taip arba ne.", getName( p ), suma );
  49.         SendClientMessage( id, Balta, string );
  50.         pasiuleKauliukais[ id ] = true;
  51.         pasiulytaSuma[ id ] = suma;
  52.         zaidziaSu[ id ] = playerid;
  53.     }
  54.     return true;
  55. }
  56.  
  57. public OnPlayerText( playerid, text[] )
  58. {
  59.     if( pasiuleKauliukais[ playerid ] )
  60.     {
  61.         new id = zaidziaSu[ playerid ],
  62.             string[ 100 ];
  63.            
  64.         if( !strcmp( text, "taip", true ) )
  65.         {
  66.             ismeteAkiu[ playerid ] = random( 6 ) + 1;
  67.             ismeteAkiu[ id ] = random( 6 ) + 1;
  68.            
  69.             format( string, sizeof( string ), "%s metė kauliukus. Iškrito %i akys.", getName( playerid ), ismeteAkiu[ playerid ] );
  70.             SiustiZinute( playerid, Balta, 20, string );
  71.             format( string, sizeof( string ), "%s metė kauliukus. Iškrito %i akys.", getName( id ), ismeteAkiu[ id ] );
  72.             SiustiZinute( id, Balta, 20, string );
  73.            
  74.             if( ismeteAkiu[ playerid ] > ismeteAkiu[ id ] )
  75.             {
  76.                 GivePlayerMoney( playerid, pasiulytaSuma[ playerid ] );
  77.                 GivePlayerMoney( id, -pasiulytaSuma[ playerid ] );
  78.                 format( string, sizeof( string ), "%s laimėjo...", getName( playerid ) );
  79.                 SiustiZinute( playerid, Balta, 20, string );
  80.             }
  81.             else if( ismeteAkiu[ playerid ] < ismeteAkiu[ id ] )
  82.             {
  83.                 GivePlayerMoney( playerid, -pasiulytaSuma[ playerid ] );
  84.                 GivePlayerMoney( id, pasiulytaSuma[ playerid ] );
  85.                 format( string, sizeof( string ), "%s laimėjo...", getName( id ) );
  86.                 SiustiZinute( playerid, Balta, 20, string );
  87.             }
  88.                    pasiuleKauliukais[ playerid ] = false;
  89.         }
  90.         else
  91.         {
  92.             SendClientMessage( id, Balta, "Žaidėjas atsisakė žaisti kauliukais..." );
  93.                 pasiuleKauliukais[ playerid ] = false;
  94.         }
  95.     }
  96.     return true;
  97. }
  98.  
  99. stock getName( playerid )
  100. {
  101.     new name[ MAX_PLAYER_NAME ];
  102.     GetPlayerName( p, name, MAX_PLAYER_NAME );
  103.     return name;
  104. }
  105.  
  106. stock SiustiZinute( playerid, color, range, text[] )
  107. {
  108.     new
  109.         Float:x,
  110.         Float:y,
  111.         Float:z
  112.     ;
  113.  
  114.     GetPlayerPos( playerid, x, y, z );
  115.  
  116.     for( new i; i < MAX_PLAYERS; i++ ) {
  117.         if( IsPlayerInRangeOfPoint( i, range, x, y, z ) ) {
  118.             SendClientMessage( i, color, text );
  119.         }
  120.     }
  121.     return true;
  122. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement