Advertisement
Guest User

My script

a guest
Jul 9th, 2012
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 9.30 KB | None | 0 0
  1. /* Plugin generated by AMXX-Studio */
  2.  
  3. #include <amxmodx>
  4. #include <amxmisc>
  5. #include <fun>
  6. #include <hamsandwich>
  7. #include <nvault>
  8. #include <cstrike>
  9. #include <engine>
  10. #include <fakemeta_util>
  11.  
  12. #define PLUGIN "Kerenes"
  13. #define VERSION "1.0"
  14. #define AUTHOR "Kulers"
  15.  
  16. new vada[33];
  17. new origin[3];
  18. new randpl[33];
  19. new onlinepl,kerajs,g_hudmsg1e,g_hudmsg2e,raundss,losers;
  20. new botteam[3]
  21. new white;
  22. new g_sModelIndexSmoke;
  23.  
  24.  
  25. static const botnames[3][] = {
  26.     "NULL",
  27.     "HLTV jocker.lv",           //Change Terrorist Bot Name
  28.     "CT FakeBot"    //Change CT Bot name
  29.     }
  30.  
  31. public plugin_init()
  32. {
  33.     register_plugin(PLUGIN, VERSION, AUTHOR)
  34.     register_event("Damage", "on_damage", "b")
  35.     register_event("HLTV","jauns_raunds","a","1=0","2=0")
  36.     register_event("SendAudio","end_round","a","2=%!MRAD_terwin","2=%!MRAD_ctwin","2=%!MRAD_rounddraw")
  37.     register_event("HLTV","StartRound","a","1=0","2=0");
  38.     g_hudmsg1e = CreateHudSyncObj();
  39.     g_hudmsg2e = CreateHudSyncObj();
  40.     host_spawn();
  41.     createBots();
  42. }
  43.  
  44. public StartRound()
  45.     set_task(0.0, "PostStartRound", 0)
  46.  
  47. public PostStartRound()
  48. {
  49.         raundss = 0
  50.         new x,bot;
  51.         x=2
  52.         set_pev(botteam[x], pev_effects, (pev(botteam[x], pev_effects) | 128) ) //set invisible
  53.         set_pev(botteam[x], pev_solid, SOLID_NOT );
  54.         bot = find_player("bli", botnames[x] );
  55.         cs_set_user_team(bot, CS_TEAM_CT, CS_CT_URBAN)
  56.         fakedamage(bot, "worldspawn", 100.0, DMG_GENERIC );
  57. }
  58.  
  59. public jauns_raunds()
  60. {
  61.     set_task(5.0,"start_award");
  62.     for(new i = 1;i <= 32;i++)
  63.     {
  64.         if(is_user_connected(i) && get_user_team(i)!=CS_TEAM_SPECTATOR && !is_user_bot(i))
  65.         {  
  66.             onlinepl=0;
  67.             vada[i] = 0 //0 = false
  68.             set_task(0.0,"give_hp",i);
  69.             client_print(i,print_chat,"Jauns raunds");
  70.             set_task(0.0,"getteamcs",i);
  71.             set_user_rendering(i,kRenderFxGlowShell,0,0,0,kRenderNormal,25)
  72.             set_task(0.0,"draw_hud",i);
  73.             set_task(0.0,"score_board",i);
  74.         }
  75.     }
  76. }
  77.  
  78. public end_round()
  79. {
  80.     for(new i = 1;i <= 32;i++)
  81.     {
  82.         if(is_user_connected(i) && is_user_alive(i) && get_user_team(i)==CS_TEAM_T && !is_user_bot(i))
  83.         {  
  84.             set_user_frags(i,get_user_frags(i)+1);
  85.             vada[i] = 0;
  86.         }
  87.        
  88.         if(is_user_connected(i) && is_user_alive(i) && get_user_team(i)==CS_TEAM_CT && !is_user_bot(i))
  89.         {
  90.             new origin[3],srco[3];
  91.             losers = i;
  92.             get_user_origin(i,origin)          
  93.             origin[2] -= 26
  94.             srco[0]=origin[0]+150
  95.             srco[1]=origin[1]+150
  96.             srco[2]=origin[2]+800
  97.             slay_explode(origin)
  98.             emit_sound(i,CHAN_ITEM, "weapons/explode3.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
  99.             user_kill(i,1)
  100.         }
  101.         raundss = 1
  102.     }
  103. }
  104.  
  105. public give_hp(id)
  106. {
  107.     set_user_health(id,20000-31);  
  108. }
  109. public client_connect(id)
  110. {
  111.     cs_set_user_team(id,CS_TEAM_T,0);
  112. }
  113.  
  114. public user_setT(id)
  115. {
  116.     for(new i = 1;i <= 32;i++)
  117.     {
  118.         if(is_user_connected(i) && is_user_alive(i) && id!=i && get_user_team(i)!=CS_TEAM_SPECTATOR && !is_user_bot(i))
  119.         {  
  120.             fm_strip_user_weapons(i);
  121.             cs_set_user_team(i,CS_TEAM_T,0);
  122.             set_user_rendering(i,kRenderFxGlowShell,0,0,0,kRenderNormal,25)
  123.         }
  124.     }
  125. }
  126.  
  127.  
  128.  
  129. public on_damage(id)
  130. {  
  131.     static attacker; attacker = get_user_attacker(id)
  132.     static damage; damage = read_data(2)       
  133.     set_user_health(id,get_user_health(id)+damage);
  134.     if(get_user_team(attacker) == CS_TEAM_CT && attacker!=id && attacker!=0  && id!=0 && vada[attacker]==0)
  135.     {
  136.         cs_set_user_team(id,CS_TEAM_CT,0);
  137.         cs_set_user_team(attacker,CS_TEAM_T,0);
  138.         get_user_origin(id,origin, 0)
  139.         client_cmd(attacker,"spk sound/run/lostlead")
  140.         client_cmd(id,"spk sound/run/takenlead")
  141.         vada[id] = 1;
  142.         set_task(0.1,"not_move_player",id)
  143.         set_task(3.0,"freez_player",id)
  144.         set_user_rendering(attacker,kRenderFxGlowShell,0,0,0,kRenderNormal,25)
  145.         set_user_rendering(id,kRenderFxGlowShell,0,0,255,kRenderNormal,25)
  146.         if(is_user_connected(attacker) && is_user_alive(attacker))
  147.         {
  148.             fm_strip_user_weapons(attacker);           
  149.         }
  150.        
  151.     }
  152.     else if(attacker==id && damage>=50 && cs_get_user_team(id)==CS_TEAM_T && !is_user_bot(id))
  153.     {
  154.         set_task(0.0,"user_setT",id)
  155.         vada[id] = 0;
  156.         cs_set_user_team(id,CS_TEAM_CT,0);
  157.         set_user_rendering(id,kRenderFxGlowShell,0,0,255,kRenderNormal,25)
  158.         fm_give_item(id, "weapon_knife")
  159.         client_cmd(id,"spk sound/run/takenlead");
  160.     }
  161.     else if(attacker==id && damage>=50)
  162.     {
  163.         vada[id] = 1;
  164.         set_task(0.1,"not_move_player",id)
  165.         set_task(3.0,"freez_player",id)
  166.     }
  167.  
  168.  
  169. }
  170.  
  171. public not_move_player(id)
  172. {
  173.     if(vada[id] == 1)
  174.     {
  175.         set_pev(id, pev_flags, (pev(id, pev_flags) | FL_FROZEN));
  176.         set_task(0.0,"not_move_player",id);
  177.     }
  178.     else
  179.     {
  180.         set_pev(id, pev_flags, (pev(id, pev_flags) & ~FL_FROZEN));
  181.     }
  182.    
  183. }
  184.  
  185. public freez_player(id)
  186. {
  187.     client_print(id,print_chat,"Tava karta Kert!");
  188.     fm_give_item(id, "weapon_knife")
  189.     vada[id] = 0;
  190. }
  191.  
  192. public getteamcs(id)
  193. {
  194.     if(is_user_connected(id) && is_user_alive(id))
  195.     {
  196.         randpl[onlinepl]=id
  197.         onlinepl+=1
  198.         fm_strip_user_weapons(id);
  199.     }
  200. }
  201.  
  202. public start_award()
  203. {
  204.     set_task(0.0,"user_setT",0)
  205.     set_task(0.1,"start_kerenes");
  206.     //client_print(0,print_chat,"#2");
  207. }
  208.  
  209. public start_kerenes()
  210. {
  211.     //client_print(0,print_chat,"Kerenes sakas!");
  212.     new chosen = random_num(0,onlinepl-1);
  213.     cs_set_user_team(randpl[chosen],CS_TEAM_CT,0);
  214.     fm_give_item(randpl[chosen], "weapon_knife")
  215.     set_user_rendering(randpl[chosen],kRenderFxGlowShell,0,0,255,kRenderNormal,25)
  216.     client_cmd(randpl[chosen],"spk sound/run/takenlead");
  217.  
  218. }
  219.  
  220. createBots()
  221. {
  222.         new bot, x
  223.         x = 2
  224.         //is bot in server already?
  225.         bot = find_player("bli", botnames[x] )
  226.         if(bot) {
  227.             botteam[x] = bot
  228.         }
  229.        
  230.         //bot not in server, create them.
  231.         bot = engfunc(EngFunc_CreateFakeClient, botnames[x])
  232.         botteam[x] = bot
  233.         set_pev(botteam[x], pev_effects, (pev(botteam[x], pev_effects) | 128) ) //set invisible
  234.         set_pev(botteam[x], pev_solid, 0)//Not Solid
  235.         fakedamage(botteam[x],"worldspawn", 100.0, DMG_GENERIC )
  236.         new ptr[128]
  237.         dllfunc(DLLFunc_ClientConnect, bot, botnames[x], "127.0.0.1", ptr )
  238.         dllfunc(DLLFunc_ClientPutInServer, bot)
  239.         select_model(bot, 2)
  240. }
  241.  
  242. select_model(id,team)
  243.     switch(team) {
  244.         case 1: cs_set_user_team(id, CS_TEAM_T, CS_T_TERROR)
  245.         case 2: cs_set_user_team(id, CS_TEAM_CT, CS_CT_URBAN)
  246.     }
  247.    
  248. public plugin_precache() {
  249.     precache_model("models/scientist.mdl")
  250.     precache_sound("hostage/hos1.wav")
  251.     precache_sound("hostage/hos2.wav")
  252.     precache_sound("hostage/hos3.wav")
  253.     precache_sound("hostage/hos4.wav")
  254.     precache_sound("hostage/hos5.wav")
  255.     precache_sound("run/takenlead.wav")
  256.     precache_sound("run/lostlead.wav")
  257.     g_sModelIndexSmoke = precache_model("sprites/steam1.spr")
  258.     white = precache_model("sprites/white.spr")
  259.     precache_sound( "ambience/thunder_clap.wav")
  260.     precache_sound( "weapons/headshot2.wav")
  261.     precache_sound( "weapons/explode3.wav")
  262. }
  263.  
  264. public host_spawn() {
  265.     new Float:origin[3];
  266.     origin[0] = 0;
  267.     origin[1] = 0;
  268.     origin[2] = -100000;
  269.  
  270.     new host = create_entity("hostage_entity")
  271.     entity_set_origin(host, origin)
  272.     set_pev(host, pev_effects, (pev(host, pev_effects) | 128) ) //set invisible
  273.     set_pev(host, pev_solid, 0)//Not Solid
  274.     DispatchSpawn(host)
  275.    
  276.     return PLUGIN_HANDLED
  277. }
  278.  
  279. public score_board(id)
  280. {
  281.     /*new dest[255],name[32];
  282.     for(new i = 1;i <= 32;i++)
  283.     {
  284.         if(is_user_connected(i) && is_user_alive(i) && !is_user_bot(i))
  285.         {
  286.             get_user_name(i,name,32)
  287.             format(dest, 255, "%s%s^n",dest,name);
  288.         }
  289.     }*/
  290.     set_hudmessage(0, 100, 200, -1.5, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
  291.     ShowSyncHudMsg(id, g_hudmsg2e, "%s","EMPTY")
  292.     set_task(1.0,"score_board",id);
  293. }
  294.  
  295. public draw_hud(id)
  296. {
  297.     kerajs = 0
  298.     for(new i = 1;i <= 32;i++)
  299.     {
  300.         if(is_user_connected(i) && get_user_team(i)==CS_TEAM_CT && !is_user_bot(i))
  301.         {  
  302.             kerajs=i;
  303.         }
  304.     }
  305.     new keraj_name[33];
  306.    
  307.     if(raundss == 0)
  308.     {
  309.         if(kerajs==0)
  310.         {
  311.             keraj_name="Neviens";
  312.         }
  313.         else
  314.         {
  315.            
  316.             get_user_name(kerajs,keraj_name,32)
  317.         }  
  318.         if(id!=kerajs)
  319.         {
  320.             set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
  321.         }
  322.         else
  323.         {
  324.             set_hudmessage(255, 0, 0, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
  325.         }
  326.         ShowSyncHudMsg(id, g_hudmsg1e, "Kerajs ir^n%s^n",keraj_name)
  327.     }
  328.     else
  329.     {
  330.         set_hudmessage(0,255, 0, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1)
  331.         get_user_name(losers,keraj_name,32)
  332.         ShowSyncHudMsg(id, g_hudmsg1e, "Zaudetajs ir^n%s^n",keraj_name)
  333.     }
  334.    
  335.     //client_print(0,print_chat,"#2");
  336.     set_task(1.0,"draw_hud",id);
  337. }
  338.  
  339. slay_explode(vec1[3]) {
  340.     // blast circles
  341.     message_begin( MSG_BROADCAST,SVC_TEMPENTITY,vec1)
  342.     write_byte( 21 )
  343.     write_coord(vec1[0])
  344.     write_coord(vec1[1])
  345.     write_coord(vec1[2] + 16)
  346.     write_coord(vec1[0])
  347.     write_coord(vec1[1])
  348.     write_coord(vec1[2] + 1936)
  349.     write_short( white )
  350.     write_byte( 0 ) // startframe
  351.     write_byte( 0 ) // framerate
  352.     write_byte( 2 ) // life
  353.     write_byte( 16 ) // width
  354.     write_byte( 0 ) // noise
  355.     write_byte( 188 ) // r
  356.     write_byte( 220 ) // g
  357.     write_byte( 255 ) // b
  358.     write_byte( 255 ) //brightness
  359.     write_byte( 0 ) // speed
  360.     message_end()
  361.     //Explosion2
  362.     message_begin( MSG_BROADCAST,SVC_TEMPENTITY)
  363.     write_byte( 12 )
  364.     write_coord(vec1[0])
  365.     write_coord(vec1[1])
  366.     write_coord(vec1[2])
  367.     write_byte( 188 ) // byte (scale in 0.1's)
  368.     write_byte( 10 ) // byte (framerate)
  369.     message_end()
  370.     //Smoke
  371.     message_begin( MSG_BROADCAST,SVC_TEMPENTITY,vec1)
  372.     write_byte( 5 )
  373.     write_coord(vec1[0])
  374.     write_coord(vec1[1])
  375.     write_coord(vec1[2])
  376.     write_short( g_sModelIndexSmoke )
  377.     write_byte( 2 )  
  378.     write_byte( 10 )  
  379.     message_end()
  380. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement