This commit is contained in:
lifestorm
2024-08-04 22:55:00 +03:00
parent 8064ba84d8
commit 73479cff9e
7338 changed files with 1718883 additions and 14 deletions

View File

@@ -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 = "Vortigaunt Bandages"
ITEM.description = "Wounded or otherwise, these bandages will serve its purpose."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_bandage.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Legs"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["hooks"] = 2 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}
ITEM.colorAppendix = {
blue = "Fits on the shackles slot",
}

View File

@@ -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 = "Bandana vortiguant"
ITEM.description = "La discrétion est de la plus haute importance. Je ne voudrais pas que quiconque sache qu'un Vortigaunt était ici."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/head_facewrap.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.iconCam = {
pos = Vector(-0.76, -0.13, 200),
ang = Angle(90.05, 189.72, 0),
fov = 2.5
}
ITEM.outfitCategory = "Glasses"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["face"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -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 = "Vortigaunt Belt"
ITEM.description = "A belt made for human use, but a curious vortigaunt might try it on."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_belt.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Hands"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["meat"] = 3 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}
ITEM.colorAppendix = {
blue = "Fits on the meat belt slot",
}

View File

@@ -0,0 +1,27 @@
--[[
| 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 = "Vortigaunt Boonie"
ITEM.description = "A wide rimmed hat. Keeps the sun off your vort head."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/head_boonie.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.iconCam = {
ang = Angle(25.370000839233,399.98999023438,0),
pos = Vector(-138.86999511719,-116.79000091553,85.76000213623),
fov = 3.82,
}
ITEM.outfitCategory = "Head"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["head"] = 6 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,27 @@
--[[
| 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 = "Toque de vortigaunt"
ITEM.description = "Les Vortigaunts sont bien connus pour leurs capacités dans les arts culinaires en raison de leur lien avec la Vortessence. La seule étape restante pour qu'un Vortigaunt agisse temporairement comme un chef expert est de porter l'un de ces chapeaux idiots."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/head_chefhat.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.iconCam = {
pos = Vector(-138.87, -116.79, 85.76),
ang = Angle(25.28, 400.12, 0),
fov = 4.26
}
ITEM.outfitCategory = "Head"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["head"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -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 = "Vortigaunt Fedora"
ITEM.description = "A rare stylish hat reminiscent of bygone times, certainly no alive creature would expect to see a vortigaunt with one of these.."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/fedora_item.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Head"
ITEM.factionList = {FACTION_VORT}
ITEM.iconCam = {
ang = Angle(25,220.0299987793,0),
pos = Vector(509.64001464844,427.60998535156,310.23999023438),
fov = 1.06,
}
ITEM.bodyGroups = {
["head"] = 5 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Vortigaunt Flat Cap"
ITEM.description = "A stylish old-school cap that is flat on the head.. Some vorts have particular taste."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/head_hat2.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Head"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["head"] = 4 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Vortigaunt Construction Hat"
ITEM.description = "Brandished with the Combine mark its back, these construction hats are often worn by the Civil Workers Union."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/workercap_item.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Head"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["head"] = 3 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,27 @@
--[[
| 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 = "Casque vortiguant"
ITEM.description = "La protection avant l'aspect pratique. Avec un peu de chance, l'ennemi peut essayer de viser un peu plus haut."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/head_helmet.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.iconCam = {
pos = Vector(-117.67, -98.6, 71.58),
ang = Angle(25, 400, 0),
fov = 4.42
}
ITEM.outfitCategory = "Head"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["head"] = 2 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Ceinture de fortune"
ITEM.description = "Une collection de peaux de crabe de tête délicieuses et appétissantes, rassemblées de tous les coins."
ITEM.category = "Vortigaunt"
ITEM.model = "models/n7/vorti_outfit/meat01.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Hands"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["meat"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Ceinture des terres lointaines"
ITEM.description = "Difficile à trouver sous le contrôle du cartel, cette ceinture semble être ornée de viande des terres lointaines."
ITEM.category = "Vortigaunt"
ITEM.model = "models/n7/vorti_outfit/meat02.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Hands"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["meat"] = 2 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,166 @@
--[[
| 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 = "Collier vortiguant"
ITEM.description = "Un collier lourd et métallique avec une technologie extraterrestre à l'intérieur. Neutralise complètement la capacité d'un vortigaunt à manipuler les énergies qui l'entourent. Une fois usé, il ne peut pas être retiré sans les outils appropriés."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/vortigaunt_collar.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Face"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = true
ITEM.bodyGroups = {
["collar"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}
function ITEM:GetColorAppendix()
return {
["red"] = "Collar ID: " .. self:GetData("collarID", "UNKNOWN")
}
end
function ITEM:OnInstanced()
self:SetData("Locked", false)
end
function ITEM:OnEquip(client)
local vortPlugin = ix.plugin.Get("vortigaunts")
local character = client:GetCharacter()
local genericdata = character:GetGenericdata()
if character:GetFaction() != FACTION_VORT then return end
if self:GetData("collarID") == nil then
self:SetData("collarID", tostring(vortPlugin:GenerateCollarID(character.id)))
end
self:SetData("Locked", true)
character:SetCollarID(self:GetData("collarID"))
character:SetCollarItemID(self:GetID())
if genericdata and genericdata.collarID == "N/A" then
genericdata.collarID = character:GetCollarID()
character:SetGenericdata(genericdata)
character:Save()
end
if client:HasWeapon("ix_nightvision") then
client:StripWeapon( "ix_nightvision" )
end
if client:HasWeapon("ix_vortbeam") then
client:StripWeapon( "ix_vortbeam" )
end
if client:HasWeapon("ix_vortheal") then
client:StripWeapon( "ix_vortheal" )
end
if client:HasWeapon("ix_vshield") then
client:StripWeapon( "ix_vshield" )
end
if client:HasWeapon("ix_vortpyro") then
client:StripWeapon( "ix_vortpyro" )
end
if client:HasWeapon("ix_vortslam") then
client:StripWeapon( "ix_vortslam" )
end
if client:HasWeapon("ix_vortadvancedbeam") then
client:StripWeapon( "ix_vortadvancedbeam" )
end
client:Give("ix_vortsweep")
if (character:GetBackground() != "Collaborator") then
character:SetBackground("Biotic")
end
local worldmodel = ents.FindInSphere(client:GetPos(), 1);
for _, v in pairs(worldmodel) do
if (v:GetClass() == "ix_nvlight" and v:GetOwner() == client) then
v:Remove()
end
end
end
function ITEM:OnLoadout()
if (self:GetData("equip")) then
local client = self.player
local character = client:GetCharacter()
character:SetCollarID(self:GetData("collarID"))
character:SetCollarItemID(self:GetID())
end
end
function ITEM:OnUnEquip(client)
local character = client:GetCharacter()
if character:GetFaction() != FACTION_VORT then return end
self:SetData("Locked", false)
character:SetCollarID(nil)
character:SetCollarItemID(nil)
if client:HasWeapon("ix_vortsweep") then
client:StripWeapon( "ix_vortsweep" )
if client.broomModel then
client.broomModel:Remove()
end
end
client:Give("ix_nightvision")
client:Give("ix_vortbeam")
client:Give("ix_vortheal")
client:Give("ix_vshield")
client:Give("ix_vortslam")
if (character:GetBackground() != "Collaborator") then
character:SetBackground("Liberated")
end
end
function ITEM:CanEquipOutfit(client)
local player = self.player or client
local bgItems = player:GetCharacter():GetInventory():GetItemsByBase("base_bgclothes", true)
for _, v in ipairs(bgItems) do
if (v:GetData("equip") and v.maxArmor) then
return false
end
end
if !player:HasWhitelist(ix.faction.teams["vortigaunt"].index) then
player:NotifyLocalized("Vous n'êtes pas sur la whitelist de la faction, donc vous ne pouvez pas l'utiliser !")
return false
end
return true
end
ITEM:Hook("drop", function(item)
if item:GetData("Locked") == true then
item.player:NotifyLocalized("Votre collier est verrouillé et vous ne pouvez pas le laisser tomber !")
return false
end
if (item:GetData("equip")) then
item:OnUnEquip(item.player)
item:RemoveOutfit(item:GetOwner())
end
end)

View File

@@ -0,0 +1,110 @@
--[[
| 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 = "Collier Vortigaunt (faux)"
ITEM.description = "Un collier lourd et métallique avec une technologie extraterrestre à l'intérieur. Neutralise complètement la capacité d'un vortigaunt à manipuler les énergies qui l'entourent. Une fois usé, il ne peut pas être retiré sans les outils appropriés."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/vortigaunt_collar.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Face"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = true
ITEM.bodyGroups = {
["collar"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}
if (CLIENT) then
function ITEM:GetName()
if LocalPlayer():GetCharacter() then
if LocalPlayer():GetMoveType() == MOVETYPE_NOCLIP or LocalPlayer():GetCharacter():GetFaction() == FACTION_VORT then
return self.name
end
end
return string.sub( self.name, 1, string.len(self.name) - 7 )
end
end
function ITEM:GetColorAppendix()
return {
["red"] = "Collar ID: " .. self:GetData("collarID", "UNKNOWN")
}
end
function ITEM:OnInstanced()
self:SetData("Locked", false)
end
function ITEM:OnEquip(client)
local character = client:GetCharacter()
if (character:GetFaction() != FACTION_VORT) then
return
end
if (!self:GetData("collarOriginalOwnerCharacterID", nil) or self:GetData("collarID", nil) != character:GetCollarID() and self:GetData("collarOriginalOwnerCharacterID", nil)) then
if (!self:GetData("collarID", nil)) then
self:SetData("collarID", tostring(PLUGIN:GenerateCollarID(character.id)))
self:SetData("collarOriginalOwnerCharacterID", character.id)
elseif (character:GetData("CanResetFakeCollarDatafile") != false) then
ix.plugin.list.combineutilities:CreateDatafile(client)
character:SetCollarID(self:GetData("collarID"))
character:SetCollarItemID(self:GetID())
character:SetData("CanResetFakeCollarDatafile", false)
client:Notify("Previous datafile information wiped, generating new data...")
end
end
end
function ITEM:OnLoadout()
if (self:GetData("equip")) then
local client = self:GetOwner()
local character = client:GetCharacter()
if (character:GetFaction() != FACTION_VORT) then return end
if (self:GetData("collarID", nil) and character:GetCollarID() != self:GetData("collarID") and character:GetData("CanResetFakeCollarDatafile") != false) then
character:SetCollarID(self:GetData("collarID"))
character:SetCollarItemID(self:GetID())
end
self:Unequip(self:GetOwner())
end
end
function ITEM:CanEquipOutfit(client)
local character = client:GetCharacter()
if (client:Team() != FACTION_VORT) then
client:NotifyLocalized("You are not whitelisted for the vortigaunt faction, so this is unuseable to you!")
return false
elseif (self:GetData("collarID", "N/A") != character:GetCollarID() and character:GetData("CanResetFakeCollarDatafile") == false) then
client:Notify("You equip a different fake collar, but datafile information is not regenerated.")
end
return true
end
function ITEM:OnUnEquip(client)
end
ITEM:Hook("drop", function(item)
local owner = item:GetOwner()
if (item:GetData("equip")) then
item:OnUnEquip(owner)
item:RemoveOutfit(owner)
end
end)

View File

@@ -0,0 +1,46 @@
--[[
| 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 = "Crochets vortigaunt"
ITEM.description = "Le composant de base des chaînes et des colliers. Ils sont très serrés autour des jambes. Verrouillés en place, ils ne peuvent pas être retirés une fois appliqués."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/vortigaunt_hooks.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Shoes"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = true
ITEM.bodyGroups = {
["hooks"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}
function ITEM:OnInstanced()
self:SetData("Locked", false)
end
function ITEM:OnEquip(client)
self:SetData("Locked", true)
end
function ITEM:OnUnEquip()
self:SetData("Locked", false)
end
ITEM:Hook("drop", function(item)
if item:GetData("Locked") == true then
item.player:NotifyLocalized("Your collar is locked so you cannot drop it!")
return false
end
if (item:GetData("equip")) then
item:RemoveOutfit(item:GetOwner())
end
end)

View File

@@ -0,0 +1,35 @@
--[[
| 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 = "Crochets Vortigaunt (faux)"
ITEM.description = "Le composant de base des chaînes et des colliers. Ils sont très serrés autour des jambes. Verrouillés en place, ils ne peuvent pas être retirés une fois appliqués."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/vortigaunt_hooks.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Shoes"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = true
ITEM.bodyGroups = {
["hooks"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}
if (CLIENT) then
function ITEM:GetName()
if LocalPlayer():GetCharacter() then
if LocalPlayer():GetMoveType() == MOVETYPE_NOCLIP or LocalPlayer():GetCharacter():GetFaction() == FACTION_VORT then
return self.name
end
end
return string.sub( self.name, 1, string.len(self.name) - 7 )
end
end

View File

@@ -0,0 +1,46 @@
--[[
| 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 = "Chaînes Vortigaunt"
ITEM.description = "Un métal qui lie et entretoise qui resserre les membres et rend les mouvements douloureux. Ils sont verrouillés en place et ne peuvent pas être retirés une fois appliqués.."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/vortigaunt_shackles.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Legs"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = true
ITEM.bodyGroups = {
["shackles"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}
function ITEM:OnInstanced()
self:SetData("Locked", false)
end
function ITEM:OnEquip(client)
self:SetData("Locked", true)
end
function ITEM:OnUnEquip()
self:SetData("Locked", false)
end
ITEM:Hook("drop", function(item)
if item:GetData("Locked") == true then
item.player:NotifyLocalized("Your collar is locked so you cannot drop it!")
return false
end
if (item:GetData("equip")) then
item:RemoveOutfit(item:GetOwner())
end
end)

View File

@@ -0,0 +1,35 @@
--[[
| 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 = "Chaînes Vortigaunt (faux)"
ITEM.description = "Un métal qui lie et entretoise qui resserre les membres et rend les mouvements douloureux. Ils sont verrouillés en place et ne peuvent pas être retirés une fois appliqués.."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/vortigaunt_shackles.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Legs"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = true
ITEM.bodyGroups = {
["shackles"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}
if (CLIENT) then
function ITEM:GetName()
if LocalPlayer():GetCharacter() then
if LocalPlayer():GetMoveType() == MOVETYPE_NOCLIP or LocalPlayer():GetCharacter():GetFaction() == FACTION_VORT then
return self.name
end
end
return string.sub( self.name, 1, string.len(self.name) - 7 )
end
end

View File

@@ -0,0 +1,23 @@
--[[
| 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 = "Plaque de garde de fourmilion"
ITEM.description = "Fabriquée à partir des peaux blindées épaisses des gardes Antlion tombés au combat, cette armure n'est pas seulement robuste, mais la marque d'un guerrier chevronné."
ITEM.category = "Vortigaunt"
ITEM.model = "models/n7/vorti_outfit/armor.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.maxArmor = 50
ITEM.outfitCategory = "Torso"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 8 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Vortigaunt Worker Uniform"
ITEM.description = "A sweater of sorts embelished with combine insignia. Suitable to identify worker vortigaunts."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_sweater_cwu.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Torso"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 10 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Blouse"
ITEM.description = "Un uniforme scientifique pour les vortigaunts à la recherche d'un style de vie plus scientifique."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_doc.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Torso"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 3 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Blouse de laboratoire Vortigaunt"
ITEM.description = "Un uniforme scientifique pour les vortigaunts à la recherche d'un style de vie plus scientifique."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_doc.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Torso"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 2 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Sweat à capuche"
ITEM.description = "Un sweat à capuche allongé pour un cou plus long. Parfait pour garder un vortigaunt au chaud même dans les conditions les plus difficiles."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_sweater.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Torso"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 7 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Poncho raffiné"
ITEM.description = "Un revêtement fiable et solide, Sa composition est dérivée de vêtements humains typiques. La conception ample et les découpes pratiques permettent le confort et la liberté de mouvement."
ITEM.category = "Vortigaunt"
ITEM.model = "models/n7/vorti_outfit/light01.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Torso"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 4 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Couverture improvisée"
ITEM.description = "Un revêtement simple et uni. Bon pour vous garder bien au chaud par une nuit fraîche, et pas grand-chose d'autre."
ITEM.category = "Vortigaunt"
ITEM.model = "models/n7/vorti_outfit/light02.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Torso"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 5 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,28 @@
--[[
| 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 = "Trench marron"
ITEM.description = "Un trench-coat marron et remis à neuf. Ils garantissent que le corps est chaud et un peu sec. Ça ne fait pas de mal de se fondre non plus."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/clothingitems/torso_refugee_coat.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.iconCam = {
pos = Vector(-39.23, -7.19, 195.95),
ang = Angle(77.11, 10.12, 0),
fov = 4.05
}
ITEM.outfitCategory = "Torso"
ITEM.maxArmor = 25
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 1 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,22 @@
--[[
| 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 = "Vortigaunt Sweater"
ITEM.description = "A sweater made for humans.. A curious vortigaunt might sneak one on. Perfect for keeping a vortigaunt warm in even the toughest conditions."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_sweater.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Torso"
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 9 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,23 @@
--[[
| 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 = "Kevlar"
ITEM.description = "Il n'y a pas de peur pour la mort, mais il n'y a pas non plus de hâte à l'embrasser. Un ensemble standard de kevlar humain, à peu près adapté à pour un vortigaunt."
ITEM.category = "Vortigaunt"
ITEM.model = "models/props_c17/BriefCase001a.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Torso"
ITEM.maxArmor = 25
ITEM.factionList = {FACTION_VORT}
ITEM.bodyGroups = {
["torso"] = 6 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -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 = "Vortigaunt Brown Trousers"
ITEM.description = "Even extra-dimensional aliens know that leathery or fabric materials make for substantially comfortable garments."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_pants.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Legs"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = false
ITEM.bodyGroups = {
["shackles"] = 2 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}
ITEM.colorAppendix = {
blue = "Fits on the meat shackles slot",
}

View File

@@ -0,0 +1,23 @@
--[[
| 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 = "Vortigaunt Dark Trousers"
ITEM.description = "Even extra-dimensional aliens know that leathery or fabric materials make for substantially comfortable garments."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_pants2.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Legs"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = false
ITEM.bodyGroups = {
["shackles"] = 3 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,23 @@
--[[
| 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 = "Vortigaunt Dark Blue Trousers"
ITEM.description = "Even extra-dimensional aliens know that leathery or fabric materials make for substantially comfortable garments."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_pants3.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Legs"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = false
ITEM.bodyGroups = {
["shackles"] = 4 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,23 @@
--[[
| 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 = "Vortigaunt Dark Grey Trousers"
ITEM.description = "Even extra-dimensional aliens know that leathery or fabric materials make for substantially comfortable garments."
ITEM.category = "Vortigaunt"
ITEM.model = "models/willardnetworks/vort_clothingitems/vort_pants4.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.outfitCategory = "Legs"
ITEM.factionList = {FACTION_VORT}
ITEM.KeepOnDeath = false
ITEM.bodyGroups = {
["shackles"] = 5 -- The actual name of the bodypart, then number in that bodypart (model-wise)
}

View File

@@ -0,0 +1,126 @@
--[[
| 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 = "Clé de chaîne"
ITEM.model = "models/willardnetworks/props/vortkey.mdl"
ITEM.width = 1
ITEM.height = 1
ITEM.description = "Une clé pour déverrouiller des chaînes d'un Vortigaunt."
ITEM.category = "Vortigaunt"
ITEM.colorAppendix = {["red"] = "Cette item peut uniquement être utiliser qu'une seule fois."}
local usedOnItems = {"Collier vortiguant", "Chaînes Vortigaunt", "Crochets vortigaunt"}
ITEM.functions.use = {
name = "Utiliser sur soi",
tip = "applyTip",
icon = "icon16/key.png",
OnCanRun = function(item)
if (item.entity) 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 - Shackles Self Release")
end,
OnRun = function(item)
local character = item.player:GetCharacter()
local foundSomething = false
local collarID = false
if character:IsVortigaunt() then
for _, v in pairs(character:GetInventory():GetItems()) do
if table.HasValue( usedOnItems, v.name ) and v:GetData("equip") == true and v:GetData("Locked") then
if v:GetData("collarID") then
collarID = v:GetData("collarID")
end
v:SetData("Locked", false)
foundSomething = true
end
end
if foundSomething then
ix.combineNotify:AddImportantNotification(collarID and "WRN:// Une clée a été utiliser sur un collier avec l'ID: #" .. collarID or "WRN:// Une clée a été utiliser sur un collier avec une ID inconnu.", Color(255, 81, 0), item.player, item.player:GetPos())
item.player:NotifyLocalized("Vos chaînes ne sont plus verrouillées et peuvent être enlevées...")
return false
else
item.player:NotifyLocalized("Vous ne portez pas de chaînes verrouillées..")
return false
end
else
item.player:NotifyLocalized("Tu nes pas un vortiguant !")
return false
end
end,
}
ITEM.functions.give = {
name = "Utiliser sur le personnage",
tip = "giveTip",
icon = "icon16/key_go.png",
OnCanRun = function(item)
if (item.entity) then return false end
local trace = item.player:GetEyeTraceNoCursor()
local target = trace.Entity
if (!IsValid(target)) then
return false
end
if (CLIENT and target:GetClass() == "prop_ragdoll") then
return true
end
if (IsValid(target.ixPlayer)) then
target = target.ixPlayer
end
if (!target:IsPlayer() or !target:GetCharacter()) then
return false
end
end,
OnRun = function(item)
local target = item.player:GetEyeTraceNoCursor().Entity
if (!IsValid(target)) then
return false
end
if (IsValid(target.ixPlayer)) then
target = target.ixPlayer
end
local targetChar = target:GetCharacter()
local foundSomething = false
local collarID = false
if targetChar:IsVortigaunt() then
for _, v in pairs(targetChar:GetInventory():GetItems()) do
if table.HasValue( usedOnItems, v.name ) and v:GetData("equip") and v:GetData("Locked") then
if v:GetData("collarID") then
collarID = v:GetData("collarID")
end
v:SetData("Locked", false)
foundSomething = true
end
end
if foundSomething then
ix.combineNotify:AddImportantNotification(collarID and "WRN:// Une clée a été utiliser sur un collier avec l'ID: #" .. collarID or "WRN:// Une clée a été utiliser sur le collier avec une ID inconnu.", Color(255, 81, 0), item.player, item.player:GetPos())
item.player:NotifyLocalized("Ses chaînes ne sont plus verrouillées et peuvent être enlevées..")
else
item.player:NotifyLocalized("Il ne porte pas de chaînes verrouillées...")
end
else
item.player:NotifyLocalized("Ce n'est pas un vortiguant !")
end
item.player:EmitSound("physics/metal/metal_box_strain1.wav", 110)
end,
}