mirror of
https://github.com/lifestorm/wnsrc.git
synced 2025-12-17 21:53:46 +03:00
Upload
This commit is contained in:
@@ -0,0 +1,436 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
local surface = surface
|
||||
local derma = derma
|
||||
local string = string
|
||||
local hook = hook
|
||||
local math = math
|
||||
local table = table
|
||||
local ipairs = ipairs
|
||||
local IsValid = IsValid
|
||||
local ix = ix
|
||||
local CAMI = CAMI
|
||||
local Derma_StringRequest = Derma_StringRequest
|
||||
local net = net
|
||||
|
||||
|
||||
ITEM.base = "base_outfit"
|
||||
ITEM.name = "Combine Suit Base"
|
||||
ITEM.description = "A base for Combine Suit functionality"
|
||||
ITEM.category = "Combine"
|
||||
|
||||
ITEM.maxArmor = 60
|
||||
ITEM.repairItem = "tool_repair"
|
||||
|
||||
ITEM.isRadio = true
|
||||
|
||||
if (CLIENT) then
|
||||
function ITEM:PaintOver(item, w, h)
|
||||
if (item:GetData("equip")) then
|
||||
surface.SetDrawColor(110, 255, 110, 100)
|
||||
surface.DrawOutlinedRect(1, 1, w - 2, h - 2)
|
||||
end
|
||||
|
||||
if (item:GetData("suitActive")) then
|
||||
surface.SetDrawColor(110, 255, 110, 100)
|
||||
surface.DrawRect(w - 14, h - 14, 8, 8)
|
||||
end
|
||||
end
|
||||
|
||||
function ITEM:PopulateTooltip(tooltip)
|
||||
local panel = tooltip:AddRowAfter("name", "armor")
|
||||
panel:SetBackgroundColor(derma.GetColor("Warning", tooltip))
|
||||
panel:SetText("Armure : " .. (self:GetData("equip") and LocalPlayer():Armor() or self:GetData("armor", self.maxArmor)))
|
||||
panel:SizeToContents()
|
||||
|
||||
panel = tooltip:AddRowAfter("armor", "name")
|
||||
panel:SetBackgroundColor(derma.GetColor("info", tooltip))
|
||||
panel:SetText("Nom : " .. self:GetData("ownerName", "INCONNU"))
|
||||
panel:SizeToContents()
|
||||
end
|
||||
end
|
||||
|
||||
function ITEM:GetChannels(bForce)
|
||||
if ((bForce or self:GetData("suitActive") != false) and self.channels) then
|
||||
return self.channels
|
||||
else
|
||||
return {}
|
||||
end
|
||||
end
|
||||
|
||||
function ITEM:CanEquipOutfit(client)
|
||||
local player = self.player or client
|
||||
local suit = player:GetCharacter():GetCombineSuit()
|
||||
if (suit and ix.item.instances[suit] and ix.item.instances[suit] != self) then
|
||||
return false
|
||||
end
|
||||
|
||||
return true
|
||||
end
|
||||
|
||||
function ITEM:OnGetReplacement(client)
|
||||
local player = self.player or client
|
||||
if (self.replacement) then
|
||||
return self.replacement
|
||||
elseif (self.replacementString) then
|
||||
local model = "models/"..self.replacementString..string.match(player:GetModel(), "/%a+_?%d%d%.mdl$")
|
||||
if (string.find(model, "/male%d%d")) then
|
||||
model = string.gsub(model, "/male[01]", {["/male0"] = "/male_0", ["/male_1"] = "/male_1"}, 1)
|
||||
end
|
||||
return model
|
||||
end
|
||||
end
|
||||
|
||||
function ITEM:OnEquipped(client)
|
||||
local character = client:GetCharacter()
|
||||
client:SetArmor(self:GetData("armor", self.maxArmor))
|
||||
character:SetCombineSuit(self:GetID())
|
||||
|
||||
if (!self:GetData("ownerID")) then
|
||||
self:SetData("ownerID", character:GetID())
|
||||
self:SetData("ownerName", client:Name())
|
||||
elseif (self:GetData("ownerID") == character:GetID()) then
|
||||
self:SetData("ownerName", client:Name())
|
||||
if (self:GetData("trackingActive")) then
|
||||
self:SetData("suitActive", true)
|
||||
end
|
||||
elseif (self:GetData("trackingActive")) then
|
||||
ix.combineNotify:AddImportantNotification("WRN:// " .. self:GetData("ownerName") .. " détection d'une anomalie bio-signal de l'uniforme", nil, client, client:GetPos(), nil)
|
||||
end
|
||||
|
||||
local hairBGIndex = client:FindBodygroupByName("hair")
|
||||
local hairData = character:GetHair()
|
||||
if hairBGIndex != -1 then
|
||||
local groups = character:GetData("groups", {})
|
||||
groups[hairBGIndex] = hairData.hair or 0
|
||||
character:SetData("groups", groups)
|
||||
|
||||
client:SetBodygroup(hairBGIndex, hairData.hair or 0)
|
||||
end
|
||||
|
||||
if client and IsValid(client) then
|
||||
local replacements = self:OnGetReplacement(client) or self.replacement or client:GetModel()
|
||||
local skin = self.newSkin or client:GetSkin()
|
||||
local bodygroups = client:GetBodyGroups()
|
||||
|
||||
net.Start("ixRefreshBodygroupsInventoryModel")
|
||||
net.WriteString(replacements)
|
||||
net.WriteUInt(skin, 5)
|
||||
net.WriteTable(bodygroups)
|
||||
net.Send(client)
|
||||
end
|
||||
|
||||
hook.Run("OnPlayerCombineSuitChange", client, true, self:GetData("suitActive"), self)
|
||||
end
|
||||
|
||||
function ITEM:OnUnequipped(client)
|
||||
self:SetData("armor", math.Clamp(client:Armor(), 0, self.maxArmor))
|
||||
client:SetArmor(0)
|
||||
client:GetCharacter():SetCombineSuit(0)
|
||||
|
||||
if client and IsValid(client) then
|
||||
local replacements = client:GetModel()
|
||||
local skin = client:GetSkin()
|
||||
local bodygroups = client:GetBodyGroups()
|
||||
|
||||
net.Start("ixRefreshBodygroupsInventoryModel")
|
||||
net.WriteString(replacements)
|
||||
net.WriteUInt(skin, 5)
|
||||
net.WriteTable(bodygroups)
|
||||
net.Send(client)
|
||||
|
||||
local hairBGIndex = client:FindBodygroupByName("hair")
|
||||
local character = client:GetCharacter()
|
||||
local hairData = character:GetHair()
|
||||
if hairBGIndex != -1 then
|
||||
local groups = character:GetData("groups", {})
|
||||
groups[hairBGIndex] = hairData.hair or 0
|
||||
character:SetData("groups", groups)
|
||||
|
||||
client:SetBodygroup(hairBGIndex, hairData.hair or 0)
|
||||
end
|
||||
end
|
||||
|
||||
hook.Run("OnPlayerCombineSuitChange", client, false, false, self)
|
||||
end
|
||||
|
||||
function ITEM:OnDoDeathDrop(client)
|
||||
self:SetData("suitActive", false)
|
||||
end
|
||||
|
||||
function ITEM:OnInstanced()
|
||||
self:SetData("armor", self.maxArmor)
|
||||
self:SetData("suitActive", true)
|
||||
self:SetData("trackingActive", true)
|
||||
self:SetData("ownerName", "INCONNU")
|
||||
self.bodyGroups = table.Copy(ix.item.list[self.uniqueID].bodyGroups or {})
|
||||
end
|
||||
|
||||
function ITEM:OnLoadout()
|
||||
if (!self:CanEquipOutfit()) then
|
||||
self:SetData("equip", false)
|
||||
elseif (self:GetData("equip")) then
|
||||
self.player:SetArmor(self:GetData("armor", self.maxArmor))
|
||||
self.player:GetCharacter():SetCombineSuit(self:GetID())
|
||||
|
||||
hook.Run("OnPlayerCombineSuitChange", self.player, true, self:GetData("suitActive"), self, true)
|
||||
end
|
||||
|
||||
self.bodyGroups = table.Copy(ix.item.list[self.uniqueID].bodyGroups or {})
|
||||
self.bodyGroups.Pants = self:GetData("Pants")
|
||||
end
|
||||
|
||||
function ITEM:OnSave()
|
||||
if (self:GetData("equip") and self.maxArmor) then
|
||||
local armor = math.Clamp(self.player:Armor(), 0, self.maxArmor)
|
||||
self:SetData("armor", armor)
|
||||
if (armor != self.player:Armor()) then
|
||||
self.player:SetArmor(armor)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function ITEM:OnRemoved()
|
||||
self:SetData("suitActive", false)
|
||||
|
||||
local owner = self:GetOwner()
|
||||
if (owner) then
|
||||
for _, v in ipairs(self:GetChannels(true)) do
|
||||
ix.radio:RemoveListenerFromChannel(owner, v)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function ITEM:Repair(client, amount)
|
||||
amount = amount or self.maxArmor
|
||||
local repairItem = client:GetCharacter():GetInventory():HasItem(self.repairItem)
|
||||
|
||||
if (repairItem) then
|
||||
if (repairItem.isTool) then
|
||||
repairItem:DamageDurability(1)
|
||||
else
|
||||
repairItem:Remove()
|
||||
end
|
||||
self:SetData("armor", math.Clamp(self:GetData("armor") + amount, 0, self.maxArmor))
|
||||
end
|
||||
end
|
||||
|
||||
ITEM.functions.Repair = {
|
||||
name = "Réparer",
|
||||
tip = "repairTip",
|
||||
icon = "icon16/wrench.png",
|
||||
OnRun = function(item)
|
||||
item:Repair(item.player)
|
||||
return false
|
||||
end,
|
||||
OnCanRun = function(item)
|
||||
if (IsValid(item.entity) or !IsValid(item.player)) then return false end
|
||||
if (item:GetData("equip") == true) then return false end
|
||||
if (item.repairItem == nil) then return false end
|
||||
if (item:GetData("armor") == item.maxArmor) then return false end
|
||||
|
||||
return item.player:GetCharacter():GetInventory():HasItem(item.repairItem)
|
||||
end
|
||||
}
|
||||
|
||||
ITEM.functions.AdmActivate = {
|
||||
name = "(ADM) Activer tenue",
|
||||
icon = "icon16/connect.png",
|
||||
OnRun = function(item)
|
||||
item:SetData("suitActive", true)
|
||||
ix.log.Add(item.player, "combineSuitsAdminActivate", item)
|
||||
|
||||
return false
|
||||
end,
|
||||
OnCanRun = function(item)
|
||||
if (IsValid(item.entity)) then return false end
|
||||
if (item:GetData("equip") == true) then return false end
|
||||
if (item:GetData("suitActive") == true) then return false end
|
||||
|
||||
local client = item.player
|
||||
if (client:GetMoveType() != MOVETYPE_NOCLIP or client:InVehicle()) then return false end
|
||||
|
||||
return CAMI.PlayerHasAccess(client, "Helix - Combine Suit Admin Control")
|
||||
end
|
||||
}
|
||||
|
||||
ITEM.functions.AdmActivateDe = {
|
||||
name = "(ADM) Désactiver Tenue",
|
||||
icon = "icon16/disconnect.png",
|
||||
OnRun = function(item)
|
||||
item:SetData("suitActive", false)
|
||||
ix.log.Add(item.player, "combineSuitsAdminActivate", item, true)
|
||||
|
||||
return false
|
||||
end,
|
||||
OnCanRun = function(item)
|
||||
if (IsValid(item.entity)) then return false end
|
||||
if (item:GetData("equip") == true) then return false end
|
||||
if (item:GetData("suitActive") != true) then return false end
|
||||
|
||||
local client = item.player
|
||||
if (client:GetMoveType() != MOVETYPE_NOCLIP or client:InVehicle()) then return false end
|
||||
|
||||
return CAMI.PlayerHasAccess(client, "Helix - Combine Suit Admin Control")
|
||||
end
|
||||
}
|
||||
|
||||
ITEM.functions.AdmTracker = {
|
||||
name = "(ADM) Activer Traqueur",
|
||||
icon = "icon16/map_add.png",
|
||||
OnRun = function(item)
|
||||
item:SetData("trackingActive", true)
|
||||
ix.log.Add(item.player, "combineSuitsAdminTracking", item)
|
||||
|
||||
return false
|
||||
end,
|
||||
OnCanRun = function(item)
|
||||
if (IsValid(item.entity)) then return false end
|
||||
if (item:GetData("equip") == true) then return false end
|
||||
if (item:GetData("trackingActive") == true) then return false end
|
||||
|
||||
local client = item.player
|
||||
if (client:GetMoveType() != MOVETYPE_NOCLIP or client:InVehicle()) then return false end
|
||||
|
||||
return CAMI.PlayerHasAccess(client, "Helix - Combine Suit Admin Control")
|
||||
end
|
||||
}
|
||||
|
||||
ITEM.functions.AdmTrackerDe = {
|
||||
name = "(ADM) Désactiver Traqueur",
|
||||
icon = "icon16/map_delete.png",
|
||||
OnRun = function(item)
|
||||
item:SetData("trackingActive", false)
|
||||
ix.log.Add(item.player, "combineSuitsAdminTracking", item, true)
|
||||
|
||||
return false
|
||||
end,
|
||||
OnCanRun = function(item)
|
||||
if (IsValid(item.entity)) then return false end
|
||||
if (item:GetData("equip") == true) then return false end
|
||||
if (item:GetData("trackingActive") != true) then return false end
|
||||
|
||||
local client = item.player
|
||||
if (client:GetMoveType() != MOVETYPE_NOCLIP or client:InVehicle()) then return false end
|
||||
|
||||
return CAMI.PlayerHasAccess(client, "Helix - Combine Suit Admin Control")
|
||||
end
|
||||
}
|
||||
|
||||
ITEM.functions.AdmOwnerDisable = {
|
||||
name = "(ADM) Désactiver Propriétaire",
|
||||
icon = "icon16/user_delete.png",
|
||||
OnRun = function(item)
|
||||
item:SetData("ownerID", -1)
|
||||
ix.log.Add(item.player, "combineSuitsAdminOwner", item)
|
||||
|
||||
if (item:GetData("trackingActive")) then
|
||||
item.player:NotifyLocalized("suitDisableTracker")
|
||||
end
|
||||
|
||||
return false
|
||||
end,
|
||||
OnCanRun = function(item)
|
||||
if (IsValid(item.entity)) then return false end
|
||||
if (item:GetData("ownerID") == -1) then return false end
|
||||
|
||||
local client = item.player
|
||||
if (client:GetMoveType() != MOVETYPE_NOCLIP or client:InVehicle()) then return false end
|
||||
|
||||
return CAMI.PlayerHasAccess(client, "Helix - Combine Suit Admin Control")
|
||||
end
|
||||
}
|
||||
|
||||
ITEM.functions.AdmOwnerClear = {
|
||||
name = "(ADM) Nettoyer le propriétaire",
|
||||
icon = "icon16/user_edit.png",
|
||||
OnRun = function(item)
|
||||
item:SetData("ownerID")
|
||||
ix.log.Add(item.player, "combineSuitsAdminOwnerClear", item)
|
||||
|
||||
return false
|
||||
end,
|
||||
OnCanRun = function(item)
|
||||
if (IsValid(item.entity)) then return false end
|
||||
if (item:GetData("ownerID") == nil) then return false end
|
||||
|
||||
local client = item.player
|
||||
if (client:GetMoveType() != MOVETYPE_NOCLIP or client:InVehicle()) then return false end
|
||||
|
||||
return CAMI.PlayerHasAccess(client, "Helix - Combine Suit Admin Control")
|
||||
end
|
||||
}
|
||||
|
||||
|
||||
ITEM.functions.AdmSetName = {
|
||||
name = "(ADM) Mettre un nom",
|
||||
icon = "icon16/vcard_edit.png",
|
||||
OnRun = function(item, data)
|
||||
if (data[1] == "") then return end
|
||||
|
||||
item:SetData("ownerName", data[1])
|
||||
ix.log.Add(item.player, "combineSuitsAdminName", item)
|
||||
|
||||
return false
|
||||
end,
|
||||
OnClick = function(item)
|
||||
Derma_StringRequest("Mettre un nom", "Mettre un nom pour cette tenue :", item:GetData("ownerName"), function(text)
|
||||
if (text == "") then return end
|
||||
|
||||
net.Start("ixInventoryAction")
|
||||
net.WriteString("AdmSetName")
|
||||
net.WriteUInt(item.id, 32)
|
||||
net.WriteUInt(item.invID, 32)
|
||||
net.WriteTable({text})
|
||||
net.SendToServer()
|
||||
end)
|
||||
|
||||
return false
|
||||
end,
|
||||
OnCanRun = function(item)
|
||||
if (IsValid(item.entity)) then return false end
|
||||
if (item:GetData("equip") == true) then return false end
|
||||
if (item:GetData("ownerID") == nil) then return false end
|
||||
|
||||
local client = item.player
|
||||
if (client:GetMoveType() != MOVETYPE_NOCLIP or client:InVehicle()) then return false end
|
||||
|
||||
local inventory = ix.item.inventories[item.invID]
|
||||
if (inventory and inventory.owner == item:GetData("ownerID")) then return false end
|
||||
|
||||
return CAMI.PlayerHasAccess(client, "Helix - Combine Suit Admin Control")
|
||||
end
|
||||
}
|
||||
|
||||
ITEM.functions.Pants = {
|
||||
name = "Changer bottes",
|
||||
tip = "repairTip",
|
||||
icon = "icon16/user_suit.png",
|
||||
OnRun = function(item)
|
||||
local originalItem = ix.item.list[item.uniqueID]
|
||||
local actual = originalItem.bodyGroups.Pants or 0
|
||||
if (item.bodyGroups.Pants != actual) then
|
||||
item.bodyGroups.Pants = actual
|
||||
item:SetData("Pants", actual)
|
||||
item.player:Notify("Bottes normales enfilées.")
|
||||
else
|
||||
item.bodyGroups.Pants = 1
|
||||
item:SetData("Pants", 1)
|
||||
item.player:Notify("Bottes de combat enfilées.")
|
||||
end
|
||||
return false
|
||||
end,
|
||||
OnCanRun = function(item)
|
||||
local client = item.player
|
||||
return item.isCP != nil and item:GetData("equip") == false and
|
||||
!IsValid(item.entity) and IsValid(client)
|
||||
end
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
|
||||
ITEM.base = "base_bgclothes"
|
||||
|
||||
ITEM.isGasmask = true
|
||||
ITEM.isCombineMask = true
|
||||
ITEM.isMask = true
|
||||
|
||||
ITEM.hooks.Equip = function(item, data)
|
||||
local character = item.player:GetCharacter()
|
||||
if (character and character:GetCombineSuit() == 0) then
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
ITEM.postHooks.Equip = function(item, client)
|
||||
local player = item.player or client
|
||||
hook.Run("OnPlayerCombineMaskChange", player, true, player:GetActiveCombineSuit())
|
||||
end
|
||||
|
||||
ITEM.postHooks.EquipUn = function(item, client)
|
||||
local player = item.player or client
|
||||
hook.Run("OnPlayerCombineMaskChange", player, false, player:GetActiveCombineSuit())
|
||||
end
|
||||
|
||||
function ITEM:OnLoadout()
|
||||
if (self:GetData("equip")) then
|
||||
local client = self.player
|
||||
timer.Simple(1, function()
|
||||
if (!IsValid(client)) then return end
|
||||
hook.Run("OnPlayerCombineMaskChange",client, true, client:GetActiveCombineSuit())
|
||||
end)
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - APF"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA, correspondant à celui des APF."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/jq/hlvr/characters/combine/suppressor/combine_suppressor_hlvr_ragdoll.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 125
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,30 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme PC - Recrue"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme auxiliaire de la Protection Civile. Design similaire, mais sans les technologies intégrées."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacementString = "wn7new/metropolice"
|
||||
ITEM.model = "models/wn7new/metropolice/cpuniform.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isCP = true
|
||||
ITEM.maxArmor = 25
|
||||
|
||||
ITEM.bodyGroups = {
|
||||
["Pants"] = 0,
|
||||
["cp_Body"] = 0
|
||||
}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_cpuniform"
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "OTA Charger Uniform"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Combine issued OTA Charger uniform."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/wallhammer.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 125
|
||||
ITEM.channels = {"ota-tac", "tac-3", "tac-4", "tac-5", "cmb", "cca", "mcp"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,33 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Medium Command Uniform"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Containing a modified version of the original Level-2 Kevlar vest comes a uniform designed for Rank Leaders and above. Better comfort and utility compared to the standardized design."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacementString = "wn7new/metropolice"
|
||||
ITEM.model = "models/wn7new/metropolice/cpuniform.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isCP = true
|
||||
ITEM.maxArmor = 75
|
||||
|
||||
ITEM.channels = {"cmb", "tac-3", "tac-4", "tac-5"}
|
||||
|
||||
ITEM.bodyGroups = {
|
||||
["Pants"] = 0,
|
||||
["cp_Body"] = 16
|
||||
}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_cpuniform"
|
||||
ITEM.energyConsumptionRate = 0.002 -- fatigue_system
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - COMMANDER"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA, correspondant à celui des COMMANDER, grade le plus élevé dans la hiérarchie."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/ota_shotgunner.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 200
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,32 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme PC - Terrain"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme de la Protection Civile, porté par les unités possédant le grade i5 et plus."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacementString = "wn7new/metropolice"
|
||||
ITEM.model = "models/wn7new/metropolice/cpuniform.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isCP = true
|
||||
|
||||
ITEM.channels = {"pc", "tac-3"}
|
||||
|
||||
ITEM.bodyGroups = {
|
||||
["Pants"] = 0,
|
||||
["cp_Body"] = 2
|
||||
}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_cpuniform"
|
||||
ITEM.energyConsumptionRate = 0.001 -- fatigue_system
|
||||
@@ -0,0 +1,32 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Light Command Uniform"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "A nicer set of the original Functionary uniform designed for those fitting of the rank 'Intention 2' and above."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacementString = "wn7new/metropolice"
|
||||
ITEM.model = "models/wn7new/metropolice/cpuniform.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isCP = true
|
||||
|
||||
ITEM.channels = {"cmb", "tac-3", "tac-4"}
|
||||
|
||||
ITEM.bodyGroups = {
|
||||
["Pants"] = 0,
|
||||
["cp_Body"] = 2
|
||||
}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_cpuniform"
|
||||
ITEM.energyConsumptionRate = 0.001 -- fatigue_system
|
||||
@@ -0,0 +1,33 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Riot Functionary Uniform"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "A nice and clean uniform set designed for use by the Civil Protection. Containing a Level-3 Kevlar Vest, Insulated Olive Trousers, a Dual-Steel Utility Belt and Steel-Capped Military Boots."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacementString = "wn7new/metropolice"
|
||||
ITEM.model = "models/wn7new/metropolice/cpuniform.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isCP = true
|
||||
ITEM.maxArmor = 75
|
||||
|
||||
ITEM.channels = {"cmb", "tac-3"}
|
||||
|
||||
ITEM.bodyGroups = {
|
||||
["Pants"] = 0,
|
||||
["cp_Body"] = 2
|
||||
}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_cpuniform"
|
||||
ITEM.energyConsumptionRate = 0.002 -- fatigue_system
|
||||
@@ -0,0 +1,30 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - ECHO"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA, correspondant à celui des ECHO (ECHO ONE) est le premier grade dans la hiérarchie de la Force transhumaine."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/jq/hlvr/characters/combine/grunt/combine_grunt_hlvr_ragdoll.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 100
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.bodyGroups = {
|
||||
["Gastank"] = 3,
|
||||
["Grenade 1"] = 1
|
||||
}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - ELITE"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA, correspondant à celui de la division ELITE, chargée d'escorter les personnalités importantes de la Cité ou déployer lors d'opérations spéciales."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/ota_elite.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 125
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "OTA Elite Uniform"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Combine issued OTA Elite uniform."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/ota_elite.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 150
|
||||
ITEM.channels = {"ota-tac", "tac-3", "tac-4", "tac-5", "cmb", "cca", "mcp"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme de décontamination"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Uniforme de décontamination conçu par le cartel."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/willardnetworks/combine/antibody.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 100
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,33 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "CP Captain Uniform"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Combine issued Civil Protection uniform made for Captains."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacementString = "wn7new/metropolice"
|
||||
ITEM.model = "models/wn7new/metropolice/cpuniform.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isCP = true
|
||||
ITEM.maxArmor = 75
|
||||
|
||||
ITEM.channels = {"cmb", "tac-3", "tac-4", "tac-5"}
|
||||
|
||||
ITEM.bodyGroups = {
|
||||
["Pants"] = 0,
|
||||
["Base"] = 1,
|
||||
["cp_Body"] = 16
|
||||
}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_cpuniform"
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - ORD"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA, correspondant à celui des ORD (ORDINAL) est le commandant d'escouade."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/ordinal.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 125
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - OWS"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA, correspondant à celui des OWS (OverWatch Soldiers), il s'agit d'un soldat déployer lors d'opération spéciales."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/ota_soldier.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 125
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,26 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - STG"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA, correspondant à celui de la division STG (Fusil à pompe / Shotgunner), chargée du maniement des fusils à pompes lors des différentes opérations dans la Cité."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/ota_skylegion.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 100
|
||||
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - RECON"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA , correspondant à celui des RECON, est une unité de reconnaisance et équipé d'un sniper"
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/nemez/combine_soldiers/combine_soldier_recon_h.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 125
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,26 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Summit 24 Elite Uniform"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "A specialized version of the Elite Uniform designed for Summit 24"
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/ota_elite_summit.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 150
|
||||
|
||||
ITEM.channels = {"ota-tac", "tac-3", "tac-4", "tac-5", "cmb", "cca", "mcp"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,26 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - Spikewall"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA, correspondant à celui des Spikewall, il s'agit d'un soldat déployer lors d'opération spéciales."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/theparrygod/transition_shotgunner.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.skin = 1
|
||||
ITEM.maxArmor = 200
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "OTA Suppressor Uniform"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Combine issued OTA Suppressor uniform."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/suppressor.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 125
|
||||
ITEM.channels = {"ota-tac", "tac-3", "tac-4", "tac-5", "cmb", "cca", "mcp"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,25 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Uniforme OTA - Valkirie"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA, correspondant à l'unité Valkirie."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.replacement = "models/wn/soldier.mdl"
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-1.96, 13.01, 199.57),
|
||||
ang = Angle(84.7, 279.39, 0),
|
||||
fov = 4.8
|
||||
}
|
||||
ITEM.isOTA = true
|
||||
ITEM.maxArmor = 125
|
||||
ITEM.channels = {"ota", "tac-3", "tac-4", "tac-5", "pc", "haa", "ac", "bc"}
|
||||
|
||||
ITEM.replaceOnDeath = "broken_otauniform"
|
||||
@@ -0,0 +1,31 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Masque à gaz PMG-5"
|
||||
ITEM.description = "Offre une protection adéquate contre les fumées et les gaz nocifs, ainsi que certaines odeurs nauséabondes. Il lui manque beaucoup de technologies que les masques PC standard possèdent."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.model = "models/wn7new/metropolice/n7_cp_gasmask1.mdl"
|
||||
ITEM.width = 1
|
||||
ITEM.height = 1
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-6.26, 381.14, 189.04),
|
||||
ang = Angle(26.03, 270.95, 0),
|
||||
fov = 1.91
|
||||
}
|
||||
ITEM.width = 1
|
||||
ITEM.height = 1
|
||||
ITEM.outfitCategory = "Head"
|
||||
ITEM.bodyGroups = {
|
||||
["cp_Head"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
|
||||
}
|
||||
|
||||
ITEM.isGasmask = true
|
||||
ITEM.isCombineMask = false
|
||||
ITEM.energyConsumptionRate = 0.001 -- fatigue_system
|
||||
@@ -0,0 +1,31 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Masque à gaz PMG-5 (AUG) avancé"
|
||||
ITEM.description = "Tout comme le masque original, mais avec des visuels améliorés, une meilleure connexion à OCIN et un réglage amélioré pour les communications."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.model = "models/wn7new/metropolice/n7_cp_gasmask1.mdl"
|
||||
ITEM.width = 1
|
||||
ITEM.height = 1
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-6.26, 381.14, 189.04),
|
||||
ang = Angle(26.03, 270.95, 0),
|
||||
fov = 1.91
|
||||
}
|
||||
ITEM.width = 1
|
||||
ITEM.height = 1
|
||||
ITEM.outfitCategory = "Head"
|
||||
ITEM.bodyGroups = {
|
||||
["cp_Head"] = 3 -- The actual name of the bodypart, then number in that bodypart (model-wise)
|
||||
}
|
||||
|
||||
ITEM.isGasmask = true
|
||||
ITEM.isCombineMask = true
|
||||
ITEM.energyConsumptionRate = 0.001 -- fatigue_system
|
||||
@@ -0,0 +1,31 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Masque à gaz PMG-5 (AUG)"
|
||||
ITEM.description = "Offre une protection adéquate contre les vapeurs nocives, les gaz et certains mauvaises odeurs avec une oreillettes intégré pour la communication."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.model = "models/wn7new/metropolice/n7_cp_gasmask1.mdl"
|
||||
ITEM.width = 1
|
||||
ITEM.height = 1
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-6.26, 381.14, 189.04),
|
||||
ang = Angle(26.03, 270.95, 0),
|
||||
fov = 1.91
|
||||
}
|
||||
ITEM.width = 1
|
||||
ITEM.height = 1
|
||||
ITEM.outfitCategory = "Head"
|
||||
ITEM.bodyGroups = {
|
||||
["cp_Head"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
|
||||
}
|
||||
|
||||
ITEM.isGasmask = true
|
||||
ITEM.isCombineMask = true
|
||||
ITEM.energyConsumptionRate = 0.001 -- fatigue_system
|
||||
@@ -0,0 +1,31 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Masque - Avancé"
|
||||
ITEM.description = "Un masque avancé du Cartel. Offre une protection accrue contre les fumées, les gaz nocifs et certaines odeurs nauséabondes."
|
||||
ITEM.category = "Combine"
|
||||
ITEM.model = "models/wn7new/metropolice/n7_cp_gasmask1.mdl"
|
||||
ITEM.width = 1
|
||||
ITEM.height = 1
|
||||
ITEM.iconCam = {
|
||||
pos = Vector(-6.26, 381.14, 189.04),
|
||||
ang = Angle(26.03, 270.95, 0),
|
||||
fov = 1.91
|
||||
}
|
||||
ITEM.outfitCategory = "Head"
|
||||
ITEM.bodyGroups = {
|
||||
["cp_Head"] = 2 -- The actual name of the bodypart, then number in that bodypart (model-wise)
|
||||
}
|
||||
|
||||
ITEM.isGasmask = true
|
||||
ITEM.isCombineMask = true
|
||||
ITEM.isPPE = true
|
||||
|
||||
ITEM.colorAppendix = {["red"] = "Il est totalement interdit d'avoir ce masque sur vous. Si une unité découvre que vous portez ce masque, attendez-vous à de terribles conséquences."}
|
||||
@@ -0,0 +1,14 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Tenue PC - Déchirée"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme de la Protection Civile en lambeaux, vous ne pouvez pas le porter. Elle pourrait peut être récupéré en pièces détachées ? Elle ne servira certainement plus d'armure, elle est criblé de trous."
|
||||
ITEM.category = "Combine"
|
||||
@@ -0,0 +1,14 @@
|
||||
--[[
|
||||
| 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/
|
||||
--]]
|
||||
|
||||
ITEM.name = "Tenue OTA - Déchirée"
|
||||
ITEM.model = Model("models/wn7new/metropolice/cpuniform.mdl")
|
||||
ITEM.description = "Un uniforme d'OTA en lambeaux, vous ne pouvez pas le porter. Elle pourrait peut être récupéré en pièces détachées ? Elle ne servira certainement plus d'armure, elle est criblé de trous."
|
||||
ITEM.category = "Combine"
|
||||
Reference in New Issue
Block a user