Advertisement
GaMeRFoReVeR

Steam bonus

Sep 16th, 2015
218
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.71 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <fun>
  3. #include <cstrike>
  4. #include <hamsandwich>
  5. #include <dhudmessage>
  6.  
  7. #if AMXX_VERSION_NUM < 183
  8.     #include <colorchat>
  9.    
  10.     #define client_print_color  ColorChat
  11.     #define print_team_red  RED
  12. #endif
  13.  
  14. #pragma semicolon   1
  15.  
  16. #define PLUGIN  "Steam Bonus"
  17. #define VERSION "1.2"
  18. #define AUTHOR  "Stimul"
  19. #define PREFIX  "[STEAM bonus]"
  20.  
  21. #define get_bit(%1,%2)  (%1 & (1 << (%2 & 31)))
  22. #define set_bit(%1,%2)  (%1 |= (1 << (%2 & 31)))
  23. #define reset_bit(%1,%2)    (%1 &= ~(1 << (%2 & 31)))
  24.  
  25. //DHUD poruka
  26. #define COLOR_RED   random(255) // Boja crvena
  27. #define COLOR_GREEN random(255) // Boja zelena
  28. #define COLOR_BLUE  random(255) // Boja plava
  29.  
  30. #define TIME    5.0 // Vreme pokazivanja
  31.  
  32. #define NUM_MONEY   1000    // Kolicina novca
  33.  
  34. new g_bIsConnected;
  35. new g_bIsSteam;
  36. new g_bProcedure;
  37.  
  38. public plugin_init()
  39. {
  40.     register_plugin(PLUGIN, VERSION, AUTHOR);
  41.    
  42.     RegisterHam(Ham_CS_RoundRespawn, "player", "fw_CS_RoundRespawn_Post", true);
  43. }
  44.  
  45. public client_putinserver(id)
  46. {
  47.     set_bit(g_bIsConnected, id);
  48.    
  49.     if(is_user_steam(id))
  50.     {
  51.         set_bit(g_bIsSteam, id);
  52.         reset_bit(g_bProcedure, id);
  53.         set_task(3.0, "WelcomeMessage", id);
  54.     }
  55.     else
  56.         reset_bit(g_bIsSteam, id);
  57. }
  58.  
  59. public client_disconnect(id)
  60.     reset_bit(g_bIsConnected, id);
  61.  
  62. public WelcomeMessage(id)
  63. {
  64.     if(get_bit(g_bIsConnected, id))
  65.     {
  66.         static szName[32];
  67.         get_user_name(id, szName, charsmax(szName));
  68.        
  69.         set_dhudmessage(COLOR_RED, COLOR_GREEN, COLOR_BLUE, -1.0, 0.3, 0, 0.0, TIME);
  70.         show_dhudmessage(id, "Pozdrav, %s!", szName);
  71.         set_dhudmessage(COLOR_RED, COLOR_GREEN, COLOR_BLUE, -1.0, 0.34, 0, 0.0, TIME);
  72.         show_dhudmessage(id, "Vi koristite STEAM, tako da cete svaku rundu dobijati BONUS");
  73.     }
  74. }
  75.  
  76. public fw_CS_RoundRespawn_Post(id)
  77. {
  78.     if(get_bit(g_bIsConnected, id) && get_bit(g_bIsSteam, id))
  79.     {
  80.         if(!get_bit(g_bProcedure, id))
  81.         {
  82.             cs_set_user_money(id, cs_get_user_money(id) + NUM_MONEY);
  83.             client_print_color(id, print_team_red, "^3%s ^1Dobili ste bonus: ^4'%d$'", PREFIX, NUM_MONEY);
  84.             set_bit(g_bProcedure, id);
  85.         }
  86.         else
  87.         {
  88.             give_item(id, "weapon_hegrenade");
  89.             give_item(id, "weapon_flashbang");
  90.             cs_set_user_bpammo(id, CSW_FLASHBANG, 2);
  91.             give_item(id, "weapon_smokegrenade");
  92.             client_print_color(id, print_team_red, "^3%s ^1Dobili ste bonus: ^4'sve bombe'", PREFIX);
  93.             reset_bit(g_bProcedure, id);
  94.         }
  95.     }
  96. }
  97.  
  98. stock bool:is_user_steam(id)
  99. {
  100.     static dp_pointer;
  101.    
  102.     if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
  103.     {
  104.         server_cmd("dp_clientinfo %d", id);
  105.         server_exec();
  106.         return (get_pcvar_num(dp_pointer) == 2) ? true : false;
  107.     }
  108.    
  109.     new szAuthid[34];
  110.     get_user_authid(id, szAuthid, charsmax(szAuthid));
  111.    
  112.     return (containi(szAuthid, "LAN") < 0);
  113. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement