HLMOD.HU Forrás Megtekintés - www.hlmod.hu
  1. /*
  2.   Fordította: BBk
  3. */
  4.  
  5. #include <sourcemod>
  6.  
  7. public Plugin:myinfo =
  8. {
  9. name = "No Block",
  10. author = "sslice",
  11. description = "Removes player collisions...useful for mod-tastic servers running surf maps, etc.",
  12. version = "1.0.0.0",
  13. url = "http://www.steamfriends.com/"
  14. };
  15.  
  16. new g_offsCollisionGroup;
  17. new bool:g_isHooked;
  18. new Handle:sm_noblock;
  19.  
  20. public OnPluginStart()
  21. {
  22. g_offsCollisionGroup = FindSendPropOffs("CBaseEntity", "m_CollisionGroup");
  23. if (g_offsCollisionGroup == -1)
  24. {
  25. g_isHooked = false;
  26. PrintToServer("* FATAL ERROR: Nem sikerult ellensulyozni a CBaseEntity::m_CollisionGroup erteket");
  27. }
  28. else
  29. {
  30. g_isHooked = true;
  31. HookEvent("player_spawn", OnSpawn, EventHookMode_Post);
  32.  
  33. sm_noblock = CreateConVar("sm_noblock", "1", "Eltavolitja a jatekos vs. jatekos blokkolast", FCVAR_PLUGIN|FCVAR_NOTIFY|FCVAR_REPLICATED);
  34. HookConVarChange(sm_noblock, OnConVarChange);
  35. }
  36. }
  37.  
  38. public OnConVarChange(Handle:convar, const String:oldValue[], const String:newValue[])
  39. {
  40. new value = !!StringToInt(newValue);
  41. if (value == 0)
  42. {
  43. if (g_isHooked == true)
  44. {
  45. g_isHooked = false;
  46.  
  47. UnhookEvent("player_spawn", OnSpawn, EventHookMode_Post);
  48. }
  49. }
  50. else
  51. {
  52. g_isHooked = true;
  53.  
  54. HookEvent("player_spawn", OnSpawn, EventHookMode_Post);
  55. }
  56. }
  57.  
  58. public OnSpawn(Handle:event, const String:name[], bool:dontBroadcast)
  59. {
  60. new userid = GetEventInt(event, "userid");
  61. new entity = GetClientOfUserId(userid);
  62.  
  63. SetEntData(entity, g_offsCollisionGroup, 2, 4, true);
  64. }
  65.