FlacoBey

Untitled

Jan 9th, 2019
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.33 KB | None | 0 0
  1. #include <sourcemod>
  2. #include <sdkhooks>
  3. #include <sdktools>
  4.  
  5. char sDataFilePath[PLATFORM_MAX_PATH];
  6.  
  7. public OnPluginStart()
  8. {
  9.    
  10.     BuildPath(Path_SM, sDataFilePath, sizeof(sDataFilePath), "data/weapons_speed.ini");
  11.     if (!FileExists(sDataFilePath))
  12.     {
  13.         new Handle:open_path = OpenFile(sDataFilePath, "w");
  14.         WriteFileLine(open_path, "");
  15.         CloseHandle(open_path);
  16.         PrintToServer("Error Code: WSP-EC-01A");
  17.         KvWriteToFile(sDataFilePath);
  18.     }
  19. }
  20.  
  21. public OnMapStart()
  22. {
  23.     CreateTimer(15.0, TimerOut2, _, TIMER_FLAG_NO_MAPCHANGE);
  24. }
  25.  
  26. public Action TimerOut2(Handle timer, fuck)
  27. {
  28.     CreateTimer(1.0, TimerOut, _, TIMER_REPEAT);
  29. }
  30.  
  31. public Action TimerOut(Handle timer, fuck)
  32. {
  33.     for(int i = 1; i <= MaxClients; ++i)
  34.     {
  35.         if(bIsSurvivor(i))
  36.         {
  37.             KeyValues kv = new KeyValues("speed_modifier");
  38.             if (kv.ImportFromFile(sDataFilePath))
  39.             {
  40.                 new priWeapon = GetPlayerWeaponSlot(i, 0);
  41.                 if (!IsValidEntity(priWeapon))
  42.                 {
  43.                     SetEntPropFloat(i, Prop_Data, "m_flLaggedMovementValue", 1.0);
  44.                     SetEntityGravity(i, 1.0);
  45.                 }
  46.                 if(IsValidClient(i))
  47.                 {
  48.                     decl String:sWeaponEx[32];
  49.                     GetEntityClassname(priWeapon, sWeaponEx, sizeof(sWeaponEx));
  50.                     if (KvJumpToKey(kv, sWeaponEx, true))
  51.                     {
  52.                         float num = KvGetFloat(kv, "speed", 1.0);
  53.                         float gravity = KvGetFloat(kv, "gravity", 1.0);
  54.                         SetEntPropFloat(i, Prop_Data, "m_flLaggedMovementValue", num);
  55.                         SetEntityGravity(i, gravity)
  56.                     }
  57.                 }
  58.             }
  59.         }
  60.     }
  61.     return Plugin_Continue;
  62. }
  63.  
  64. void KvWriteToFile(const char[] path)
  65. {
  66.     KeyValues kv = new KeyValues("speed_modifier");
  67.     kv.SetFloat("weapon_autoshotgun/speed", 1.0);
  68.     kv.SetFloat("weapon_hunting_rifle/speed", 1.0);
  69.     kv.SetFloat("weapon_pistol/speed", 1.0);
  70.     kv.SetFloat("weapon_rifle_ak47/speed", 1.0);
  71.     kv.SetFloat("weapon_rifle/speed", 1.0);
  72.     kv.SetFloat("weapon_pumpshotgun/speed", 1.0);
  73.     kv.SetFloat("weapon_sniper_awp/speed", 1.0);
  74.     kv.SetFloat("weapon_shotgun_chrome/speed", 1.0);
  75.     kv.SetFloat("weapon_pistol_magnum/speed", 1.0);
  76.     kv.SetFloat("weapon_shotgun_spas/speed", 1.0);
  77.     kv.SetFloat("weapon_smg/speed", 1.0);
  78.     kv.SetFloat("weapon_smg_mp5/speed", 1.0);
  79.     kv.SetFloat("weapon_smg_silenced/speed", 1.0);
  80.     kv.SetFloat("weapon_sniper_military/speed", 1.0);
  81.     kv.SetFloat("weapon_rifle_sg552/speed", 1.0);
  82.     kv.SetFloat("weapon_sniper_scout/speed", 1.0);
  83.     kv.SetFloat("weapon_rifle_m60/speed", 1.0);
  84.     kv.SetFloat("weapon_rifle_desert/speed", 1.0);
  85.    
  86.     kv.SetFloat("weapon_autoshotgun/gravity", 1.0);
  87.     kv.SetFloat("weapon_hunting_rifle/gravity", 1.0);
  88.     kv.SetFloat("weapon_pistol/gravity", 1.0);
  89.     kv.SetFloat("weapon_rifle_ak47/gravity", 1.0);
  90.     kv.SetFloat("weapon_rifle/gravity", 1.0);
  91.     kv.SetFloat("weapon_pumpshotgun/gravity", 1.0);
  92.     kv.SetFloat("weapon_sniper_awp/gravity", 1.0);
  93.     kv.SetFloat("weapon_shotgun_chrome/gravity", 1.0);
  94.     kv.SetFloat("weapon_pistol_magnum/gravity", 1.0);
  95.     kv.SetFloat("weapon_shotgun_spas/gravity", 1.0);
  96.     kv.SetFloat("weapon_smg/gravity", 1.0);
  97.     kv.SetFloat("weapon_smg_mp5/gravity", 1.0);
  98.     kv.SetFloat("weapon_smg_silenced/gravity", 1.0);
  99.     kv.SetFloat("weapon_sniper_military/gravity", 1.0);
  100.     kv.SetFloat("weapon_rifle_sg552/gravity", 1.0);
  101.     kv.SetFloat("weapon_sniper_scout/gravity", 1.0);
  102.     kv.SetFloat("weapon_rifle_m60/gravity", 1.0);
  103.     kv.SetFloat("weapon_rifle_desert/gravity", 1.0);
  104.     kv.ExportToFile(path);
  105.    
  106.     delete kv;
  107. }
  108.  
  109. stock bool:IsValidClient( client )
  110. {
  111.     if ( client < 1 || client > MaxClients ) return false;
  112.     if ( !IsClientConnected( client )) return false;
  113.     if ( !IsClientInGame( client )) return false;
  114.     if ( GetClientTeam( client ) != 2 ) return false;
  115.     if ( !IsPlayerAlive( client )) return false;
  116.     return true;
  117. }
  118.  
  119. stock bool bIsSurvivor(int client)
  120. {
  121.     return client > 0 && client <= MaxClients && IsClientInGame(client) && GetClientTeam(client) == 2 && !IsClientInKickQueue(client) && IsPlayerAlive(client);
  122. }
Advertisement
Add Comment
Please, Sign In to add comment