Guest User

Advanced First Writes v3 By xDrugz ( Fixed )

a guest
Mar 16th, 2012
723
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 4.40 KB | None | 0 0
  1. #include < amxmodx >
  2. #include < hamsandwich >
  3. #include < cstrike >
  4.  
  5. new const g_CmdStart[][] = {
  6.     "say /fw",
  7.     "say /first",
  8.     "say_team /fw",
  9.     "say_team /first"
  10. };
  11. new const g_CmdStop[][] = {
  12.     "say /stop",
  13.     "say /stopfw",
  14.     "say_team /stop",
  15.     "say_team /stopfw"
  16. };
  17. new g_FWCount, g_fwActive = false, g_fwAllowMove = false, g_CountVoice[ 21 ], szWinner[ 32 ], g_MixChars[ 6 ], g_LastChars[ 6 ]
  18. const TASKID = 2502502
  19.  
  20. public plugin_init() {
  21.     register_plugin("Advanced FirstWrites (Fixed)", "v3", "xDrugz")
  22.    
  23.     for( new i; i < sizeof g_CmdStart; i++ )
  24.         register_clcmd( g_CmdStart[ i ], "fnFwStart" )
  25.     for( new i; i < sizeof g_CmdStop; i++ )
  26.         register_clcmd( g_CmdStop[ i ], "fnFwStop" )
  27.     register_clcmd( "say", "HandleSay" )
  28. }
  29.  
  30. public fnFwStart( player ) {
  31.     if ( !(get_user_flags( player ) & ADMIN_RCON) ) {
  32.         ColorChat( player, "Only^4 Admins^1 May Use This Command !" )
  33.         return PLUGIN_HANDLED
  34.     }
  35.     if( !g_fwActive ) {
  36.         g_FWCount = 5
  37.         ActionTimer( )
  38.         g_fwActive = true
  39.     }
  40.     else {
  41.         ColorChat(player, "^"^4First Writes^1^" Activity Already Started !" )
  42.     }
  43.     return PLUGIN_CONTINUE
  44. }
  45.  
  46. public fnFwStop( player ) {
  47.     if ( !(get_user_flags( player ) & ADMIN_RCON) ) {
  48.         ColorChat( player, "Only^4 Admins^1 May Use This Command !" )
  49.         return PLUGIN_HANDLED
  50.     }
  51.     if( g_fwActive ) {
  52.         remove_task( TASKID )
  53.         g_fwActive = false
  54.         g_fwAllowMove = false
  55.         ColorChat(0, "^"^4First Writes^1^" Activity Stopped !" )
  56.     }
  57.     return PLUGIN_CONTINUE
  58. }
  59.  
  60. public HandleSay( player ) {
  61.     new szMessage[ 32 ]
  62.     read_args( szMessage, charsmax( szMessage ) )
  63.     remove_quotes( szMessage )
  64.    
  65.     if ( g_fwAllowMove && get_user_team( player ) != 1 ) {
  66.         ColorChat( player, "Only^4 Prisoners^1 May Participate !" )
  67.         return PLUGIN_HANDLED
  68.     }
  69.     if( equali( szMessage, g_LastChars ) ) {
  70.         if ( g_fwAllowMove ) {
  71.             if ( !is_user_connected(player) || !is_user_alive(player) ) {
  72.                 ColorChat( player, "You Must Be^4 Alive^1 !" )
  73.                 return PLUGIN_HANDLED
  74.             }
  75.             get_user_name( player, szWinner, 31 )
  76.             cs_set_user_team( player, CS_TEAM_CT )
  77.             ExecuteHamB(Ham_CS_RoundRespawn, player );
  78.             set_hudmessage(random_num(1, 255), random_num(1, 255), random_num(1, 255), -1.0, 0.30, 0, 4.0, 4.0)
  79.             show_hudmessage( 0, "%s, is the Winner !", szWinner )
  80.             ColorChat(0, "^1%s^4 Won^1 And Moved To^4 CT Team^1 !", szWinner )
  81.             client_cmd( player, "spk holo/tr_holo_nicejob" )
  82.             g_fwAllowMove = false
  83.             g_fwActive = false
  84.         }
  85.     }
  86.     else {
  87.         if ( g_fwAllowMove ) {
  88.             client_cmd( 0, "spk scientist/completelywrong" )
  89.         }
  90.     }
  91.     return PLUGIN_CONTINUE
  92. }
  93.  
  94. public ActionTimer( ) {
  95.     switch( g_FWCount ) {
  96.         case 0: {
  97.             g_fwAllowMove = true
  98.             formatex(g_MixChars, 5, "%i", random_num(0, 99999))
  99.             g_LastChars = g_MixChars
  100.             set_hudmessage(random_num(1, 255), random_num(1, 255), random_num(1, 255), -1.0, 0.30, 0, 4.0, 4.0)
  101.             show_hudmessage( 0, "[ %s ]", g_LastChars )
  102.             ColorChat(0, "Agreed Number is^4 %s^1 Hurry up !", g_LastChars)
  103.             remove_task( TASKID )
  104.             set_task( 15.0, "ActionFailed", TASKID )
  105.         }
  106.         case 1..5: {
  107.             set_task( 1.0, "ActionTimer", TASKID )
  108.         }
  109.     }
  110.     if(g_FWCount != 0) {
  111.         num_to_word(g_FWCount, g_CountVoice, 20)
  112.         client_cmd(0, "spk ^"vox/%s seconds^"", g_CountVoice)
  113.         set_hudmessage(random_num(1, 255), random_num(1, 255), random_num(1, 255), -1.0, 0.30, 0, 0.5, 0.5)
  114.         show_hudmessage( 0, "Start in %d Seconds !", g_FWCount )
  115.         --g_FWCount
  116.     }
  117. }
  118.  
  119. public ActionFailed( ) {
  120.     if( g_fwAllowMove ) {
  121.         set_hudmessage(random_num(1, 255), random_num(1, 255), random_num(1, 255), -1.0, 0.30, 0, 4.0, 4.0)
  122.         show_hudmessage( 0, "First Writes Activity Failed !" )
  123.         ColorChat(0, "^"^4First Writes^1^" Activity Failed !" )
  124.         client_cmd( 0, "spk holo/tr_holo_tryagain" )
  125.         g_fwAllowMove = false
  126.         g_fwActive = false
  127.     }
  128.     else {
  129.         remove_task( TASKID )
  130.     }
  131. }
  132.  
  133.  
  134. stock ColorChat(index, const Msg[], {Float, Sql, Result,_}:...) {
  135.     new Buffer[190], Buffer2[192]
  136.     formatex(Buffer2, sizeof(Buffer2)-1, "^3[^1 JailBreak ^3]^1 %s", Msg)
  137.     vformat(Buffer, sizeof(Buffer)-1, Buffer2, 3)
  138.     if(!index) {
  139.         for (new i = 1; i <= get_maxplayers(); i++) {
  140.             if(!is_user_connected(i))   continue
  141.             message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"),_, i)
  142.             write_byte(i)
  143.             write_string(Buffer)
  144.             message_end()
  145.         }
  146.         } else {
  147.         if(!is_user_connected(index))   return
  148.         message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"),_, index)
  149.         write_byte(index)
  150.         write_string(Buffer)
  151.         message_end()
  152.     }
  153. }
Advertisement
Add Comment
Please, Sign In to add comment