PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Alpha 255



A.I.
11.03.2008, 18:51
Hallo..

wäre es möglich ein Serverscript für Admins zu erstellen, dass alle unsichtbaren
Props (die Spieler erstellt haben) per Knopfdruck anzeigen lässt bzw. in ihren
Originalzustand zurück bringt? Und so, dass man mit Prop Protection keine
Probleme hat?

Wäre echt nützlich, wenn einige Spieler was zu verheimlichen haben.:)

ossijunior
11.03.2008, 21:15
wenn das überhaupt geht, denke ich, dass es nur für alle sichtbar wird, aber ich kann dir nichts versichern beschäftige mich noch nicht lange mit solchen sachen.

mfg Ossijunior

Lucid
11.03.2008, 21:54
Das gab irgendwo mal nen clientseitiges script mit dem man alle unsichtbaren props sichtbar machen konnte
aber nur fuer sich selber halt

ich suchs mal :gmod:

A.I.
11.03.2008, 22:14
Das gab irgendwo mal nen clientseitiges script mit dem man alle unsichtbaren props sichtbar machen konnte
aber nur fuer sich selber halt

ich suchs mal :gmod:

Für sich selber, wäre besser.

Lucid
11.03.2008, 22:27
Gefunden :gmod:

Bei "Jakes ClientSide Script Collection" war das mal dabei... hab ich oft frueher benutzt, ka ob das noch geht

http://archive.facepunchstudios.com/showthread/?id=324000

computer22
12.03.2008, 12:15
Wäre nett wenn mir einer sagen könnte ob das ding noch geht :P [Oder ich probier es heute abend selbst]

Lg
Comp

Lucid
12.03.2008, 12:23
Ich hab' das Script mal rausgenommen und zurechtgebastelt...
Erstellt in <Garry's Mod Install location>\garrysmod\lua\autorun\client\ eine .lua datei und kopiert den code von unten da rein
dann gebt "showinvis" in die konsole ein zum toggeln der funktion :)


if (not CLIENT) then return end

ShowInvisLoaded = true
local InvisProps = {}
local showing = false

local function GetAlpha(ent)
if (not ent) or (not ent:IsValid()) then return end
_, _, _, alpha = ent:GetColor()
return alpha
end

local function HasHasInvisMaterialerial(ent)
if (not ent) or (not ent:IsValid()) then return end
if (ent:GetMaterial() == "sprites/heatwave") or (ent:GetMaterial() == "models/effects/vol_light001") then
return true
end
return false
end

local function showprops(pl, cmd, args)
if (showing) then
for k, v in pairs(InvisProps) do
v[1]:Remove()
end
InvisProps = {}

showing = false
return
else
findhidden()
showing = true
end
concommand.Add("showinvis", showprops)

function findhidden()
for i=1,1000 do
local ent = ents.GetByIndex(i)
local ID = i
if (not InvisProps[ID]) and (ent) and (ent:IsValid()) and (ent ~= LocalPlayer()) and (ent:GetModel()) and (not ent:IsWeapon())) then
if (GetAlpha(ent) < 10) or (HasInvisMaterial(ent)) then
local newent = ents.Create("prop_physics")
if (newent) and (newent:IsValid()) then
newent:SetModel(ent:GetModel())
newent:SetPos(ent:GetPos())
newent:SetAngles(ent:GetAngles())
newent:SetColor(255, 255, 255, 180)
AddWorldTip(ID, "Here!", 3, newent:GetPos(), newent)
InvisProps[ID] = {newent, ent}
end
end
end
end
end

local nextupdate = 0
local function updateprops()
if (not showing) then return end
if(CurTime() > nextupdate) then
findhidden()
nextupdate = CurTime()+5
end
for k, v in pairs(InvisProps) do
if (v[2]:IsValid()) and (GetAlpha(v[2]) < 10) or (HasInvisMaterial(v[2])) then
v[1]:SetPos(v[2]:GetPos())
v[1]:SetAngles(v[2]:GetAngles())
if (GetAlpha(v[2]) == 0) and (LocalPlayer():GetEyeTrace().Entity == v[2]) and (EyePos():Distance(v[2]:GetPos()) < 512) then
if(v[2].GetOverlayText and v[2]:GetOverlayText() ~= "") then
AddWorldTip(v[2]:EntIndex(), v[2]:GetOverlayText(), 0.5, v[2]:GetPos(), v[1])
end
end
else
v[1]:Remove()
InvisProps[k] = nil
end
end
end
hook.Add("HUDPaint", "updateprops", updateprops)

computer22
12.03.2008, 12:54
Vielen dank, sehr nice :)

Lg
Comp

A.I.
12.03.2008, 19:12
Ich hab' das Script mal rausgenommen und zurechtgebastelt...
Erstellt in garrysmod/garrysmod/lua/ eine .lua datei und kopiert den code von unten da rein
dann oeffnet ihr das ganze mit lua_openscript_cl datei.lua und gebt "showinvis" in die konsole ein zum toggeln der funktion


Wieso nicht gleich ins "autorun"-Ordner?

Lucid
13.03.2008, 11:13
Wieso nicht gleich ins "autorun"-Ordner?

weil ich mein gmod neu installiert hatte und mir der name entfallen war :gmod:
ich editiere den post gleich ;)