This commit is contained in:
lifestorm
2024-08-05 18:40:29 +03:00
parent 9f505a0646
commit c6d9b6f580
8044 changed files with 1853472 additions and 21 deletions

View File

@@ -0,0 +1,66 @@
--[[
| 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 = "Ration Coupons"
ITEM.model = Model("models/willardnetworks/misc/idcard.mdl")
ITEM.description = "A ration coupon to be used on the ration dispenser in return for credits."
ITEM.amount = 5
ITEM.category = "Ration Coupons"
ITEM.maxStackSize = 5
ITEM.base = "base_stackable"
ITEM.bInstanceMaxstack = false
ITEM.functions.Use = {
OnRun = function(itemTable)
local client = itemTable.player
local character = client:GetCharacter()
local errorMsg = "You need to be near and looking at a ration dispenser or a civil terminal to do this!"
local entity = client:GetEyeTraceNoCursor().Entity
if (IsValid(entity)) then
if (entity:GetClass() != "ix_rationdispenser" and entity:GetClass() != "ix_terminal") then
client:NotifyLocalized(errorMsg)
return false
end
if (client:GetShootPos():Distance(entity:GetPos()) > 50) then
client:NotifyLocalized(errorMsg)
return false
end
if ((!entity.canUse or (entity.nextUseTime and entity.nextUseTime > CurTime())) or (entity:GetClass() == "ix_rationdispenser" and !entity:GetEnabled())) then
client:NotifyLocalized("This terminal is offline or in use.")
return false
else
client.ixCouponUsed = itemTable.id
-- Check for citizen id(s)
local idCards = character:GetInventory():GetItemsByUniqueID("id_card")
if (#idCards == 1) then
idCards[1]:LoadOwnerGenericData(entity.CheckIdCardCoupon, entity.CheckIdError, client, entity, itemTable.amount)
else
netstream.Start(client, "CIDSelectorCoupon", entity)
end
return false
end
end
client:NotifyLocalized(errorMsg)
return false
end
}

View File

@@ -0,0 +1,17 @@
--[[
| 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 = "100 Credits Coupon"
ITEM.model = Model("models/willardnetworks/props/rationcoupon3.mdl")
ITEM.amount = 100
ITEM.category = "Combine"
ITEM.maxStackSize = 5
ITEM.colorAppendix = {["blue"] = "This coupon generates 100 Credits when redeemed at a Ration Dispenser or a Civil Terminal."}

View File

@@ -0,0 +1,17 @@
--[[
| 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 = "10 Credits Coupon"
ITEM.model = Model("models/willardnetworks/props/rationcoupon.mdl")
ITEM.amount = 10
ITEM.category = "Combine"
ITEM.maxStackSize = 5
ITEM.colorAppendix = {["blue"] = "This coupon generates 10 Credits when redeemed at a Ration Dispenser or a Civil Terminal."}

View File

@@ -0,0 +1,17 @@
--[[
| 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 = "25 Credits Coupon"
ITEM.model = Model("models/willardnetworks/props/rationcoupon2.mdl")
ITEM.amount = 25
ITEM.category = "Combine"
ITEM.maxStackSize = 5
ITEM.colorAppendix = {["blue"] = "This coupon generates 25 Credits when redeemed at a Ration Dispenser or a Civil Terminal."}

View File

@@ -0,0 +1,17 @@
--[[
| 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 = "50 Credits Coupon"
ITEM.model = Model("models/willardnetworks/props/rationcoupon3.mdl")
ITEM.amount = 50
ITEM.category = "Combine"
ITEM.maxStackSize = 5
ITEM.colorAppendix = {["blue"] = "This coupon generates 50 Credits when redeemed at a Ration Dispenser or a Civil Terminal."}

View File

@@ -0,0 +1,17 @@
--[[
| 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 = "5 Credits Coupon"
ITEM.model = Model("models/willardnetworks/props/rationcoupon.mdl")
ITEM.amount = 5
ITEM.category = "Combine"
ITEM.maxStackSize = 5
ITEM.colorAppendix = {["blue"] = "This coupon generates 5 Credits when redeemed at a Ration Dispenser or a Civil Terminal."}

View File

@@ -0,0 +1,17 @@
--[[
| 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 = "15 Credits Coupon"
ITEM.model = Model("models/willardnetworks/props/rationcoupon.mdl")
ITEM.amount = 15
ITEM.category = "Combine"
ITEM.maxStackSize = 5
ITEM.colorAppendix = {["blue"] = "This coupon generates 15 Credits when redeemed at a Ration Dispenser or a Civil Terminal."}

View File

@@ -0,0 +1,17 @@
--[[
| 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 = "20 Credits Coupon"
ITEM.model = Model("models/willardnetworks/props/rationcoupon2.mdl")
ITEM.amount = 20
ITEM.category = "Combine"
ITEM.maxStackSize = 5
ITEM.colorAppendix = {["blue"] = "This coupon generates 20 Credits when redeemed at a Ration Dispenser or a Civil Terminal."}

View File

@@ -0,0 +1,17 @@
--[[
| 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 = "30 Credits Coupon"
ITEM.model = Model("models/willardnetworks/props/rationcoupon3.mdl")
ITEM.amount = 30
ITEM.category = "Combine"
ITEM.maxStackSize = 5
ITEM.colorAppendix = {["blue"] = "This coupon generates 30 Credits when redeemed at a Ration Dispenser or a Civil Terminal."}

View File

@@ -0,0 +1,48 @@
--[[
| 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 = "Civil Protection Ration"
ITEM.model = Model("models/willardnetworks/rations/wn_new_ration.mdl")
ITEM.skin = 4
ITEM.description = "A stark black and white food packet, designed specifically for the regime's brutal police force. The minimalist, utilitarian design reflects the harsh and uncompromising nature of its recipients."
ITEM.items = {"metropolicesupplements", "nutrientdrink", "coupon_medium"}
ITEM.category = "Combine"
ITEM.iconCam = {
pos = Vector(-509.64, -427.61, 310.24),
ang = Angle(25, 400.56, 0),
fov = 1.27
}
ITEM.functions.Open = {
OnRun = function(itemTable)
local client = itemTable.player
local character = client:GetCharacter()
for _, v in ipairs(itemTable.items) do
if (!character:GetInventory():Add(v)) then
ix.item.Spawn(v, client)
end
end
client:EmitSound("ambient/fire/mtov_flame2.wav", 75, math.random(160, 180), 0.35)
end
}
ITEM.holdData = {
vectorOffset = {
right = -3.5,
up = 0,
forward = 1.5
},
angleOffset = {
right = 180,
up = 90,
forward = -70
},
}

View File

@@ -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.name = "Improved Ration"
ITEM.model = Model("models/willardnetworks/rations/wn_new_ration.mdl")
ITEM.skin = 6
ITEM.description = "A small, red plastic packet containing a slightly more palatable portion of food, though still far from desirable."
ITEM.items = {"fruit_apple", "proc_paste", "drink_breen_water", "coupon_basic"}
ITEM.category = "Combine"
ITEM.functions.Open = {
OnRun = function(itemTable)
local client = itemTable.player
local character = client:GetCharacter()
for _, v in ipairs(itemTable.items) do
if (!character:GetInventory():Add(v)) then
ix.item.Spawn(v, client)
end
end
client:EmitSound("ambient/fire/mtov_flame2.wav", 75, math.random(160, 180), 0.35)
end
}
ITEM.holdData = {
vectorOffset = {
right = -3.5,
up = 0,
forward = 1.5
},
angleOffset = {
right = 180,
up = 90,
forward = -70
},
}

View File

@@ -0,0 +1,48 @@
--[[
| 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 = "Loyalist Ration"
ITEM.model = Model("models/willardnetworks/food/ration_box.mdl")
ITEM.skin = 0
ITEM.description = "A small, blue ration box adorned with a red Combine logo, it contains a slightly more palatable portion of food, though still far from desirable."
ITEM.items = {"proc_mush", "fruit_apple", "drink_sparkling_water", "coupon_medium"}
ITEM.category = "Combine"
ITEM.iconCam = {
pos = Vector(-113.45, -94.87, 73.82),
ang = Angle(25, 400, 0),
fov = 6.1
}
ITEM.functions.Open = {
OnRun = function(itemTable)
local client = itemTable.player
local character = client:GetCharacter()
for _, v in ipairs(itemTable.items) do
if (!character:GetInventory():Add(v)) then
ix.item.Spawn(v, client)
end
end
client:EmitSound("ambient/fire/mtov_flame2.wav", 75, math.random(160, 180), 0.35)
end
}
ITEM.holdData = {
vectorOffset = {
right = -4,
up = 4,
forward = 4
},
angleOffset = {
right = 180,
up = -90,
forward = 0
},
}

View File

@@ -0,0 +1,48 @@
--[[
| 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 = "Priority Loyalist Ration"
ITEM.model = Model("models/willardnetworks/food/ration_box.mdl")
ITEM.skin = 2
ITEM.description = "A sleek plastic packet, meticulously designed for the loyalists of the regime. Embellished with the Combine's emblem, it holds a carefully portioned, albeit bland, sustenance."
ITEM.items = {"luxury_choc", "proc_mush", "drink_sparkling_water", "coupon_priority"}
ITEM.category = "Combine"
ITEM.iconCam = {
pos = Vector(-113.45, -94.87, 73.82),
ang = Angle(25, 400, 0),
fov = 6.1
}
ITEM.functions.Open = {
OnRun = function(itemTable)
local client = itemTable.player
local character = client:GetCharacter()
for _, v in ipairs(itemTable.items) do
if (!character:GetInventory():Add(v)) then
ix.item.Spawn(v, client)
end
end
client:EmitSound("ambient/fire/mtov_flame2.wav", 75, math.random(160, 180), 0.35)
end
}
ITEM.holdData = {
vectorOffset = {
right = -4,
up = 4,
forward = 4
},
angleOffset = {
right = 180,
up = -90,
forward = 0
},
}

View File

@@ -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.name = "Ration"
ITEM.model = Model("models/willardnetworks/rations/wn_new_ration.mdl")
ITEM.skin = 0
ITEM.description = "A small plastic packet containing a portion of unappetizing, tasteless mush. The substance inside appears bland and uninviting, with a texture reminiscent of thick paste."
ITEM.items = {"proc_paste", "drink_breen_water", "coupon_basic"}
ITEM.category = "Combine"
ITEM.functions.Open = {
OnRun = function(itemTable)
local client = itemTable.player
local character = client:GetCharacter()
for _, v in ipairs(itemTable.items) do
if (!character:GetInventory():Add(v)) then
ix.item.Spawn(v, client)
end
end
client:EmitSound("ambient/fire/mtov_flame2.wav", 75, math.random(160, 180), 0.35)
end
}
ITEM.holdData = {
vectorOffset = {
right = -3.5,
up = 0,
forward = 1.5
},
angleOffset = {
right = 180,
up = 90,
forward = -70
},
}

View File

@@ -0,0 +1,48 @@
--[[
| 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 = "True Loyalist Ration"
ITEM.model = Model("models/willardnetworks/food/ration_box.mdl")
ITEM.skin = 1
ITEM.description = "A sleek plastic packet, meticulously designed for the loyalists of the regime. Embellished with the Combine's emblem, it holds a rare meal inside, selected for those of high status."
ITEM.items = {"luxury_choc", "comfort_fish", "drink_premium_water", "coupon_medium"}
ITEM.category = "Combine"
ITEM.iconCam = {
pos = Vector(-113.45, -94.87, 73.82),
ang = Angle(25, 400, 0),
fov = 6.1
}
ITEM.functions.Open = {
OnRun = function(itemTable)
local client = itemTable.player
local character = client:GetCharacter()
for _, v in ipairs(itemTable.items) do
if (!character:GetInventory():Add(v)) then
ix.item.Spawn(v, client)
end
end
client:EmitSound("ambient/fire/mtov_flame2.wav", 75, math.random(160, 180), 0.35)
end
}
ITEM.holdData = {
vectorOffset = {
right = -4,
up = 4,
forward = 4
},
angleOffset = {
right = 180,
up = -90,
forward = 0
},
}

View File

@@ -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.name = "Underclass Ration"
ITEM.model = Model("models/willardnetworks/rations/wn_new_ration.mdl")
ITEM.description = "A small, grey plastic packet containing a portion of low-quality, tasteless slop. The contents look unappealing, with a dull, lifeless texture that resembles a thick and unpalatable paste."
ITEM.skin = 3
ITEM.items = {"proc_paste", "drink_breen_water"}
ITEM.category = "Combine"
ITEM.functions.Open = {
OnRun = function(itemTable)
local client = itemTable.player
local character = client:GetCharacter()
for _, v in ipairs(itemTable.items) do
if (!character:GetInventory():Add(v)) then
ix.item.Spawn(v, client)
end
end
client:EmitSound("ambient/fire/mtov_flame2.wav", 75, math.random(160, 180), 0.35)
end
}
ITEM.holdData = {
vectorOffset = {
right = -3.5,
up = 0,
forward = 1.5
},
angleOffset = {
right = 180,
up = 90,
forward = -70
},
}