mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-17 13:53:45 +03:00
Upload
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
--[[
|
||||
| This file was obtained through the combined efforts
|
||||
| of Madbluntz & Plymouth Antiquarian Society.
|
||||
|
|
||||
| Credits: lifestorm, Gregory Wayne Rossel JR.,
|
||||
| Maloy, DrPepper10 @ RIP, Atle!
|
||||
|
|
||||
| Visit for more: https://plymouth.thetwilightzone.ru/
|
||||
--]]
|
||||
|
||||
|
||||
TOOL.Category = "LVS"
|
||||
TOOL.Name = "#tool.lvshealthshieldeditor.name"
|
||||
TOOL.Command = nil
|
||||
TOOL.ConfigName = ""
|
||||
|
||||
TOOL.ClientConVar[ "maxshield" ] = 0
|
||||
TOOL.ClientConVar[ "maxhealth" ] = 5000
|
||||
|
||||
if CLIENT then
|
||||
language.Add( "tool.lvshealthshieldeditor.name", "Max Health & Shield Editor" )
|
||||
language.Add( "tool.lvshealthshieldeditor.desc", "A tool used to edit Max Health & Shield on LVS-Vehicles" )
|
||||
language.Add( "tool.lvshealthshieldeditor.0", "Left click on a LVS-Vehicle to set Max Health, Right click to set Max Shield, Reload to reset." )
|
||||
language.Add( "tool.lvshealthshieldeditor.1", "Left click on a LVS-Vehicle to set Max Health, Right click to set Max Shield, Reload to reset." )
|
||||
language.Add( "tool.lvshealthshieldeditor.maxshield", "Max Shield" )
|
||||
language.Add( "tool.lvshealthshieldeditor.maxhealth", "Max Health" )
|
||||
end
|
||||
|
||||
function TOOL:LeftClick( trace )
|
||||
local ent = trace.Entity
|
||||
|
||||
if not IsValid( ent ) then return false end
|
||||
|
||||
if not ent.LVS and not ent.LFS then return end
|
||||
|
||||
if not ent.OGMaxHealth then
|
||||
ent.OGMaxHealth = ent.MaxHealth
|
||||
end
|
||||
|
||||
ent.MaxHealth = self:GetClientNumber( "maxhealth" )
|
||||
ent:SetHP( ent.MaxHealth )
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
function TOOL:RightClick( trace )
|
||||
local ent = trace.Entity
|
||||
|
||||
if not IsValid( ent ) then return false end
|
||||
|
||||
if not ent.LVS and not ent.LFS then return end
|
||||
|
||||
if not ent.OGMaxShield then
|
||||
ent.OGMaxShield = ent.MaxShield
|
||||
end
|
||||
|
||||
ent.MaxShield = self:GetClientNumber( "maxshield" )
|
||||
ent:SetShield( ent.MaxShield )
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
function TOOL:Reload( trace )
|
||||
local ent = trace.Entity
|
||||
|
||||
if not IsValid( ent ) then return false end
|
||||
|
||||
if not ent.LVS and not ent.LFS then return end
|
||||
|
||||
if ent.OGMaxHealth then
|
||||
ent.MaxHealth = ent.OGMaxHealth
|
||||
end
|
||||
|
||||
if ent.OGMaxShield then
|
||||
ent.MaxShield = ent.OGMaxShield
|
||||
end
|
||||
|
||||
ent:SetHP( ent.MaxHealth )
|
||||
ent:SetShield( ent.MaxShield )
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
function TOOL:Think()
|
||||
if SERVER then return end
|
||||
|
||||
local ply = LocalPlayer()
|
||||
local tr = ply:GetEyeTrace()
|
||||
|
||||
local ent = tr.Entity
|
||||
if not IsValid( ent ) then return end
|
||||
|
||||
if not ent.LVS and not ent.LFS then return end
|
||||
|
||||
local Text = "Health: "..tostring( math.Round( ent:GetHP(), 0 ) ).."/"..tostring( ent.MaxHealth )
|
||||
if ent:GetShield() > 0 then
|
||||
Text = Text.."\nShield: "..tostring( math.Round( ent:GetShield(), 0 ) ).."/"..tostring( ent.MaxShield )
|
||||
end
|
||||
|
||||
AddWorldTip( ent:EntIndex(), Text, SysTime() + 0.05, ent:GetPos(), ent )
|
||||
end
|
||||
|
||||
function TOOL.BuildCPanel( panel )
|
||||
panel:AddControl( "Header", { Text = "#tool.lvshealthshieldeditor.name", Description = "#tool.lvshealthshieldeditor.desc" } )
|
||||
|
||||
panel:AddControl( "Slider",
|
||||
{
|
||||
Label = "#tool.lvshealthshieldeditor.maxhealth",
|
||||
Type = "Int",
|
||||
Min = "1",
|
||||
Max = "50000",
|
||||
Command = "lvshealthshieldeditor_maxhealth",
|
||||
Help = false
|
||||
})
|
||||
|
||||
panel:AddControl( "Slider",
|
||||
{
|
||||
Label = "#tool.lvshealthshieldeditor.maxshield",
|
||||
Type = "Int",
|
||||
Min = "0",
|
||||
Max = "50000",
|
||||
Command = "lvshealthshieldeditor_maxshield",
|
||||
Help = false
|
||||
})
|
||||
|
||||
panel:AddControl( "Label", { Text = "NOTE: Value in Edit-Properties menu will still be the same, because they can not be updated after the vehicle is spawned!" } )
|
||||
end
|
||||
Reference in New Issue
Block a user