PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : S.w.e.p. Spawn Only For Admin



ghostrider
12.10.2006, 14:33
Hallo zusammen,
Ich suche da eine Lua datei womit NUR DER ADMIN waffen SWEPen kann und nicht die leute wo auf meinen Server rein kommen also auf deutsch gesagt ich suche ein ONLY ADMIN SWEP ding bums lua datei^^

€r!k
12.10.2006, 15:18
Ich auch. währe dankbar für ein ordetnliches und übersichtliches Adminmenü.

Locou
12.10.2006, 15:18
Also hast du ULib, oder ULX?
Wenn du ULib hast dann musst du einfach lua/init/swep_menu.lua öffenen.
Danach alles löschen und durch


-- SWEP menu, Garry Newman 2005
--
-- To disable this menu just change Enabled to false below.
--
--
assert( _file.Exists( "lua/ULib/init.lua" ), "<Insert script name> needs ULib to run!" )
_OpenScript( "ULib/init.lua" )
assert( ULib.VERSION >= 1, "<Insert script name> requires ULib version 1 or higher to run!" ) -- Insert what version you want in place of 1

g_SWEPMenu = {}
g_SWEPMenu.Enabled = true
g_SWEPMenu.MenuTitle = "SWEP Weapons"
g_SWEPMenu.SpawnRate = 3.0
g_SWEPMenu.Players = {}
g_SWEPMenu.ShowCategories = true
g_SWEPMenu.ExcludeFolders = { ".",
"..",
"football",
"build",
"hideandseek" }

if (g_SWEPMenu.Enabled) then

g_SWEPs = {}

function AddSWEPToMenu( category, name, filepath )

-- Strip some crap from the weapon names..
--name = string.gsub(name, "weapon_", "")
--name = string.gsub(name, "tpc_", "")
name = string.gsub(name, ".lua", "")

filepath = string.gsub(filepath, "lua/weapons/", "")
filepath = string.gsub(filepath, ".lua", "")

local tWeapon = {}
tWeapon.category = category;
tWeapon.name = name;
tWeapon.filename = filepath;

table.insert( g_SWEPs, tWeapon );

end


function ProcessSWEPFolder( k, name )

for i=1, table.getn(g_SWEPMenu.ExcludeFolders) do
if (g_SWEPMenu.ExcludeFolders[i] == name) then
return;
end
end

local FileName = "lua/weapons/" .. name ;
if (_file.IsDir(FileName) == false) then return end;

local tFiles = _file.Find( FileName .. "/*.lua" );

for i=1, table.getn(tFiles) do

AddSWEPToMenu( name, tFiles[i], FileName .."/".. tFiles[i] );

end

end


function PopulateSWEPList()

local tFiles = _file.Find( "lua/weapons/*" );
table.foreach( tFiles, ProcessSWEPFolder );

end


function PlayerSendSWEPMenu( iPlayer )

if (iPlayer==0) then return end;
if (_GetRule( "AllowObjectSpawning" )==false) then return; end;

local LastCat = ""

-- Set up this player's settings
g_SWEPMenu.Players[iPlayer] = {}
g_SWEPMenu.Players[iPlayer].NextSpawn = 0

for i=1, table.getn(g_SWEPs) do

if ( LastCat ~= g_SWEPs[i].category and g_SWEPMenu.ShowCategories ) then
_spawnmenu.AddItem( iPlayer, g_SWEPMenu.MenuTitle, "@" .. g_SWEPs[i].category, "" );
LastCat = g_SWEPs[i].category
end

_spawnmenu.AddItem( iPlayer, g_SWEPMenu.MenuTitle, "+" .. g_SWEPs[i].name, "SWEPSpawn " .. g_SWEPs[i].filename );

end

end


function cc_SpawnSWEP( iPlayer, strFilename )

-- Time between spawns.
if ( g_SWEPMenu.Players[iPlayer].NextSpawn > _CurTime() and _MaxPlayers() > 1 ) then
return;
end

if ( _GetRule( "AllowObjectSpawning" )==false ) then return end;
if ( _file.Exists( "lua/weapons/" .. strFilename .. ".lua" ) == false ) then return end;
if ( not _PlayerInfo( iPlayer, "alive") ) then return end;

-- Make sure this is in our spawnables list
local bFound = false;
for i=1, table.getn(g_SWEPs) do
if ( g_SWEPs[i].filename == strFilename ) then bFound = true; end;
end
if ( not bFound ) then return end;


PlayerLookTrace( iPlayer, 200 );
if ( _TraceHit() == false ) then return end;

local vSpawnPos = _TraceEndPos();
local vNormal = _TraceGetSurfaceNormal();

vSpawnPos = vecAdd( vSpawnPos, vecMul( vNormal, 50 ) )

local iEnt = _EntCreate( "weapon_swep" )
_EntSetPos( iEnt, vSpawnPos )
_EntSetKeyValue( iEnt, "Script", strFilename )
_EntSpawn( iEnt )
_util.DropToFloor( iEnt )


g_SWEPMenu.Players[iPlayer].NextSpawn = _CurTime() + g_SWEPMenu.SpawnRate;

end


PopulateSWEPList();
HookEvent( "eventPlayerInitialSpawn", PlayerSendSWEPMenu );
ULib.CONCOMMAND( "SWEPSpawn", cc_SpawnSWEP, "Spawn SWEP weapon; Syntax: <filename>", ACCESS_RESERVATION);

end
erstetzen. Fertig.

Obwohl manche die Waffen spawnen können, können Sie die Waffen nicht aufheben. :D

ghostrider
12.10.2006, 15:59
ich habe ULX denke ich ^^:lol: