MG = MG or {}

MG.AntiSpam = true

MG.AntiSpamFraction = 3
MG.AntiSpamPropsFreeze = 4
MG.AntiSpamPropsRemove = 10
MG.AntiSpamPropsMaxTime = 25

MG.AntiSpamBigPropsTime = 1
MG.AntiSpamBigPropsSize = 1000000

MG.FreezeEntitiesOnServerLag = true
MG.FreezePenetratingProps = true
MG.UnfreezePhysicsPenetratingEntities = true
MG.UnfreezePenetratingEntitiesNextAllowed = 3
MG.MaxLongs = 5
MG.Sensitivity = 10
MG.FreezeDelay = 1
MG.FreezeMapEntities = true
MG.FreezeLaggingMapEntities = true
MG.ClearPhysicsObjects = true
MG.FreezeSpecificEntities = false
MG.FreezeSpecificEntitiesTimer = 600
MG.FreezeUnusedEntities = true
MG.FreezeFrequency = 1.15
MG.FreezeUnusedEntitiesTimer = 90
MG.EnableMotionWorkaround = true

MG.ConstraintCrashWorkaround = true

MG.EnableAntiPropMinge = true
MG.GhostAllEntities = true
MG.UseWhitelist = false
MG.OnlyGhostPropsOnSpawn = false
MG.OnlyGhostPlayerStuff = true
MG.OwnedCheck = function(ent)
	if (ent.CPPIGetOwner and IsValid(ent:CPPIGetOwner()) and ent:CPPIGetOwner():IsPlayer()) or (ent.Getowning_ent and IsValid(ent:Getowning_ent()) and ent:Getowning_ent():IsPlayer()) then
		return true
	else
		return false
	end
end
MG.CollideWithEntities = false
MG.BlockToolsOnGhostEntities = false
MG.AllowWeldWorkaround = true
MG.AllowCollideWorkaround = true
MG.DisableColorOnGhostProps = true
MG.DisableFreezeInsideVehicles = false

MG.EnableGhostingCommands = true
MG.EnableFreezeCommand = false

MG.BlockBigSizeProps_FPP = true
MG.MinimumPropSize_FPP = 10000000

MG.DisableEntityDamage = false
MG.DisableVehicleDamage = false
MG.DisableVehicleCollision = false
MG.DisableCrushDamage = false

MG.CheckForStuckingProps = true
MG.MaxStuckingProps = 20
MG.StuckingPropsRadius = 0.65
MG.RemoveStuckingProps = true
MG.WarnPlayer = true

MG.AllowPhysgunReload = false
MG.AllowPhysgunOnWorld = false
MG.AllowToolgunOnWorld = false
MG.AllowPropertyOnWorld = false

MG.UseNWBools = false
MG.DarkRPNotifications = true

MG.MingeEntities = {
	["prop_physics"] = true,
	["prop_physics_multiplayer"] = true,

	["gmod_balloon"] = true,
	["gmod_button"] = true,
	["gmod_thruster"] = true,
	["gmod_light"] = true,
	["gmod_lamp"] = true,
	["gmod_wheel"] = true,
	["gmod_hoverball"] = true,

	["keypad"] = true,
	["textscreen"] = true,
	["bell"] = true,
	["money_pot"] = true,

	["metal_detector"] = true,
	["donation_box"] = true,
	["protect_terminal"] = true,
	["protect_camera"] = true,
	["protect_scanner"] = true,
	["wdj_mastercontroller"] = true,
	["wdj_radio"] = true,

	["darkrp_laws"] = true,
	["glorifiedbanking_cardreader"] = true,
}

MG.AllowedTools = {
}

MG.EntityFreezeList = {
	["prop_physics"] = true,
	["prop_physics_multiplayer"] = true
}

MG.EntityPhysList = {
	["prop_physics"] = true,
	["prop_physics_multiplayer"] = true,
	["func_physbox"] = true
}

MG.EntityDamageBlockList = {
}

MG.ProtectGroups = {
	["owner"] = true,
	["stellv. owner"] = true,
	["infrastrukturadmin"] = true,
	["community-manager"] = true,
	["teamleiter"] = true,
	["developer"] = true,
	["superadmin_vip"] = true,
	["superadmin"] = true,
	["admin_vip"] = true,
	["admin"] = true
}

MG.FreezeGroups = {
	["owner"] = true,
	["stellv. owner"] = true,
	["infrastrukturadmin"] = true,
	["community-manager"] = true,
	["teamleiter"] = true,
	["developer"] = true,
	["superadmin_vip"] = true,
	["superadmin"] = true,
	["admin_vip"] = true,
	["admin"] = true
}

MG.LanguageStrings = {
	stuck = "Ein Spieler steckt in diesem Prop fest!",
	blocked = "Dieses Prop ist nun geblockt, danke!",
	stack = "Bitte stecke nicht mehr als %s Props ineinander!",
	unprotected = "Dieses Prop ist nicht länger geschützt.",
	protected = "Dieses Prop ist nun wieder geschützt.",
	ghostdeac = "Ghosting deaktivieren",
	ghostac = "Ghosting aktivieren",
	unfreeze = "Bitte entfriere dieses Prop zuerst!",
	wait = "Bitte warte, bevor du erneut ein Prop spawnst!",
	waitbig = "Bitte warte, bevor du erneut ein großes Prop spawnst!",
	spam = "Prop aufgrund von Spam eingefroren.",
}