Duplicator/advanced duplicator restriction

Faites des propositions pour améliorer le site ou les serveurs.
Répondre
gbfree
Mini-flooder
Messages : 609
Inscription : 14 janv. 2011, 19:48
Steam ID : guillaume free
Localisation : Aquitaine

Duplicator/advanced duplicator restriction

Message par gbfree »

Suites a divers problèmes (duplication d'armoire, de téléporteurs, de machines a café, d'argent, etc etc..) je propose l'ajout de ceci (c'est un autorun serveur).

Cela a pour effet : d’empêcher la duplication pour tous et l'advanced duplication pour les non admin de :
toutes les entités ayant une classe interdite : dans ForbidenClass avec "classe"=true,
toutes les entités ayant un mot interdit dans leur classe : dans ForbidenKeyWord avec "mot clef",

Code : Tout sélectionner

-- DEBUT CONFIG
local ForbidenClass = {"gmod_dynamite"=true, 
"gmod_wire_detonator" = true, 
"gmod_wire_explosive" = true,
"gmod_wire_igniter" = true, 
"gmod_wire_simple_explosive" = true, 
"gmod_wire_teleporter" = true, 
"darkrp_cheque" = true,
"microwave" = true,
} -- entités interdites

local ForbidenKeyWord = {"shipment","spawned_food","weapon","ammo","money"} -- mots interdits dans la classe de l'entité

-- FIN CONFIG


AdvDupe.GBOldCheckOkEnt =  AdvDupe.CheckOkEnt

AdvDupe.CheckOkEnt= function(Player, EntTable)
	if not AdvDupe.GBOldCheckOkEnt(Player, EntTable) then 
		return false
	end
	if Player:IsAdmin() then 
		return true
	end
	if ForbidenClass[class] then
		return false
	end

	for _,keyword in AllowedKeyWord do
		if (string.find(class,keyword,0, true)) then
			return false
		end
	end
	return true
end

duplicator.GBOldIsAllowed =  duplicator.IsAllowed

duplicator.IsAllowed= function(class)
	if not duplicator.GBOldIsAllowed(class) then 
		return false
	end
	if ForbidenClass[class] then
		return false
	end

	for _,keyword in AllowedKeyWord do
		if (string.find(class,keyword,0, true)) then
			return false
		end
	end
	return true
end
Note penser a y ajouter avant de le mettre :
les entités armoire, ballon, trucs de plops etc..
sent_ball aussi
Dernière modification par gbfree le 25 oct. 2014, 15:22, modifié 3 fois.
"Be careful! Focus 20% of our attention on the enemy and 80% on our allies at the back!!"
Yoshii (Baka to Test)

Say . . . why do people die anyway?” he asked.
Because you kill them.
Zaregoto

Image
Image
SOLID
Bavard
Messages : 198
Inscription : 12 nov. 2010, 16:58
Nom RP : Mohammed Dupont
Steam ID : solid985

Re: Duplicator/advanced duplicator restriction

Message par SOLID »

-- DEBUT CONFIT
local ForbidenClass = {"gmod_dynamite"=true,
"gmod_wire_detonator" = true,
"gmod_wire_explosive" = true,
"gmod_wire_igniter" = true,
"gmod_wire_simple_explosive" = true,
"gmod_wire_teleporter" = true,
"gmod_wire_teleporter" = true,
"gmod_wire_teleporter" = true,

"darkrp_cheque" = true,
"microwave" = true,
} -- entités interdites

------------------------------------------------------------------------------------

?
"Les admin cé dé pd"
- Mohammed Dupont

Un jour, un grand homme a dit :
Si je devais mettre ma maturite sur 10 :
9
Image
gbfree
Mini-flooder
Messages : 609
Inscription : 14 janv. 2011, 19:48
Steam ID : guillaume free
Localisation : Aquitaine

Re: Duplicator/advanced duplicator restriction

Message par gbfree »

SOLID a écrit : "gmod_wire_teleporter" = true,
"gmod_wire_teleporter" = true,
"gmod_wire_teleporter" = true,


------------------------------------------------------------------------------------

?
Hmm.. marre des tp. Sinon juste moi qui ais fais des ctrl-v en trop
"Be careful! Focus 20% of our attention on the enemy and 80% on our allies at the back!!"
Yoshii (Baka to Test)

Say . . . why do people die anyway?” he asked.
Because you kill them.
Zaregoto

Image
Image
Mister.Plop
Capitaine des flooder
Messages : 3321
Inscription : 10 août 2012, 02:20
Localisation : Dans le placard de ta soeur...

Re: Duplicator/advanced duplicator restriction

Message par Mister.Plop »

Je vous aime des fois..
Répondre