Advertisement
Guest User

Untitled

a guest
Dec 15th, 2018
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 42.15 KB | None | 0 0
  1.  
  2. #include <amxmodx>
  3. #include <amxmisc>
  4. #include <cstrike>
  5. #include <engine>
  6. #include <fun>
  7. #include <colorchat>
  8. #include <fakemeta>
  9. #include <sqlx>
  10.  
  11. #define PLUGIN "Diko Csoro Awp Mode"
  12. #define VERSION "1.0.0.0.0.0.0.0.0"
  13. #define AUTHOR "fasz"
  14.  
  15. new filename[128];
  16.  
  17. new const g_szSound[] = "ambience/thunder_clap.wav"
  18. new g_iLightning, g_iSmoke
  19.  
  20. new Handle:g_SqlTuple;
  21.  
  22. new const SQLINFO[][] ={
  23.     "127.0.0.1", //Kiszolg?l?
  24.     "root", //Felhaszn?l?n?v
  25.     "smck1337", //Jelsz?
  26.     "awpmode" //Adatb?zis neve
  27. };
  28.  
  29. //BOLT//
  30. new bool:Grav[33]=false,
  31. bool:Speed[33]=false,
  32. bool:Trap[33]=false
  33. new PAWPM[33]=0,PKNIFEM[33]=0
  34.  
  35. #define xCS_TEAM_CT 2
  36. #define xCS_TEAM_T 1
  37.  
  38. #define MAX 28
  39. #define KMAX 11
  40. #define SMAX MAX+KMAX
  41.  
  42. #define PREMIUMA 99
  43. #define PREMIUMK 88
  44.  
  45. enum PlayerCases{
  46.     Common,
  47.     Limited,
  48.     Legendary,
  49.     Regular
  50.     //Giant,
  51.     //Super_Giant,
  52.     //Super_Body,
  53.     //Super_Part
  54. }
  55. new const Skins[MAX][]={
  56.     {"AWP | Abstract"},     //1
  57.     {"AWP | American"},     //2
  58.     {"AWP | Arany"},        //3
  59.     {"AWP | Asiimov"},      //4
  60.     {"AWP | Bloody"},       //5
  61.     {"AWP | Choijiyoonpaint"},      //6
  62.     {"AWP | Dragon"},       //7
  63.     {"AWP | Eagle"},        //8
  64.     {"AWP | Elite Build"},      //9
  65.     {"AWP | Europa"},       //10
  66.     {"AWP | Fever Dream"},      //11
  67.     {"AWP | Galaxy"},       //12
  68.     {"AWP | Grafit"},       //13
  69.     {"AWP | Hawking"},      //14
  70.     {"AWP | Hexo"},     //15
  71.     {"AWP | Magmaa"},       //16
  72.     {"AWP | Malaysia"},     //17
  73.     {"AWP | Medusa"},       //18
  74.     {"AWP | Metal"},        //19
  75.     {"AWP | Phobos"},       //20
  76.     {"AWP | Pulzus"},       //21
  77.     {"AWP | Raptor"},       //22
  78.     {"AWP | Smoke"},        //23
  79.     {"AWP | Snow"},     //24
  80.     {"AWP | Star"},     //25
  81.     {"AWP | Tiger"},        //26
  82.     {"AWP | Tűz"},     //27
  83.     {"AWP | Wormgod"}       //28
  84. }
  85. new const KSkins[KMAX][]={
  86.     {"Bayonet Fade"},       //1
  87.     {"Butterfly Doppler"},      //2
  88.     {"Crimson Web"},        //3
  89.     {"Flip Tiger Tooth"},       //4
  90.     {"Karambit Lore"},      //5
  91.     {"M9 Forest DDPAT"},        //6
  92.     {"Red Blue Knife"},     //7
  93.     {"Tattoo Knife"},       //8
  94.     {"Butterfly Magma"},        //9 LIMITED
  95.     {"Flip Fade"},      //10 LIMITED
  96.     {"Karambit Doppler"}        // 11 LIMITED
  97. }
  98. new Osszesskin[MAX][33],cweapon[33][3]
  99. new Osszeskes[KMAX][33]
  100. new message[192]
  101. new nev[32]
  102. static color[10]
  103. new PlayersInventory[33][PlayerCases]
  104. new Kills[33 char][33 char]
  105. new KillStreak[33 char]
  106. new Exp[33],Level[33 char],Dollar[33]
  107. new Temp[192]
  108. new bool:S_Granat[33]=false,bool:S_HP[33]=false,bool:S_Usp[33]=false
  109.  
  110. new const RANKS_NAME[][]={
  111.     "Rusty",
  112.     "Wooden",
  113.     "Bronze",
  114.     "Silver",
  115.     "Gold",
  116.     "Emerald",
  117.     "Diamond",
  118.     "Nether",
  119.     "-"
  120. }
  121. new const RANKS_XP[]={
  122.     0,
  123.     500,
  124.     1200,
  125.     1500,
  126.     2999,
  127.     4000,
  128.     6000,
  129.     17000,
  130.     9999999999
  131. }
  132. public plugin_init() {
  133.     register_plugin(PLUGIN, VERSION, AUTHOR)
  134.    
  135.     get_localinfo("amxx_configsdir", filename, charsmax(filename))
  136.     format(filename, charsmax(filename), "%s/awp_mentes.ini", filename)
  137.    
  138.     register_impulse(100, "main_menu")
  139.    
  140.     register_clcmd("drop","StreakMenu")
  141.     register_clcmd("say", "sayhook")
  142.     register_clcmd("say_team", "tshook")
  143.     //register_clcmd("drop","drop")
  144.     register_clcmd("say /nyitas","nyitas")
  145.    
  146.     register_event("DeathMsg", "OnPlayerKilled", "a")
  147.     register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")
  148.     register_event("HLTV", "on_new_round", "a", "1=0", "2=0")
  149.     register_event("CurWeapon","switchw","be","1=1");
  150. }
  151. new const PKNIFE[]="models/els_awpsniper_beta/premium/premium_knife_noel.mdl"
  152. new const PAWP[]="models/els_awpsniper_beta/premium/premium_wp_h.mdl"
  153.  
  154. public switchw(id){
  155.     if(Speed[id]){
  156.         set_user_maxspeed(id,370.0)
  157.     }
  158.     if(Grav[id]){
  159.         set_user_gravity(id,0.5)
  160.     }
  161.     switch(get_user_weapon(id)){
  162.         case CSW_AWP:{
  163.             switch(cweapon[id][0]){
  164.                 case 1: set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/abstract.mdl")
  165.                     case 2: set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/american.mdl")
  166.                     case 3:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/arany.mdl")
  167.                     case 4:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/asiimov.mdl")
  168.                     case 5:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/bloody.mdl")
  169.                     case 6:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/choijiyoonpaint.mdl")
  170.                     case 7:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/dragon.mdl")
  171.                     case 8:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/eagle.mdl")
  172.                     case 9:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/elitebuild.mdl")
  173.                     case 10:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/europa.mdl")
  174.                     case 11:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/feverdream.mdl")
  175.                     case 12:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/galaxy.mdl")
  176.                     case 13:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/grafit.mdl")
  177.                     case 14:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/hawking.mdl")
  178.                     case 15:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/hexo.mdl")
  179.                     case 16:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/magmaa.mdl")
  180.                     case 17:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/malaysia.mdl")
  181.                     case 18:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/medusa.mdl")
  182.                     case 19:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/metal.mdl")
  183.                     case 20:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/phoboss.mdl")
  184.                     case 21:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/pulzus.mdl")
  185.                     case 22:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/raptor.mdl")
  186.                     case 23:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/smoke.mdl")
  187.                     case 24:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/snow.mdl")
  188.                     case 25:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/star.mdl")
  189.                     case 26:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/tiger.mdl")
  190.                     case 27:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/tuz.mdl")
  191.                     case 28:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/wormgod.mdl")
  192.                     case PREMIUMA:set_pev(id,pev_viewmodel2,PAWP)
  193.                    
  194.                
  195.             }
  196.         }
  197.         case CSW_KNIFE:{
  198.             switch(cweapon[id][1]){
  199.                 case 29:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/Bayonet.mdl")
  200.                     case 30:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/Butterfly_Doppler.mdl")
  201.                     case 31:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/CrimsonWeb.mdl")
  202.                     case 32:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/Flip_TigerTooth.mdl")
  203.                     case 33:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/Karambit_Lore.mdl")
  204.                     case 34:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/M9_Forest_DDPAT.mdl")
  205.                     case 35:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/RedBlue.mdl")
  206.                     case 36:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/Tatto.mdl")
  207.                     case 37:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/limitalt/Butterfly_Magma.mdl")
  208.                     case 38:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/limitalt/FlipFade.mdl")
  209.                     case 39:set_pev(id, pev_viewmodel2,"models/els_awpsniper_beta/limitalt/Karambit_Doppler.mdl")
  210.                     case PREMIUMK:set_pev(id,pev_viewmodel2,PKNIFE)
  211.                 }
  212.            
  213.         }
  214.     }
  215. }
  216. public StreakMenu(id){
  217.     new menu=menu_create("\dendlesscs.hu \w» \rKillStreak Menü","ks_menu")
  218.     if(S_Granat[id])
  219.         menu_additem(menu,"\rGránát aktiválása")
  220.     else
  221.         menu_additem(menu,"\dGránát aktiválása")
  222.     if(S_HP[id])
  223.         menu_additem(menu,"\rÉlet aktiválása")
  224.     else
  225.         menu_additem(menu,"\dÉlet aktiválása")
  226.     if(S_Usp[id])
  227.         menu_additem(menu,"\rUSP aktiválása")
  228.     else
  229.         menu_additem(menu,"\dUSP aktiválása")
  230.    
  231.     menu_display(id,menu,0)
  232. }
  233. public ks_menu(id,menu,item){
  234.     if(item == MENU_EXIT){
  235.         menu_destroy(menu)
  236.         return PLUGIN_HANDLED
  237.     }
  238.     switch(item){
  239.         case 0:{
  240.             if(!S_Granat[id]){
  241.                 ColorChat(id,RED,"^1Még nem érted el a(z) ^32-es KillStreaket!")
  242.                 StreakMenu(id)
  243.                 return PLUGIN_HANDLED
  244.             }
  245.             else{
  246.                 S_Granat[id]=false
  247.                 give_item(id,"weapon_hegrenade")
  248.                 ColorChat(id,GREEN,"^1Aktiváltad a ^3Gránát KillStreaket^1!")
  249.             }
  250.         }
  251.         case 1:{
  252.             if(!S_HP[id]){
  253.                 ColorChat(id,RED,"^1Még nem érted el a(z) ^34-es KillStreaket!")
  254.                 StreakMenu(id)
  255.                 return PLUGIN_HANDLED
  256.             }
  257.             else{
  258.                 S_HP[id]=false
  259.                 set_user_health(id,get_user_health(id)+100)
  260.                 ColorChat(id,GREEN,"^1Aktiváltad az ^3Élet KillStreaket^1!")
  261.             }
  262.         }
  263.         case 2:{
  264.             if(!S_Usp[id]){
  265.                 ColorChat(id,RED,"^1Még nem érted el a(z) ^36-os KillStreaket!")
  266.                 StreakMenu(id)
  267.                 return PLUGIN_HANDLED
  268.             }
  269.             else{
  270.                 S_Usp[id]=false
  271.                 give_item(id,"weapon_usp")
  272.                 cs_set_user_bpammo(id,CSW_USP,120)
  273.                 ColorChat(id,GREEN,"^1Aktiváltad az ^3USP KillStreaket^1!")
  274.             }
  275.         }
  276.     }
  277.     return PLUGIN_HANDLED
  278. }
  279. public client_PreThink(id){
  280.     if(is_user_alive(id)){
  281.         if(Exp[id]>=17000){
  282.             set_hudmessage(0, 255, 85, -1.0, 0.86, 0, 6.0, 0.5)
  283.             show_hudmessage(id, "EP: %d^nTP: %d | 17000 (MAX)",Dollar[id],Exp[id])
  284.         }
  285.         else{
  286.             set_hudmessage(0, 255, 85, -1.0, 0.86, 0, 6.0, 0.5)
  287.             show_hudmessage(id, "EP: %d^nTP: %d | %d",Dollar[id],Exp[id],RANKS_XP[Level[id]+1])
  288.         }
  289.     }
  290. }
  291. public sayhook(id)
  292. {
  293.    
  294.     read_args (message, 191)
  295.     remove_quotes (message)
  296.     if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  297.     {
  298.         return PLUGIN_CONTINUE
  299.     }
  300.     get_user_name(id, nev, 31)
  301.     if(is_user_alive(id)) {
  302.         get_user_team(id, color, 9)
  303.         formatex(Temp, 191, "^x04«^x01%s^x04» ^x03%s^x01: %s", RANKS_NAME[Level[id]], nev, message)
  304.        
  305.     }
  306.     else {
  307.         get_user_team(id, color, 9)
  308.         formatex(Temp, 191, "^x01*HALOTT* ^x04«^x01%s^x04» ^x03%s^x01: %s",RANKS_NAME[Level[id]], nev, message)
  309.     }
  310.     sendmessage(color)
  311.     return PLUGIN_HANDLED
  312. }
  313. public tshook(id)
  314. {
  315.     read_args (message, 191)
  316.     remove_quotes (message)
  317.     if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  318.     {
  319.         return PLUGIN_CONTINUE
  320.     }
  321.     get_user_name(id, nev, 31)
  322.     new playerTeam = get_user_team(id)
  323.     new playerTeamName[19]
  324.     switch (playerTeam)
  325.     {
  326.         case 1: {
  327.             copy (playerTeamName, 11, "*T*")
  328.            
  329.         }
  330.         case 2: {
  331.             copy (playerTeamName, 18, "*CT*")
  332.            
  333.         }
  334.         default:
  335.         copy (playerTeamName, 9, "*SPEC*")
  336.     }
  337.     if(is_user_alive(id))
  338.     {
  339.         get_user_team(id, color, 9)
  340.         formatex(Temp, 191, "^x03(%s) ^x04«^x01%s^x04» ^x03%s^x01: %s",playerTeamName,RANKS_NAME[Level[id]], nev, message)
  341.        
  342.     }
  343.     else
  344.     {
  345.         get_user_team(id, color, 9)
  346.         formatex(Temp, 191, "^x04*HALOTT*^x03(%s) ^x04«^x01%s^x04» ^x04[%s] ^x03%s^x01: %s",playerTeamName,RANKS_NAME[Level[id]], nev, message)
  347.     }
  348.     sendtmessage(color, playerTeam)
  349.     return PLUGIN_HANDLED
  350. }
  351. public sendmessage(color[])
  352. {
  353.     new teamName[10]
  354.     for(new player = 1; player < get_maxplayers(); player++)
  355.     {
  356.         get_user_team (player, teamName, 9)
  357.         teamf (player, color)
  358.         elkuldes(player, Temp)
  359.         teamf(player, teamName)
  360.     }
  361. }
  362. public sendtmessage(color[], playerTeam)
  363. {
  364.     new teamName[10]
  365.     for (new player = 1; player < get_maxplayers(); player++)
  366.     {
  367.         if(get_user_team(player) == playerTeam)
  368.         {
  369.             get_user_team (player, teamName, 9)
  370.             elkuldes(player, Temp)
  371.             teamf (player, teamName)
  372.             teamf (player, color)
  373.         }
  374.     }
  375. }
  376. public teamf(player, team[])
  377. {
  378.     message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, player)
  379.     write_byte(player)
  380.     write_string(team)
  381.     message_end()
  382. }
  383. public elkuldes(player, Temp[])
  384. {
  385.    
  386.     message_begin( MSG_ONE, get_user_msgid( "SayText" ), _, player)
  387.     write_byte( player )
  388.     write_string( Temp )
  389.     message_end()
  390.    
  391. }
  392. public on_new_round(){
  393.     new y32[32], x
  394.     get_players(y32,x,"c")
  395.     for(new a = 0; a < x; a++){
  396.         set_task(1.0,"Check",y32[a])
  397.         Grav[y32[a]]=false
  398.         set_user_gravity(y32[a],1.0)
  399.         Speed[y32[a]]=false
  400.         Trap[y32[a]]=false
  401.         set_user_footsteps(y32[a],0)
  402.     }
  403. }
  404. public on_damage(id){
  405.     static damage; damage = read_data(2)
  406.     new att=get_user_attacker(id)
  407.     Exp[att]+=damage
  408.     Exp[id]-=damage
  409. }
  410. public Check(id){
  411.     //client_print(id,print_chat,"XP: %d %i",Exp[id],Exp[id])
  412.     if(Exp[id]<=0)
  413.         Exp[id]=0
  414.     if(Exp[id] >= RANKS_XP[Level[id]+1]){
  415.         Level[id]+=1
  416.         //client_print(id,print_chat,"Fejlodtel! Uj rankod: %s",RANKS_NAME[Level[id]])
  417.         ColorChat(id,GREEN,"^1Fejlődtél!^1 Új rankod:^3 %s",RANKS_NAME[Level[id]])
  418.     }
  419.     else if(Exp[id] <= RANKS_XP[Level[id]-1]){
  420.         Level[id]-=1
  421.         ColorChat(id,GREEN,"^1Visszaestél!^1 Új rankod:^3 %s",RANKS_NAME[Level[id]])
  422.     }
  423. }
  424. public OnPlayerKilled(){
  425.     new att=read_data(1),vic=read_data(2)
  426.     Kills[att][vic]+=1
  427.     Kills[vic][att]=0
  428.     KillStreak[vic]=0
  429.     KillStreak[att]+=1
  430.     new at_name[32],vic_name[32]
  431.     get_user_name(att,at_name,31)
  432.     get_user_name(vic,vic_name,31)
  433.     Check_Streak(att)
  434.     if(Kills[att][vic]==3){
  435.        
  436.         PlayersInventory[att][Common]++
  437.         //client_print(0,print_chat,"^4 %s^1 alázza^4 %s^1-t, ajándéka: ^3Super Box!",at_name,vic_name)
  438.         //print_color(0,"!g %s!y alázza !g%s!y-t, ajándéka: ^3Super Box!",at_name,vic_name)
  439.         ColorChat(0,GREEN,"^3 %s ^1 alázza^3 %s ^1-t, ajandeka: ^3Common Box!",at_name,vic_name)
  440.     }
  441.     new rand=random_num(0,100),randep
  442.     new weap=get_user_weapon(att)
  443.     if(weap == CSW_AWP && cweapon[0][att]==PREMIUMA) randep=random_num(50,80)
  444.     else if(weap == CSW_KNIFE && cweapon[1][att]==PREMIUMK) randep=random_num(50,80)
  445.     else
  446.         randep=random_num(20,55)
  447.     switch(rand){
  448.         case 1..50:{
  449.             set_hudmessage(255, 255, 255, 0.83, 0.45, 0, 6.0, 4.0)
  450.             show_hudmessage(att, "+%d EP",randep)
  451.             Dollar[att]+=randep
  452.         }
  453.         case 51..59:{
  454.             PlayersInventory[att][Regular]+=1
  455.             set_hudmessage(255, 255, 255, 0.83, 0.45, 0, 6.0, 4.0)
  456.             show_hudmessage(att, "+1 Regular Box",randep)
  457.         }
  458.         case 60..100:{
  459.             set_hudmessage(255, 255, 255, 0.83, 0.45, 0, 6.0, 4.0)
  460.             show_hudmessage(att, "+%d EP",randep)
  461.             Dollar[att]+=randep
  462.         }
  463.     }
  464.    
  465.     switch(weap){
  466.         case CSW_AWP:{
  467.             if(cweapon[att][0]==PREMIUMA){
  468.                 StruckLightning(vic)
  469.             }
  470.         }
  471.         case CSW_KNIFE:{
  472.             if(cweapon[att][1]==PREMIUMK){
  473.                 StruckLightning(vic)
  474.             }
  475.         }
  476.     }
  477. }
  478. StruckLightning(id){
  479.     new iOrigin[2][3]
  480.     get_user_origin(id, iOrigin[0])
  481.     iOrigin[0][2] = iOrigin[0][2] - 26
  482.     iOrigin[1][0] = iOrigin[0][0] + 150
  483.     iOrigin[1][1] = iOrigin[0][1] + 150
  484.     iOrigin[1][2] = iOrigin[0][2] + 400
  485.    
  486.     emit_sound(id, CHAN_AUTO, g_szSound, 1.0, ATTN_NORM, 0, PITCH_NORM)
  487.    
  488.     message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
  489.     write_byte(0)
  490.     write_coord(iOrigin[0][0])
  491.     write_coord(iOrigin[0][1])
  492.     write_coord(iOrigin[0][2])
  493.     write_coord(iOrigin[1][0])
  494.     write_coord(iOrigin[1][1])
  495.     write_coord(iOrigin[1][2])
  496.     write_short(g_iLightning)
  497.     write_byte(1)
  498.     write_byte(5)
  499.     write_byte(2)
  500.     write_byte(100)
  501.     write_byte(30)
  502.     write_byte(255)
  503.     write_byte(255)
  504.     write_byte(255)
  505.     write_byte(200)
  506.     write_byte(200)
  507.     message_end()
  508.    
  509.     message_begin(MSG_PVS, SVC_TEMPENTITY, iOrigin[1])
  510.     write_byte(9)
  511.     write_coord(iOrigin[1][0])
  512.     write_coord(iOrigin[1][1])
  513.     write_coord(iOrigin[1][2])
  514.     message_end()
  515.    
  516.     message_begin(MSG_BROADCAST, SVC_TEMPENTITY, iOrigin[1])
  517.     write_byte(5)
  518.     write_coord(iOrigin[1][0])
  519.     write_coord(iOrigin[1][1])
  520.     write_coord(iOrigin[1][2])
  521.     write_short(g_iSmoke)
  522.     write_byte(10)
  523.     write_byte(10)
  524.     message_end()
  525. }
  526. public Check_Streak(id){
  527.     new nev[32];get_user_name(id,nev,31)
  528.     if(KillStreak[id]==6){
  529.         KillStreak[id]=0
  530.         ColorChat(0,GREEN,"%s^x01 6-os szintű KillStreak! Nyeremény:^x3 USP^x01 |^x03 Legendary Box^x01!",nev)
  531.         //set_hudmessage(255, 0, 0, -1.0, 0.05, 0, 6.0, 12.0)
  532.         //show_hudmessage(0, "%s 6-os szintű KillStreak!!",nev)
  533.         //PlayersInvertory[id][Legendary]+=1
  534.         PlayersInventory[id][Legendary]+=1
  535.         S_Usp[id]=true
  536.         //give_item(id,"weapon_usp")
  537.         //cs_set_user_bpammo(id,CSW_USP,120)
  538.     }
  539.     else if(KillStreak[id]==4){
  540.         ColorChat(0,GREEN,"%s^x01 4-es szintű KillStreak! Nyeremény:^x3 200 Elet",nev)
  541.         S_HP[id]=true
  542.     }
  543.     else if(KillStreak[id]==2){
  544.         ColorChat(0,GREEN,"%s^x01 2-es szintű KillStreak! Nyeremény:^x3 Robbanó gránát",nev)
  545.         S_Granat[id]=true
  546.     }
  547. }
  548. public main_menu(id){
  549.     new menu=menu_create("\d-[EndLeSS]- \w» \rAWP Szerver","main_handler")
  550.     menu_additem(menu,"\rLádák nyitása")
  551.     menu_additem(menu,"\yBolt")
  552.     menu_additem(menu,"\rRaktár")
  553.     menu_additem(menu,"\yInformációk")
  554.     menu_display(id,menu,0)
  555.     return PLUGIN_HANDLED
  556. }
  557. public main_handler(id,menu,item){
  558.     if(item==MENU_EXIT){
  559.         menu_destroy(menu)
  560.         return PLUGIN_HANDLED
  561.     }
  562.     switch(item){
  563.         case 0:
  564.             nyitas(id)
  565.         case 1:
  566.             bolt(id)
  567.         case 2:
  568.             kerdes(id)
  569.         case 3:
  570.             show_motd(id,"addons/amxmodx/configs/informaciok.txt","Informaciok")
  571.     }
  572.     return PLUGIN_CONTINUE
  573. }
  574. public bolt(id){
  575.     new tempo[32]
  576.     formatex(tempo,charsmax(tempo),"\d-[EndLeSS]- \w» \rAWP Szerver \RAR^n\r%d \wEP-d van",Dollar[id])
  577.     new menu = menu_create( tempo , "bolt_hand")
  578.     menu_additem(menu,"\rLimited Box\R\y10000 EP")
  579.     menu_additem(menu,"\rRegular Box\R\y5000 EP")
  580.     menu_additem(menu,"\rFlash gránát\R\y250 EP")
  581.     menu_additem(menu,"\rGravitáció\R\y320 EP")
  582.     menu_additem(menu,"\rSebesség\R\y400 EP")
  583.     menu_additem(menu,"\rKevlár\R\y270 EP")
  584.     menu_additem(menu,"\rNo Trap\R\y220 EP")
  585.     if(PAWPM[id]==0)
  586.         menu_additem(menu,"\wPrémium AWP \y40K EP")
  587.     else
  588.         menu_additem(menu,"\rPrémium AWP\r[Megvan]^n\dKatt rám, hogy felszereld!")
  589.     if(PKNIFEM[id]==0)
  590.         menu_additem(menu,"\wPrémium Kés \y25K EP")
  591.     else
  592.         menu_additem(menu,"\rPrémium Kés\r[Megvan]^n\dKatt rám, hogy felszereld!")
  593.     menu_display(id,menu,0)
  594. }
  595. public bolt_hand(id,menu,item){
  596.     if(item==MENU_EXIT){
  597.         menu_destroy(menu)
  598.         return PLUGIN_HANDLED
  599.     }
  600.     switch(item){
  601.         case 0:{
  602.             if(Dollar[id]>=10000){
  603.                 Dollar[id]-=10000
  604.                 PlayersInventory[id][Limited]+=1
  605.                 ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeres vásárlás!")
  606.             }
  607.             else{
  608.                 bolt(id)
  609.                 ColorChat(id,RED,"^1[^4endlesscs.hu^1] Sikertelen vásárlás, nincs elég ^3EP-d!")
  610.             }
  611.         }
  612.         case 1:{
  613.             if(Dollar[id]>=5000){
  614.                 Dollar[id]-=5000
  615.                 PlayersInventory[id][Regular]+=1
  616.                 ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeres vásárlás!")
  617.             }
  618.             else{
  619.                 bolt(id)
  620.                 ColorChat(id,RED,"^1[^4endlesscs.hu^1] Sikertelen vásárlás, nincs elég ^3EP-d!")
  621.             }
  622.         }
  623.         case 2:{
  624.             if(Dollar[id]>=250){
  625.                 Dollar[id]-=250
  626.                 give_item(id,"weapon_flashbang")
  627.                 ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeres vásárlás!")
  628.             }
  629.             else{
  630.                 bolt(id)
  631.                 ColorChat(id,RED,"^1[^4endlesscs.hu^1] Sikertelen vásárlás, nincs elég ^3EP-d!")
  632.             }
  633.         }
  634.         case 3:{
  635.             if(Dollar[id]>=320){
  636.                 Dollar[id]-=320
  637.                 Grav[id]=true
  638.                 set_user_gravity(id,0.5)
  639.                 ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeres vásárlás!")
  640.             }
  641.             else{
  642.                 bolt(id)
  643.                 ColorChat(id,RED,"^1[^4endlesscs.hu^1] Sikertelen vásárlás, nincs elég ^3EP-d!")
  644.             }
  645.         }
  646.         case 4:{
  647.             if(Dollar[id]>=400){
  648.                 Dollar[id]-=400
  649.                 set_user_maxspeed(id,370.0)
  650.                 Speed[id]=true
  651.                 ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeres vásárlás!")
  652.             }
  653.             else{
  654.                 bolt(id)
  655.                 ColorChat(id,RED,"^1[^4endlesscs.hu^1] Sikertelen vásárlás, nincs elég ^3EP-d!")
  656.             }
  657.         }
  658.         case 5:{
  659.             if(Dollar[id]>=270){
  660.                 Dollar[id]-=270
  661.                 give_item(id,"item_assaultsuit")
  662.                 ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeres vásárlás!")
  663.             }
  664.             else{
  665.                 bolt(id)
  666.                 ColorChat(id,RED,"^1[^4endlesscs.hu^1] Sikertelen vásárlás, nincs elég ^3EP-d!")
  667.             }
  668.         }
  669.         case 6:{
  670.             if(Dollar[id]>=220){
  671.                 Dollar[id]-=220
  672.                 Trap[id]=true
  673.                 set_user_footsteps(id,1)
  674.                 ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeres vásárlás!")
  675.             }
  676.             else{
  677.                 bolt(id)
  678.                 ColorChat(id,RED,"^1[^4endlesscs.hu^1] Sikertelen vásárlás, nincs elég ^3EP-d!")
  679.             }
  680.         }
  681.         case 7:{
  682.             if(PAWPM[id]==1){
  683.                 ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeresen felszerelted!")
  684.                 cweapon[id][0]=PREMIUMA
  685.             }
  686.             else{
  687.                 if(Dollar[id]>=40000){
  688.                     Dollar[id]-=40000
  689.                     cweapon[id][0]=PREMIUMA
  690.                     PAWPM[id]=1
  691.                     ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Megvetted a ^3Prémium AWP^1-t, szereld fel hogy kapj képességet!")
  692.                 }
  693.                 else{
  694.                     bolt(id)
  695.                     ColorChat(id,RED,"^1[^4endlesscs.hu^1] Sikertelen vásárlás, nincs elég ^3EP-d!")
  696.                 }
  697.             }
  698.         }
  699.         case 8:{
  700.             if(PKNIFEM[id]==1){
  701.                 ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeresen felszerelted!")
  702.                 cweapon[id][1]=PREMIUMK
  703.             }
  704.             else {
  705.                 if(Dollar[id]>=25000){
  706.                     Dollar[id]-=25000
  707.                     cweapon[id][1]=PREMIUMK
  708.                     PKNIFEM[id]=1
  709.                     ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Megvetted a ^3Prémium Knife^1-ot, szereld fel hogy kapj képességet!")
  710.                 }
  711.                 else{
  712.                     bolt(id)
  713.                     ColorChat(id,RED,"^1[^4endlesscs.hu^1] Sikertelen vásárlás, nincs elég ^3EP-d!")
  714.                 }
  715.             }
  716.         }
  717.     }
  718.     return PLUGIN_CONTINUE
  719. }
  720. public kerdes(id){
  721.     new menu=menu_create("\d-[EndLeSS]- \w» \rAWP Szerver RAKTÁR","r_hand")
  722.     menu_additem(menu,"\rAWP Skinek")
  723.     menu_additem(menu,"\yKés Skinek")
  724.     menu_display(id,menu)
  725. }
  726. public r_hand(id,menu,item){
  727.     if(item==MENU_EXIT){
  728.         menu_destroy(menu)
  729.         return PLUGIN_HANDLED
  730.     }
  731.     switch(item){
  732.         case 0:
  733.             awp_skinek(id)
  734.         case 1:
  735.             kes_skinek(id)
  736.     }
  737.     return PLUGIN_CONTINUE
  738. }
  739. public awp_skinek(id){
  740.     new menu = menu_create("\d-[EndLeSS]- \w» \rRAKTÁR", "a_menu");
  741.     new temp[120]
  742.     for(new i;i < MAX; i++)
  743.     {
  744.         if(Osszesskin[i][id] > 0)
  745.         {
  746.             new Sor[6]; num_to_str(i, Sor, 5);
  747.             formatex(temp, charsmax(temp), "%s \d[\r%d DB \d]", Skins[i][0], Osszesskin[i][id]);
  748.             menu_additem(menu,temp,Sor);
  749.         }
  750.     }
  751.     menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  752.     menu_setprop(menu, MPROP_BACKNAME, "\dVissza");
  753.     menu_setprop(menu, MPROP_NEXTNAME, "\dKövetkező");
  754.     menu_setprop(menu, MPROP_EXITNAME, "\dKilépés");
  755.     menu_setprop(menu, MPROP_NOCOLORS, 1);
  756.     menu_setprop(menu, MPROP_NUMBER_COLOR, "\w");
  757.    
  758.     menu_display(id, menu, 0);
  759.    
  760.     return PLUGIN_HANDLED;
  761. }
  762. public a_menu(id, menu, item){
  763.     if(item == MENU_EXIT)
  764.     {
  765.         menu_destroy(menu);
  766.         return;
  767.     }
  768.     new data[9], szName[64];
  769.     new access, callback;
  770.     menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  771.     new key = str_to_num(data);
  772.     switch(key) {
  773.         case 0:{
  774.             cweapon[id][0]=1
  775.         }
  776.         case 1:{
  777.             cweapon[id][0]=2
  778.         }
  779.         case 2:{
  780.             cweapon[id][0]=3
  781.         }
  782.         case 3:{
  783.             cweapon[id][0]=4
  784.         }
  785.         case 4:{
  786.             cweapon[id][0]=5
  787.         }
  788.         case 5:{
  789.             cweapon[id][0]=6
  790.         }
  791.         case 6:{
  792.             cweapon[id][0]=7
  793.         }
  794.         case 7:{
  795.             cweapon[id][0]=8
  796.         }
  797.         case 8:{
  798.             cweapon[id][0]=9
  799.         }
  800.         case 9:{
  801.             cweapon[id][0]=10
  802.         }
  803.         case 10:{
  804.             cweapon[id][0]=11
  805.         }
  806.         case 11:{
  807.             cweapon[id][0]=12
  808.         }
  809.         case 12:{
  810.             cweapon[id][0]=13
  811.         }
  812.         case 13:{
  813.             cweapon[id][0]=14
  814.         }
  815.         case 14:{
  816.             cweapon[id][0]=15
  817.         }
  818.         case 15:{
  819.             cweapon[id][0]=16
  820.         }
  821.         case 16:{
  822.             cweapon[id][0]=17
  823.         }
  824.         case 17:{
  825.             cweapon[id][0]=18
  826.         }
  827.         case 18:{
  828.             cweapon[id][0]=19
  829.         }
  830.         case 19:{
  831.             cweapon[id][0]=20
  832.         }
  833.         case 20:{
  834.             cweapon[id][0]=21
  835.         }
  836.         case 21:{
  837.             cweapon[id][0]=22
  838.         }
  839.         case 22:{
  840.             cweapon[id][0]=23
  841.         }
  842.         case 23:{
  843.             cweapon[id][0]=24
  844.         }
  845.         case 24:{
  846.             cweapon[id][0]=25
  847.         }
  848.         case 25:{
  849.             cweapon[id][0]=26
  850.         }
  851.         case 26:{
  852.             cweapon[id][0]=27
  853.         }
  854.         case 27:{
  855.             cweapon[id][0]=PREMIUMA
  856.         }
  857.         //////
  858.        
  859.     }
  860.     ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeresen felszerelted!")
  861.     menu_destroy(menu);
  862. }
  863. public kes_skinek(id){
  864.     new menu = menu_create("\d-[EndLeSS]- \w» \rRAKTÁR", "k_menu");
  865.     new temp[120]
  866.     for(new i;i < KMAX; i++)
  867.     {
  868.         if(Osszeskes[i][id] > 0)
  869.         {
  870.             new Sor[6]; num_to_str(i, Sor, 5);
  871.             formatex(temp, charsmax(temp), "%s \d[\r%d DB \d]", KSkins[i][0], Osszeskes[i][id]);
  872.             menu_additem(menu,temp,Sor);
  873.         }
  874.     }
  875.     menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  876.     menu_setprop(menu, MPROP_BACKNAME, "\dVissza");
  877.     menu_setprop(menu, MPROP_NEXTNAME, "\dKövetkező");
  878.     menu_setprop(menu, MPROP_EXITNAME, "\dKilépés");
  879.     menu_setprop(menu, MPROP_NOCOLORS, 1);
  880.     menu_setprop(menu, MPROP_NUMBER_COLOR, "\w");
  881.    
  882.     menu_display(id, menu, 0);
  883.     //cweapon[id][1]=29
  884.     return PLUGIN_HANDLED;
  885. }
  886. public k_menu(id, menu, item){
  887.     if(item == MENU_EXIT)
  888.     {
  889.         menu_destroy(menu);
  890.         return;
  891.     }
  892.     new data[9], szName[64];
  893.     new access, callback;
  894.     menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  895.     new key = str_to_num(data);
  896.     switch(key) {
  897.         case 0:{
  898.             cweapon[id][1]=29
  899.         }
  900.         case 1:{
  901.             cweapon[id][1]=30
  902.         }
  903.         case 2:{
  904.             cweapon[id][1]=31
  905.         }
  906.         case 3:{
  907.             cweapon[id][1]=32
  908.         }
  909.         case 4:{
  910.             cweapon[id][1]=33
  911.         }
  912.         case 5:{
  913.             cweapon[id][1]=34
  914.         }
  915.         case 6:{
  916.             cweapon[id][1]=35
  917.         }
  918.         case 7:{
  919.             cweapon[id][1]=36
  920.         }
  921.         case 8:{
  922.             cweapon[id][1]=37
  923.         }
  924.         case 9:{
  925.             cweapon[id][1]=38
  926.         }
  927.         case 10:{
  928.             cweapon[id][1]=39
  929.         }
  930.        
  931.     }
  932.     ColorChat(id,GREEN,"^1[^4endlesscs.hu^1] Sikeresen felszerelted!")
  933.     menu_destroy(menu);
  934. }
  935. public nyitas(id){
  936.     new ding[23]
  937.     new menu=menu_create("\d-[EndLeSS]- \w» \rLáda rendszer\RDarab^n","case_hand")
  938.     /*Regular*/
  939.     if(PlayersInventory[id][Common]>=1){
  940.         formatex(ding,22,"Common Box\R\r%d",PlayersInventory[id][Common])
  941.         menu_additem(menu,ding)
  942.         //formatex(ding,14,"")
  943.     }
  944.     else
  945.         menu_additem(menu,"\dCommon Box\R\r0")
  946.     /*Super*/
  947.     if(PlayersInventory[id][Limited]>=1){
  948.         formatex(ding,22,"Limited\R\r%d",PlayersInventory[id][Limited])
  949.         menu_additem(menu,ding)
  950.         //formatex(ding,14,"")
  951.     }
  952.     else
  953.         menu_additem(menu,"\dLimited Box\R\r0")
  954.     /*Legendary*/
  955.     if(PlayersInventory[id][Legendary]>=1){
  956.         formatex(ding,22,"Legendary Box\R\r%d",PlayersInventory[id][Legendary])
  957.         menu_additem(menu,ding)
  958.         //formatex(ding,14,"")
  959.     }
  960.     else
  961.         menu_additem(menu,"\dLegendary Box\R\r0")
  962.     /*Xmas*/
  963.     if(PlayersInventory[id][Regular]>=1){
  964.         formatex(ding,22,"Regular Box\R\r%d",PlayersInventory[id][Regular])
  965.         menu_additem(menu,ding)
  966.         //formatex(ding,14,"")
  967.     }
  968.     else
  969.         menu_additem(menu,"\dRegular Box\R\r0")
  970.     menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  971.     menu_display(id,menu,0)
  972.     return PLUGIN_HANDLED
  973. }
  974. public case_hand(id,menu,item){
  975.     if(item == MENU_EXIT){
  976.         menu_destroy(menu)
  977.         return PLUGIN_HANDLED
  978.     }
  979.     switch(item){
  980.         case 0:
  981.             PlayersInventory[id][Common]>0?Common_Open(id):Error(id)
  982.         case 1:
  983.             PlayersInventory[id][Limited]>0?Limited_Open(id):Error(id)
  984.         case 2:
  985.             PlayersInventory[id][Legendary]>0?Legendary_Open(id):Error(id)
  986.         case 3:
  987.             PlayersInventory[id][Regular]>0?Xmas_Open(id):Error(id)
  988.     }
  989.     return PLUGIN_CONTINUE
  990. }
  991. public Common_Open(id){
  992.     PlayersInventory[id][Common]--
  993.     new rand=random_num(60,200)
  994.     new nev[32];get_user_name(id,nev,31)
  995.     ColorChat(0,GREEN,"%s^x01 nyitott egy Common Boxot: %d TP | %d EP",nev,rand,rand)
  996.     Dollar[id]+=rand
  997.     Exp[id]+=rand
  998. }
  999. public Limited_Open(id){
  1000.     PlayersInventory[id][Limited]--
  1001.     new rand=random_num(0,7)
  1002.     new nev[32];get_user_name(id,nev,31)
  1003.     ColorChat(0,GREEN,"%s^x01 nyitott egy Limited Boxot:^x04 %s",nev,KSkins[rand])
  1004.     Osszeskes[rand][id]+=1
  1005.     /*
  1006.     switch(rand){
  1007.         case 0: rand=28
  1008.             case 1: rand=29
  1009.             case 2: rand=30
  1010.             case 3: rand=31
  1011.             case 4: rand=32
  1012.             case 5: rand=33
  1013.             case 6: rand=34
  1014.             case 7: rand=35
  1015.         }
  1016.     megkap(id,rand)
  1017.     */
  1018. }
  1019. stock megkap(id,num){
  1020.     Osszeskes[num][id]+=1
  1021.     client_print(id,print_chat,"^1[^4endlesscs.hu^1] Megkaptad: %d",Osszesskin[num][id])
  1022. }
  1023. public Legendary_Open(id){
  1024.     PlayersInventory[id][Legendary]--
  1025.     new rand=random_num(8,10)
  1026.     new nev[32];get_user_name(id,nev,31)
  1027.     ColorChat(0,GREEN,"%s^x01 nyitott egy Legendary Boxot:^x04 %s",nev,KSkins[rand])
  1028.     Osszeskes[rand][id]+=1
  1029. }
  1030. public Xmas_Open(id){
  1031.     PlayersInventory[id][Regular]--
  1032.     new rand=random_num(0,27)
  1033.     new nev[32];get_user_name(id,nev,31)
  1034.     ColorChat(0,GREEN,"%s^x01 nyitott egy Regular Boxot:^x04 %s",nev,Skins[rand])
  1035.     Osszesskin[rand][id]+=1
  1036. }
  1037. public drop(id){
  1038.     for(new i;i<4;i++)
  1039.         PlayersInventory[id][i]++
  1040. }
  1041. public Error(id){
  1042.     client_print(id,print_chat,"^1[^4endlesscs.hu^1] Nem rendelkezel elegendő mennyiséggel!")
  1043.     nyitas(id)
  1044. }
  1045. //MENTES
  1046. public plugin_cfg()
  1047. {
  1048.     g_SqlTuple = SQL_MakeDbTuple(SQLINFO[0], SQLINFO[1], SQLINFO[2], SQLINFO[3]);
  1049.    
  1050.     static Query[10048];
  1051.     new Len;
  1052.    
  1053.     Len += formatex(Query[Len], charsmax(Query), "CREATE TABLE IF NOT EXISTS `AWPMENTES`");
  1054.     Len += formatex(Query[Len], charsmax(Query)-Len, "(`Nev` varchar(32) NOT NULL, ");
  1055.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Exp` int(11) NOT NULL,");
  1056.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Level` int(11) NOT NULL,");
  1057.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Common` int(11) NOT NULL,");
  1058.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Limited` int(11) NOT NULL,");
  1059.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Legendary` int(11) NOT NULL,");
  1060.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Regular` int(11) NOT NULL,");
  1061.    
  1062.     for(new i;i < MAX; i++)
  1063.         Len += formatex(Query[Len], charsmax(Query)-Len, "`F_%d` int(11) NOT NULL,", i);
  1064.    
  1065.     Len += formatex(Query[Len], charsmax(Query)-Len, "`id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)");
  1066.    
  1067.     SQL_ThreadQuery(g_SqlTuple, "createTableThread", Query);
  1068.    
  1069. }
  1070. public Load(id) {
  1071.     static Query[10048];
  1072.     new Data[1], Name[32];
  1073.     get_user_authid(id, Name, 31);
  1074.     if(contain(Name, "_ID_LAN") != -1) get_user_ip(id,Name, charsmax(Name), 1);
  1075.     Data[0] = id;
  1076.    
  1077.     formatex(Query, charsmax(Query), "SELECT * FROM `AWPMENTES` WHERE Nev = ^"%s^";", Name);
  1078.     SQL_ThreadQuery(g_SqlTuple, "QuerySelectData", Query, Data, 1);
  1079. }
  1080. public QuerySelectData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) {
  1081.     if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) {
  1082.         log_amx("%s", Error);
  1083.         return;
  1084.     }
  1085.     else {
  1086.         new id = Data[0];
  1087.        
  1088.         if(SQL_NumRows(Query) > 0) {
  1089.             Exp[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Tp"));
  1090.             Level[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Level"));
  1091.             PlayersInventory[id][Common] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Common"));
  1092.             PlayersInventory[id][Limited] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Limited"));
  1093.             PlayersInventory[id][Legendary] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Legendary"));
  1094.             PlayersInventory[id][Regular] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Regular"));
  1095.             //Oles[id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Oles"));
  1096.             for(new i=0;i < MAX; i++)
  1097.             {
  1098.                 new String[64];
  1099.                 formatex(String, charsmax(String), "F_%d", i);
  1100.                 Osszesskin[i][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, String));
  1101.             }
  1102.             Osszeskes[0][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_28"))
  1103.             Osszeskes[1][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_29"))
  1104.             Osszeskes[2][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_30"))
  1105.             Osszeskes[3][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_31"))
  1106.             Osszeskes[4][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_32"))
  1107.             Osszeskes[5][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_33"))
  1108.             Osszeskes[6][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_34"))
  1109.             Osszeskes[7][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_35"))
  1110.             Osszeskes[8][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_36"))
  1111.             Osszeskes[9][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_37"))
  1112.             Osszeskes[10][id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"F_38"))
  1113.             PAWPM[id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"PAWP"))
  1114.             PKNIFEM[id]=SQL_ReadResult(Query, SQL_FieldNameToNum(Query,"PKNIFE"))
  1115.         }
  1116.         else
  1117.         {
  1118.             Save(id);
  1119.         }
  1120.     }
  1121. }
  1122. public Save(id)
  1123. {
  1124.     static Query[256];
  1125.     new Name[32]; get_user_authid(id, Name, 31);
  1126.     if(contain(Name, "_ID_LAN") != -1) get_user_ip(id,Name, charsmax(Name), 1);
  1127.    
  1128.     formatex(Query, charsmax(Query), "INSERT INTO `AWPMENTES` (`Nev`) VALUES (^"%s^");", Name);
  1129.    
  1130.     SQL_ThreadQuery(g_SqlTuple, "QuerySetData", Query);
  1131. }
  1132. public Update(id)
  1133. {
  1134.     // UPDATE `awpmode`.`AWPMENTES` SET `F_0` = '1' WHERE `AWPMENTES`.`id` = 1;
  1135.     static Query[1000000];
  1136.     new Len;
  1137.     new Name[37]
  1138.     get_user_authid(id, Name, 36);
  1139.     if(contain(Name, "_ID_LAN") != -1) get_user_ip(id,Name, charsmax(Name), 1);
  1140.    
  1141.     /*
  1142.     UPDATE `AWPMENTES` SET `Nev`=[value-1],`Tp`=[value-2],`Level`=[value-3],`Common`=[value-4],
  1143.     `Limited`=[value-5],`Legendary`=[value-6],`Regular`=[value-7],`F_0`=[value-8],`F_1`=[value-9],
  1144.     `F_2`=[value-10],`F_3`=[value-11],`F_4`=[value-12],`F_5`=[value-13],`F_6`=[value-14],`F_7`=[value-15],
  1145.     `F_8`=[value-16],`F_9`=[value-17],`F_10`=[value-18],`F_11`=[value-19],`F_12`=[value-20],
  1146.     `F_13`=[value-21],`F_14`=[value-22],`F_15`=[value-23],`F_16`=[value-24],`F_17`=[value-25],
  1147.     `F_18`=[value-26],`F_19`=[value-27],`F_20`=[value-28],`F_21`=[value-29],`F_22`=[value-30],
  1148.     `F_23`=[value-31],`F_24`=[value-32],`F_25`=[value-33],`F_26`=[value-34],`F_27`=[value-35],
  1149.     `F_28`=[value-36],`F_29`=[value-37],`F_30`=[value-38],`F_31`=[value-39],`F_32`=[value-40],
  1150.     `F_33`=[value-41],`F_34`=[value-42],`F_35`=[value-43],`F_36`=[value-44],`F_37`=[value-45],
  1151.     `F_38`=[value-46] WHERE 1
  1152.     */
  1153.     Len += formatex(Query[Len], charsmax(Query), "UPDATE `awpmode`.`AWPMENTES` SET")
  1154.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Tp` = %i,",Exp[id])
  1155.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Level` = '%i',", Level[id])
  1156.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Common` = %i,", PlayersInventory[id][Common])
  1157.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Limited` = %i,", PlayersInventory[id][Limited])
  1158.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Legendary` = %i,", PlayersInventory[id][Legendary])
  1159.     Len += formatex(Query[Len], charsmax(Query)-Len, "`Regular` = %i,", PlayersInventory[id][Regular])
  1160.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_0` = %i,",Osszesskin[0][id]);
  1161.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_1` = %i,",Osszesskin[1][id])
  1162.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_2` = %i,",Osszesskin[2][id]);
  1163.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_3` = %i,",Osszesskin[3][id]);
  1164.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_4` = %i,",Osszesskin[4][id]);
  1165.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_5` = %i,",Osszesskin[5][id]);
  1166.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_6` = %i,",Osszesskin[6][id]);
  1167.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_7` = %i,",Osszesskin[7][id]);
  1168.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_8` = %i,",Osszesskin[8][id]);
  1169.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_9` = %i,",Osszesskin[9][id]);
  1170.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_10` = %i,",Osszesskin[10][id]);
  1171.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_11` = %i,",Osszesskin[11][id]);
  1172.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_12` = %i,",Osszesskin[12][id]);
  1173.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_13` = %i,",Osszesskin[13][id]);
  1174.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_14` = %i,",Osszesskin[14][id]);
  1175.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_15` = %i,",Osszesskin[15][id]);
  1176.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_16` = %i,",Osszesskin[16][id]);
  1177.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_17` = %i,",Osszesskin[17][id]);
  1178.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_18` = %i,",Osszesskin[18][id]);
  1179.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_19` = %i,",Osszesskin[19][id]);
  1180.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_20` = %i,",Osszesskin[20][id]);
  1181.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_21` = %i,",Osszesskin[21][id]);
  1182.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_22` = %i,",Osszesskin[22][id]);
  1183.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_23` = %i,",Osszesskin[23][id]);
  1184.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_24` = %i,",Osszesskin[24][id]);
  1185.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_25` = %i,",Osszesskin[25][id]);
  1186.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_26` = %i,",Osszesskin[26][id]);
  1187.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_27` = %i,",Osszesskin[27][id]);
  1188.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_28` = %i,",Osszeskes[0][id]);
  1189.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_29` = %i,",Osszeskes[1][id]);
  1190.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_30` = %i,",Osszeskes[2][id]);
  1191.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_31` = %i,",Osszeskes[3][id]);
  1192.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_32` = %i,",Osszeskes[4][id]);
  1193.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_33` = %i,",Osszeskes[5][id]);
  1194.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_34` = %i,",Osszeskes[6][id]);
  1195.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_35` = %i,",Osszeskes[7][id]);
  1196.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_36` = %i,",Osszeskes[8][id]);
  1197.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_37` = %i,",Osszeskes[9][id]);
  1198.     Len += formatex(Query[Len], charsmax(Query)-Len, "`F_38` = %i,",Osszeskes[10][id]);
  1199.     Len += formatex(Query[Len], charsmax(Query)-Len, "`PAWP` = %i,",PAWPM[id]);
  1200.     Len += formatex(Query[Len], charsmax(Query)-Len, "`PKNIFE` = %i WHERE `AWPMENTES`.`Nev` = ^"%s^";",PKNIFEM[id],Name);
  1201.     //Len += formatex(Query[Len], charsmax(Query)-Len, "WHERE Nev = ^"%s^"",Name)
  1202.    
  1203.     //for(new i=0;i < MAX; i++) Len += formatex(Query[Len], charsmax(Query)-Len, "F_%d = ^"%i^" WHERE Nev = ^"%s^"", i, Osszesskin[i][id],Name);
  1204.     SQL_ThreadQuery(g_SqlTuple, "QuerySetData", Query);
  1205. }
  1206. public createTableThread(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime) {
  1207.     if(FailState == TQUERY_CONNECT_FAILED)
  1208.         set_fail_state("[HIBA*] NEM TUDTAM CSATLAKOZNI AZ ADATBAZISHOZ!");
  1209.     else if(FailState == TQUERY_QUERY_FAILED)
  1210.         set_fail_state("Query Error");
  1211.     if(Errcode)
  1212.         log_amx("[HIBA*] HIBAT DOBTAM: %s",Error);
  1213. }
  1214. public QuerySetData(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  1215. {
  1216.     if(FailState == TQUERY_CONNECT_FAILED)return set_fail_state("[ *HIBA* ] NEM LEHET KAPCSOLODNI AZ ADATBAZISHOZ!")
  1217.     //else if(FailState == TQUERY_QUERY_FAILED) return set_fail_state("[ *HIBA* ] A LEKERDEZES MEGSZAKADT!")
  1218.    
  1219.     if(Errcode) return log_amx("[ *HIBA* ] PROBLEMA A LEKERDEZESNEL! ( %s )",Error)
  1220.    
  1221.     return PLUGIN_CONTINUE
  1222. }
  1223. public client_putinserver(id)
  1224. {
  1225.     Exp[id] = EOS;
  1226.     Level[id] = 0;
  1227.     PAWPM[id]=0
  1228.     PKNIFEM[id]=0
  1229.     PlayersInventory[id][Common] = 0;
  1230.     PlayersInventory[id][Regular] = 0;
  1231.     PlayersInventory[id][Limited] = 0;
  1232.     PlayersInventory[id][Legendary] = 0;
  1233.     for(new i;i < MAX; i++)
  1234.         Osszesskin[i][id] = EOS;
  1235.     if(!is_user_bot(id)){
  1236.         Load(id);
  1237.         Load_Penz(id)
  1238.     }
  1239. }
  1240.  
  1241. public client_disconnect(id)
  1242. {
  1243.     if(!is_user_bot(id)){
  1244.         Save_Penz(id)
  1245.         Update(id);
  1246.     }
  1247. }
  1248. public Load_Penz(id) {
  1249.     new szData[128];
  1250.     new steamid[32]; get_user_authid(id, steamid, charsmax(steamid));
  1251.     if(contain(steamid, "_ID_LAN") != -1) get_user_ip(id, steamid, charsmax(steamid), 1);
  1252.    
  1253.     if(get_data(steamid, szData, charsmax(szData))) {
  1254.         new valami[32]
  1255.         parse(szData, valami, charsmax(valami));
  1256.         Dollar[id] = str_to_num(valami)
  1257.     }
  1258. }
  1259. public Save_Penz(id) {
  1260.     new szData[128];
  1261.     new steamid[32]; get_user_authid(id, steamid, charsmax(steamid));
  1262.     if(contain(steamid, "_ID_LAN") != -1) get_user_ip(id, steamid, charsmax(steamid), 1);
  1263.    
  1264.     formatex(szData, charsmax(szData), "%i",Dollar[id]);
  1265.     set_data(steamid, szData)
  1266. }
  1267. public plugin_precache(){
  1268.     precache_model("models/els_awpsniper_beta/abstract.mdl")
  1269.     precache_model("models/els_awpsniper_beta/american.mdl")
  1270.     precache_model("models/els_awpsniper_beta/arany.mdl")
  1271.     precache_model("models/els_awpsniper_beta/asiimov.mdl")
  1272.     precache_model("models/els_awpsniper_beta/bloody.mdl")
  1273.     precache_model("models/els_awpsniper_beta/choijiyoonpaint.mdl")
  1274.     precache_model("models/els_awpsniper_beta/dragon.mdl")
  1275.     precache_model("models/els_awpsniper_beta/eagle.mdl")
  1276.     precache_model("models/els_awpsniper_beta/elitebuild.mdl")
  1277.     precache_model("models/els_awpsniper_beta/europa.mdl")
  1278.     precache_model("models/els_awpsniper_beta/feverdream.mdl")
  1279.     precache_model("models/els_awpsniper_beta/galaxy.mdl")
  1280.     precache_model("models/els_awpsniper_beta/grafit.mdl")
  1281.     precache_model("models/els_awpsniper_beta/hawking.mdl")
  1282.     precache_model("models/els_awpsniper_beta/hexo.mdl")
  1283.     precache_model("models/els_awpsniper_beta/magmaa.mdl")
  1284.     precache_model("models/els_awpsniper_beta/malaysia.mdl")
  1285.     precache_model("models/els_awpsniper_beta/medusa.mdl")
  1286.     precache_model("models/els_awpsniper_beta/metal.mdl")
  1287.     precache_model("models/els_awpsniper_beta/phoboss.mdl")
  1288.     precache_model("models/els_awpsniper_beta/pulzus.mdl")
  1289.     precache_model("models/els_awpsniper_beta/raptor.mdl")
  1290.     precache_model("models/els_awpsniper_beta/smoke.mdl")
  1291.     precache_model("models/els_awpsniper_beta/snow.mdl")
  1292.     precache_model("models/els_awpsniper_beta/star.mdl")
  1293.     precache_model("models/els_awpsniper_beta/tiger.mdl")
  1294.     precache_model("models/els_awpsniper_beta/tuz.mdl")
  1295.     precache_model("models/els_awpsniper_beta/wormgod.mdl")
  1296.     precache_model("models/els_awpsniper_beta/Bayonet.mdl")
  1297.     precache_model("models/els_awpsniper_beta/Butterfly_Doppler.mdl")
  1298.     precache_model("models/els_awpsniper_beta/CrimsonWeb.mdl")
  1299.     precache_model("models/els_awpsniper_beta/Flip_TigerTooth.mdl")
  1300.     precache_model("models/els_awpsniper_beta/Karambit_Lore.mdl")
  1301.     precache_model("models/els_awpsniper_beta/M9_Forest_DDPAT.mdl")
  1302.     precache_model("models/els_awpsniper_beta/RedBlue.mdl")
  1303.     precache_model("models/els_awpsniper_beta/Tatto.mdl")
  1304.     precache_model("models/els_awpsniper_beta/limitalt/Butterfly_Magma.mdl")
  1305.     precache_model("models/els_awpsniper_beta/limitalt/FlipFade.mdl")
  1306.     precache_model("models/els_awpsniper_beta/limitalt/Karambit_Doppler.mdl")
  1307.     precache_model("models/els_awpsniper_beta/premium/premium_knife_noel.mdl")
  1308.     precache_model("models/els_awpsniper_beta/premium/premium_wp_h.mdl")
  1309.    
  1310.     precache_sound(g_szSound)
  1311.     g_iLightning = precache_model("sprites/lgtning.spr")
  1312.     g_iSmoke = precache_model("sprites/steam1.spr")
  1313. }
  1314. public plugin_end() {
  1315.     SQL_FreeHandle(g_SqlTuple);
  1316. }
  1317. stock get_data(const key[], data[], len) {
  1318.     new vault = fopen(filename, "rt");
  1319.     new _data[512], _key[64];
  1320.    
  1321.     while( !feof(vault) ) {
  1322.         fgets(vault, _data, charsmax(_data));
  1323.         parse(_data, _key, charsmax(_key), data, len);
  1324.        
  1325.         if( equal(_key, key) ) {
  1326.             fclose(vault);
  1327.             return 1;
  1328.         }
  1329.     }
  1330.    
  1331.     fclose(vault);
  1332.     copy(data, len, "");
  1333.    
  1334.     return 0;
  1335. }
  1336.  
  1337. stock set_data(const key[], const data[]) {
  1338.     static const temp_vault_name[] = "set_data.txt";
  1339.     new file = fopen(temp_vault_name, "wt");
  1340.    
  1341.     new vault = fopen(filename, "rt");
  1342.     new _data[512], _key[64], _other[32];
  1343.     new bool:replaced = false;
  1344.    
  1345.     while( !feof(vault) ) {
  1346.         fgets(vault, _data, charsmax(_data));
  1347.         parse(_data, _key, charsmax(_key), _other, charsmax(_other));
  1348.        
  1349.         if( equal(_key, key) && !replaced ) {
  1350.             fprintf(file, "^"%s^" ^"%s^"^n", key, data);
  1351.            
  1352.             replaced = true;
  1353.         }
  1354.         else {
  1355.             fputs(file, _data);
  1356.         }
  1357.     }
  1358.    
  1359.     if( !replaced ) {
  1360.         fprintf(file, "^"%s^" ^"%s^"^n", key, data);
  1361.     }
  1362.    
  1363.     fclose(file);
  1364.     fclose(vault);
  1365.    
  1366.     delete_file(filename);
  1367.    
  1368.     while( !rename_file(temp_vault_name, filename, 1) ) { }
  1369.    
  1370.     //delete_file(temp_vault_name);
  1371. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement