P1xeL

Zedox750 (FirstWrith)

Oct 6th, 2012
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 6.77 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <hamsandwich>
  3. #include <cstrike>
  4. #include <colorchat>
  5.  
  6. new randGuard;
  7.  
  8. new const g_CmdStart[][] = {
  9.     "say /fw",
  10.     "say /first",
  11.     "say_team /fw",
  12.     "say_team /first"
  13. };
  14.  
  15. new const g_CmdStop[][] = {
  16.     "say /stop",
  17.     "say /stopfw",
  18.     "say_team /stop",
  19.     "say_team /stopfw"
  20. };
  21.  
  22. new g_FWCount, g_fwActive = false, g_fwAllowMove = false, g_CountVoice[ 21 ], szWinner[ 32 ], g_MixChars[ 6 ], g_LastChars[ 6 ]
  23. const TASKID = 2502502
  24.  
  25. public plugin_init() {
  26.     register_plugin("Advanced FirstWrites (Fixed)", "v3", "xDrugz")
  27.    
  28.     for( new i; i < sizeof g_CmdStart; i++ )
  29.         register_clcmd( g_CmdStart[ i ], "fnFwStart" )
  30.     for( new i; i < sizeof g_CmdStop; i++ )
  31.         register_clcmd( g_CmdStop[ i ], "fnFwStop" )
  32.    
  33.     register_clcmd( "say", "HandleSay" )
  34.     set_task( 20.0, "GetRandomGuard", _,_,_, "b");
  35. }
  36.  
  37. public fnFwStart2( player ) {
  38.     if( !g_fwActive )
  39.     {
  40.         g_FWCount = 5
  41.         ActionTimer( )
  42.         g_fwActive = true
  43.     }
  44.     else
  45.     {
  46.         ColorChat(player,RED, "^4[^3 JailBreak^4 ]^4^"First Writes^3^" Activity Already ^4Started !" )
  47.     }
  48.     return PLUGIN_CONTINUE
  49. }
  50.  
  51. public fnFwStart( player ) {
  52.     if ( !(get_user_flags( player ) & ADMIN_KICK) ) {
  53.         ColorChat( player,RED, "^4[^3 JailBreak^4 ]^3 Only^4 Admins/VIP^3 Can Use This Command !" )
  54.         return PLUGIN_HANDLED
  55.     }
  56.     if( !g_fwActive ) {
  57.         g_FWCount = 5
  58.         ActionTimer( )
  59.         g_fwActive = true
  60.     }
  61.     else {
  62.         ColorChat(player,RED, "^4[^3 JailBreak^4 ] ^"^4First Writes^3^" Activity Already ^4Started !" )
  63.     }
  64.     return PLUGIN_CONTINUE
  65. }
  66.  
  67. public fnFwStop( player ) {
  68.     if ( !(get_user_flags( player ) & ADMIN_KICK) ) {
  69.         ColorChat( player,RED, "^4[^3 JailBreak^4 ]^3 Only^4 Admins/VIP^3 Can Use This Command !" )
  70.         return PLUGIN_HANDLED
  71.     }
  72.     if( g_fwActive ) {
  73.         remove_task( TASKID )
  74.         g_fwActive = false
  75.         g_fwAllowMove = false
  76.         ColorChat(0,RED, "^4[^3 JailBreak^4 ]^3 ^"^4First Writes^3^" Activity ^4Stopped !" )
  77.     }
  78.     return PLUGIN_CONTINUE
  79. }
  80.  
  81. public HandleSay( player ) {
  82.     new szMessage[ 32 ]
  83.     read_args( szMessage, charsmax( szMessage ) )
  84.     remove_quotes( szMessage )
  85.    
  86.     if ( g_fwAllowMove && get_user_team( player ) == 3 )
  87.     {
  88.         ColorChat( player,RED, "^4[^3 JailBreak^4 ]^3 Spec^4 can`t^1 May Participate !" )
  89.         return PLUGIN_HANDLED
  90.     }
  91.     if( equali( szMessage, g_LastChars ) )
  92.     {
  93.         if ( g_fwAllowMove )
  94.         {
  95.             if ( !is_user_connected(player) || !is_user_alive(player) )
  96.             {
  97.                 ColorChat( player,RED, "^4[^3 JailBreak^4 ]^3 You Need To Be ^4Alive !" )
  98.                 return PLUGIN_HANDLED
  99.             }
  100.            
  101.             switch(cs_get_user_team(player))
  102.             {
  103.                 case CS_TEAM_T:
  104.                 {
  105.                     get_user_name( player, szWinner, 31 )
  106.                     cs_set_user_team( player, CS_TEAM_CT )
  107.                     ExecuteHamB(Ham_CS_RoundRespawn, player );
  108.                     set_hudmessage(random_num(1, 255), random_num(1, 255), random_num(1, 255), -1.0, 0.30, 0, 4.0, 4.0)
  109.                     show_hudmessage( 0, "%s, is the Winner !", szWinner )
  110.                     ColorChat(0,RED, "^4[^3 JailBreak^4 ]^3 ^1%s^4 Won^1 And Moved To^4 CT Team^1 !", szWinner )
  111.                     client_cmd( player, "spk holo/tr_holo_nicejob" )
  112.                     g_fwAllowMove = false
  113.                     g_fwActive = false
  114.                 }
  115.                 case CS_TEAM_CT:
  116.                 {
  117.                     teamctMenu(player)
  118.                     client_cmd( player, "spk holo/tr_holo_nicejob" )
  119.                     g_fwAllowMove = false
  120.                     g_fwActive = false
  121.                    
  122.                     get_user_name( player, szWinner, 31 )
  123.                     set_hudmessage(random_num(1, 255), random_num(1, 255), random_num(1, 255), -1.0, 0.30, 0, 4.0, 4.0)
  124.                     show_hudmessage( 0, "%s, is the Winner !", szWinner )
  125.                     ColorChat(0,RED, "^4[^3 JailBreak^4 ]^3 %s^4 Won^1 And Choose Someone To Transfer ^4CT Team^3 !", szWinner )
  126.                 }
  127.             }
  128.         }
  129.     }
  130.     else
  131.     {
  132.         if ( g_fwAllowMove )
  133.         {
  134.             client_cmd( 0, "spk scientist/completelywrong" )
  135.         }
  136.     }
  137.     return PLUGIN_CONTINUE
  138. }
  139.  
  140. public ActionTimer( )
  141. {
  142.     switch( g_FWCount )
  143.     {
  144.         case 0:
  145.         {
  146.             g_fwAllowMove = true
  147.             formatex(g_MixChars, 5, "%i", random_num(0, 99999))
  148.             g_LastChars = g_MixChars
  149.             set_hudmessage(random_num(1, 255), random_num(1, 255), random_num(1, 255), -1.0, 0.30, 0, 4.0, 4.0)
  150.             show_hudmessage( 0, "[ %s ]", g_LastChars )
  151.             ColorChat(0,RED, "^4[^3 JailBreak^4 ]^3 Agreed Number is^4 %s^3 Hurry up !", g_LastChars)
  152.             remove_task( TASKID )
  153.             set_task( 15.0, "ActionFailed", TASKID )
  154.         }
  155.         case 1..5:
  156.         {
  157.             set_task( 1.0, "ActionTimer", TASKID )
  158.         }
  159.     }
  160.     if(g_FWCount != 0)
  161.     {
  162.         num_to_word(g_FWCount, g_CountVoice, 20)
  163.         client_cmd(0, "spk ^"vox/%s seconds^"", g_CountVoice)
  164.         set_hudmessage(random_num(1, 255), random_num(1, 255), random_num(1, 255), -1.0, 0.30, 0, 0.5, 0.5)
  165.         show_hudmessage( 0, "Start in %d Seconds !", g_FWCount )
  166.         --g_FWCount
  167.     }
  168. }
  169.  
  170. public ActionFailed( )
  171. {
  172.     if( g_fwAllowMove )
  173.     {
  174.         set_hudmessage(random_num(1, 255), random_num(1, 255), random_num(1, 255), -1.0, 0.30, 0, 4.0, 4.0)
  175.         show_hudmessage( 0, "First Writes Activity Failed !" )
  176.         ColorChat(0,RED, "^4[^3 JailBreak^4 ]^4 First Writes^3^" Activity ^4Failed !" )
  177.         client_cmd( 0, "spk holo/tr_holo_tryagain" )
  178.         g_fwAllowMove = false
  179.         g_fwActive = false
  180.     }
  181.     else
  182.     {
  183.         remove_task( TASKID )
  184.     }
  185. }
  186.  
  187. public teamctMenu(id)
  188. {
  189.     new shopppmenu4 = menu_create("\r[ \wMenu \r] \y Transfer To CT Menu", "sub_4")
  190.    
  191.     new name[32], szTempid[10], Item[100]
  192.     for( new i = 1; i <= get_maxplayers(); i++ )
  193.     {
  194.         if(!is_user_connected(i) || cs_get_user_team(i) != CS_TEAM_CT) continue
  195.        
  196.         get_user_name(i, name, sizeof(name) - 1)
  197.         num_to_str(i, szTempid, 9)
  198.        
  199.         formatex(Item, 99, "\y%s", name)
  200.         menu_additem(shopppmenu4, Item, szTempid)
  201.     }
  202.     menu_setprop(shopppmenu4, MPROP_EXITNAME, "\yExit")
  203.     menu_display(id, shopppmenu4)
  204. }
  205.  
  206. public sub_4(client, shopppmenu4, item)
  207. {
  208.     if(item == MENU_EXIT)
  209.     {
  210.         //Menu(client)
  211.         return
  212.     }
  213.     new data[6], iName[64]
  214.     new _access, callback
  215.     menu_item_getinfo(shopppmenu4, item, _access, data,5, iName, 63, callback)
  216.    
  217.     new tempid = str_to_num(data)
  218.    
  219.     if(!is_user_connected(tempid))  return
  220.     //new name[32]
  221.     //get_user_name(tempid, name, sizeof(name) - 1)
  222.    
  223.     //server_cmd( "amx_team %s ct", name )
  224.     cs_set_user_team( tempid, CS_TEAM_CT )
  225.     ExecuteHamB(Ham_CS_RoundRespawn, tempid );
  226. }
  227.  
  228. public GetRandomGuard( id )
  229. {
  230.     new players[32],iMaxTs, iMaxCTs;
  231.     get_players(players, iMaxTs, "ae", "TERRORIST");
  232.     get_players(players, iMaxCTs, "ae", "CT");
  233.     if ( iMaxCTs <= 1 ||  iMaxTs>13 && iMaxCTs<2 || iMaxTs>20 && iMaxCTs<3 || iMaxTs>26 && iMaxCTs<4 || iMaxTs>31 && iMaxCTs<5 )
  234.     {
  235.         randGuard = players[random(iMaxTs)];
  236.         if( !is_user_connected(randGuard) )
  237.         {
  238.             GetRandomGuard( id );
  239.             return PLUGIN_HANDLED;
  240.         }
  241.        
  242.         set_hudmessage(255, 0, 0, -1.0, -1.0, 0, 6.0, 5.0)
  243.         show_hudmessage(0, "[ JailBreak ] First Writes AutoMaticaly Started Good Luck !",iMaxCTs > 1 ? "First" : "Second");
  244.         ColorChat(0,RED, "^4[^3 JailBreak^4 ]^3 ^4First Writes^3 AutoMaticaly Started Good Luck !")
  245.         fnFwStart2( id )
  246.     }
  247.     else
  248.     {
  249.         return PLUGIN_HANDLED;
  250.     }
  251.     return PLUGIN_CONTINUE;    
  252. }
Advertisement
Add Comment
Please, Sign In to add comment