Merge remote-tracking branch 'refs/remotes/wizards/master'
# Conflicts: # Content.Server/Traitor/Uplink/UplinkSystem.cs # Resources/Textures/Objects/Storage/Briefcases/briefcase_brown.rsi/icon.png # Resources/Textures/Objects/Storage/Briefcases/briefcase_brown.rsi/meta.json # Resources/Textures/Objects/Storage/boxes.rsi/beaker.png # Resources/Textures/Objects/Storage/boxes.rsi/bodybags.png # Resources/Textures/Objects/Storage/boxes.rsi/bottle.png # Resources/Textures/Objects/Storage/boxes.rsi/box.png # Resources/Textures/Objects/Storage/boxes.rsi/box_hug.png # Resources/Textures/Objects/Storage/boxes.rsi/box_of_doom.png # Resources/Textures/Objects/Storage/boxes.rsi/box_of_doom_big.png # Resources/Textures/Objects/Storage/boxes.rsi/box_olive.png # Resources/Textures/Objects/Storage/boxes.rsi/box_science.png # Resources/Textures/Objects/Storage/boxes.rsi/box_security.png # Resources/Textures/Objects/Storage/boxes.rsi/boxwide.png # Resources/Textures/Objects/Storage/boxes.rsi/boxwidetoy.png # Resources/Textures/Objects/Storage/boxes.rsi/candle.png # Resources/Textures/Objects/Storage/boxes.rsi/circuit.png # Resources/Textures/Objects/Storage/boxes.rsi/clown.png # Resources/Textures/Objects/Storage/boxes.rsi/darts.png # Resources/Textures/Objects/Storage/boxes.rsi/disk.png # Resources/Textures/Objects/Storage/boxes.rsi/emergencytank.png # Resources/Textures/Objects/Storage/boxes.rsi/encryptokey.png # Resources/Textures/Objects/Storage/boxes.rsi/evidence_markers.png # Resources/Textures/Objects/Storage/boxes.rsi/extendedtank.png # Resources/Textures/Objects/Storage/boxes.rsi/flare.png # Resources/Textures/Objects/Storage/boxes.rsi/flashbang.png # Resources/Textures/Objects/Storage/boxes.rsi/forensic.png # Resources/Textures/Objects/Storage/boxes.rsi/glasses.png # Resources/Textures/Objects/Storage/boxes.rsi/handcuff.png # Resources/Textures/Objects/Storage/boxes.rsi/headset.png # Resources/Textures/Objects/Storage/boxes.rsi/heart.png # Resources/Textures/Objects/Storage/boxes.rsi/holo.png # Resources/Textures/Objects/Storage/boxes.rsi/implant.png # Resources/Textures/Objects/Storage/boxes.rsi/inflatable.png # Resources/Textures/Objects/Storage/boxes.rsi/internals.png # Resources/Textures/Objects/Storage/boxes.rsi/latex.png # Resources/Textures/Objects/Storage/boxes.rsi/light.png # Resources/Textures/Objects/Storage/boxes.rsi/lightmixed.png # Resources/Textures/Objects/Storage/boxes.rsi/lighttube.png # Resources/Textures/Objects/Storage/boxes.rsi/magazine.png # Resources/Textures/Objects/Storage/boxes.rsi/meson.png # Resources/Textures/Objects/Storage/boxes.rsi/meta.json # Resources/Textures/Objects/Storage/boxes.rsi/mousetraps.png # Resources/Textures/Objects/Storage/boxes.rsi/nitrile.png # Resources/Textures/Objects/Storage/boxes.rsi/omegacart.png # Resources/Textures/Objects/Storage/boxes.rsi/pda.png # Resources/Textures/Objects/Storage/boxes.rsi/pillbox.png # Resources/Textures/Objects/Storage/boxes.rsi/sechud.png # Resources/Textures/Objects/Storage/boxes.rsi/shellbeanbag.png # Resources/Textures/Objects/Storage/boxes.rsi/shellflare.png # Resources/Textures/Objects/Storage/boxes.rsi/shellflash.png # Resources/Textures/Objects/Storage/boxes.rsi/shellincendiary.png # Resources/Textures/Objects/Storage/boxes.rsi/shelllethal.png # Resources/Textures/Objects/Storage/boxes.rsi/shellpractice.png # Resources/Textures/Objects/Storage/boxes.rsi/shellslug.png # Resources/Textures/Objects/Storage/boxes.rsi/shelltoy.png # Resources/Textures/Objects/Storage/boxes.rsi/solution_trays.png # Resources/Textures/Objects/Storage/boxes.rsi/sterile.png # Resources/Textures/Objects/Storage/boxes.rsi/swab.png # Resources/Textures/Objects/Storage/boxes.rsi/syringe.png # Resources/Textures/Objects/Storage/boxes.rsi/trashbag.png # Resources/Textures/Objects/Storage/boxes.rsi/vials.png # Resources/Textures/Objects/Storage/boxes.rsi/writing.png # Resources/Textures/Objects/Storage/boxes.rsi/writing_of_doom.png # Resources/Textures/Objects/Storage/boxes.rsi/ziptie.png # Resources/migration.yml
|
|
@ -27,13 +27,12 @@ public sealed partial class BuyerAntagCondition : ListingCondition
|
|||
public override bool Condition(ListingConditionArgs args)
|
||||
{
|
||||
var ent = args.EntityManager;
|
||||
var minds = ent.System<SharedMindSystem>();
|
||||
|
||||
if (!minds.TryGetMind(args.Buyer, out var mindId, out var mind))
|
||||
return true;
|
||||
if (!ent.HasComponent<MindComponent>(args.Buyer))
|
||||
return true; // inanimate objects don't have minds
|
||||
|
||||
var roleSystem = ent.System<SharedRoleSystem>();
|
||||
var roles = roleSystem.MindGetAllRoleInfo(mindId);
|
||||
var roles = roleSystem.MindGetAllRoleInfo(args.Buyer);
|
||||
|
||||
if (Blacklist != null)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -30,14 +30,12 @@ public sealed partial class BuyerDepartmentCondition : ListingCondition
|
|||
var prototypeManager = IoCManager.Resolve<IPrototypeManager>();
|
||||
|
||||
var ent = args.EntityManager;
|
||||
var minds = ent.System<SharedMindSystem>();
|
||||
|
||||
// this is for things like surplus crate
|
||||
if (!minds.TryGetMind(args.Buyer, out var mindId, out _))
|
||||
return true;
|
||||
if (!ent.TryGetComponent<MindComponent>(args.Buyer, out var _))
|
||||
return true; // inanimate objects don't have minds
|
||||
|
||||
var jobs = ent.System<SharedJobSystem>();
|
||||
jobs.MindTryGetJob(mindId, out var job);
|
||||
jobs.MindTryGetJob(args.Buyer, out var job);
|
||||
|
||||
if (Blacklist != null && job != null)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -27,14 +27,12 @@ public sealed partial class BuyerJobCondition : ListingCondition
|
|||
public override bool Condition(ListingConditionArgs args)
|
||||
{
|
||||
var ent = args.EntityManager;
|
||||
var minds = ent.System<SharedMindSystem>();
|
||||
|
||||
// this is for things like surplus crate
|
||||
if (!minds.TryGetMind(args.Buyer, out var mindId, out _))
|
||||
return true;
|
||||
if (!ent.TryGetComponent<MindComponent>(args.Buyer, out var _))
|
||||
return true; // inanimate objects don't have minds
|
||||
|
||||
var jobs = ent.System<SharedJobSystem>();
|
||||
jobs.MindTryGetJob(mindId, out var job);
|
||||
jobs.MindTryGetJob(args.Buyer, out var job);
|
||||
|
||||
if (Blacklist != null)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ using Content.Shared.Humanoid;
|
|||
using Content.Shared.Store;
|
||||
using Content.Shared.Humanoid.Prototypes;
|
||||
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set;
|
||||
using Content.Shared.Mind;
|
||||
|
||||
namespace Content.Server.Store.Conditions;
|
||||
|
||||
|
|
@ -27,7 +28,10 @@ public sealed partial class BuyerSpeciesCondition : ListingCondition
|
|||
{
|
||||
var ent = args.EntityManager;
|
||||
|
||||
if (!ent.TryGetComponent<HumanoidAppearanceComponent>(args.Buyer, out var appearance))
|
||||
if (!ent.TryGetComponent<MindComponent>(args.Buyer, out var mind))
|
||||
return true; // needed to obtain body entityuid to check for humanoid appearance
|
||||
|
||||
if (!ent.TryGetComponent<HumanoidAppearanceComponent>(mind.OwnedEntity, out var appearance))
|
||||
return true; // inanimate or non-humanoid entities should be handled elsewhere, main example being surplus crates
|
||||
|
||||
if (Blacklist != null)
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ using JetBrains.Annotations;
|
|||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Utility;
|
||||
using System.Linq;
|
||||
using Content.Shared.Mind;
|
||||
|
||||
namespace Content.Server.Store.Systems;
|
||||
|
||||
|
|
@ -69,10 +70,13 @@ public sealed partial class StoreSystem : EntitySystem
|
|||
if (!component.OwnerOnly)
|
||||
return;
|
||||
|
||||
component.AccountOwner ??= args.User;
|
||||
if (!_mind.TryGetMind(args.User, out var mind, out _))
|
||||
return;
|
||||
|
||||
component.AccountOwner ??= mind;
|
||||
DebugTools.Assert(component.AccountOwner != null);
|
||||
|
||||
if (component.AccountOwner == args.User)
|
||||
if (component.AccountOwner == mind)
|
||||
return;
|
||||
|
||||
_popup.PopupEntity(Loc.GetString("store-not-account-owner", ("store", uid)), uid, args.User);
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ using Content.Shared.FixedPoint;
|
|||
using Content.Shared.Hands.EntitySystems;
|
||||
using Content.Shared.Implants;
|
||||
using Content.Shared.Inventory;
|
||||
using Content.Shared.Mind;
|
||||
using Content.Shared.PDA;
|
||||
using Content.Shared.Store;
|
||||
using Content.Shared.Store.Components;
|
||||
|
|
@ -20,6 +21,7 @@ public sealed class UplinkSystem : EntitySystem
|
|||
[Dependency] private readonly IPrototypeManager _proto = default!;
|
||||
[Dependency] private readonly StoreSystem _store = default!;
|
||||
[Dependency] private readonly SharedSubdermalImplantSystem _subdermalImplant = default!;
|
||||
[Dependency] private readonly SharedMindSystem _mind = default!;
|
||||
[Dependency] private readonly TagSystem _tagSystem = default!;
|
||||
|
||||
[ValidatePrototypeId<CurrencyPrototype>]
|
||||
|
|
@ -63,8 +65,12 @@ public sealed class UplinkSystem : EntitySystem
|
|||
/// </summary>
|
||||
public void SetUplink(EntityUid user, EntityUid uplink, FixedPoint2 balance, bool giveDiscounts)
|
||||
{
|
||||
if (!_mind.TryGetMind(user, out var mind, out _))
|
||||
return;
|
||||
|
||||
var store = EnsureComp<StoreComponent>(uplink);
|
||||
store.AccountOwner = user;
|
||||
|
||||
store.AccountOwner = mind;
|
||||
|
||||
store.Balance.Clear();
|
||||
_store.TryAddCurrency(new Dictionary<string, FixedPoint2> { { TelecrystalCurrencyPrototype, balance } },
|
||||
|
|
@ -72,10 +78,10 @@ public sealed class UplinkSystem : EntitySystem
|
|||
store);
|
||||
|
||||
var uplinkInitializedEvent = new StoreInitializedEvent(
|
||||
TargetUser: user,
|
||||
TargetUser: mind,
|
||||
Store: uplink,
|
||||
UseDiscounts: giveDiscounts,
|
||||
Listings: _store.GetAvailableListings(user, uplink, store)
|
||||
Listings: _store.GetAvailableListings(mind, uplink, store)
|
||||
.ToArray());
|
||||
RaiseLocalEvent(ref uplinkInitializedEvent);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,13 +13,13 @@ public sealed partial class EnsnareableComponent : Component
|
|||
/// <summary>
|
||||
/// How much should this slow down the entities walk?
|
||||
/// </summary>
|
||||
[DataField]
|
||||
[DataField, AutoNetworkedField]
|
||||
public float WalkSpeed = 1.0f;
|
||||
|
||||
/// <summary>
|
||||
/// How much should this slow down the entities sprint?
|
||||
/// </summary>
|
||||
[DataField]
|
||||
[DataField, AutoNetworkedField]
|
||||
public float SprintSpeed = 1.0f;
|
||||
|
||||
/// <summary>
|
||||
|
|
|
|||
|
|
@ -38,6 +38,12 @@ public sealed partial class EnsnaringComponent : Component
|
|||
[DataField]
|
||||
public float StaminaDamage = 55f;
|
||||
|
||||
/// <summary>
|
||||
/// How many times can the ensnare be applied to the same target?
|
||||
/// </summary>
|
||||
[DataField]
|
||||
public float MaxEnsnares = 1;
|
||||
|
||||
/// <summary>
|
||||
/// Should this ensnare someone when thrown?
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -256,23 +256,18 @@ public abstract class SharedEnsnareableSystem : EntitySystem
|
|||
if (!TryComp<EnsnareableComponent>(target, out var ensnareable))
|
||||
return false;
|
||||
|
||||
// Need to insert before free legs check.
|
||||
Container.Insert(ensnare, ensnareable.Container);
|
||||
var numEnsnares = ensnareable.Container.ContainedEntities.Count;
|
||||
|
||||
var legs = _body.GetBodyChildrenOfType(target, BodyPartType.Leg).Count();
|
||||
var ensnaredLegs = (2 * ensnareable.Container.ContainedEntities.Count);
|
||||
var freeLegs = legs - ensnaredLegs;
|
||||
|
||||
if (freeLegs > 0)
|
||||
//Don't do anything if the maximum number of ensnares is applied.
|
||||
if (numEnsnares >= component.MaxEnsnares)
|
||||
return false;
|
||||
|
||||
// Apply stamina damage to target if they weren't ensnared before.
|
||||
if (ensnareable.IsEnsnared != true)
|
||||
Container.Insert(ensnare, ensnareable.Container);
|
||||
|
||||
// Apply stamina damage to target
|
||||
if (TryComp<StaminaComponent>(target, out var stamina))
|
||||
{
|
||||
if (TryComp<StaminaComponent>(target, out var stamina))
|
||||
{
|
||||
_stamina.TakeStaminaDamage(target, component.StaminaDamage, with: ensnare, component: stamina);
|
||||
}
|
||||
_stamina.TakeStaminaDamage(target, component.StaminaDamage, with: ensnare, component: stamina);
|
||||
}
|
||||
|
||||
component.Ensnared = target;
|
||||
|
|
|
|||
|
|
@ -37,10 +37,10 @@ public sealed partial class StoreComponent : Component
|
|||
public HashSet<ProtoId<CurrencyPrototype>> CurrencyWhitelist = new();
|
||||
|
||||
/// <summary>
|
||||
/// The person who "owns" the store/account. Used if you want the listings to be fixed
|
||||
/// The person/mind who "owns" the store/account. Used if you want the listings to be fixed
|
||||
/// regardless of who activated it. I.E. role specific items for uplinks.
|
||||
/// </summary>
|
||||
[ViewVariables(VVAccess.ReadWrite)]
|
||||
[DataField]
|
||||
public EntityUid? AccountOwner = null;
|
||||
|
||||
/// <summary>
|
||||
|
|
|
|||
|
|
@ -1,22 +1,4 @@
|
|||
Entries:
|
||||
- author: ArchRBX
|
||||
changes:
|
||||
- message: Mass scanners and shuttle consoles now display coordinates beneath IFF
|
||||
labels
|
||||
type: Add
|
||||
- message: IFF labels that are beyond the viewport extents maintain their heading
|
||||
and don't hug corners
|
||||
type: Fix
|
||||
id: 7396
|
||||
time: '2024-09-19T01:25:47.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/31501
|
||||
- author: coffeeware
|
||||
changes:
|
||||
- message: a powered TEG won't produce infinite power when destroyed
|
||||
type: Fix
|
||||
id: 7397
|
||||
time: '2024-09-19T02:15:44.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/29972
|
||||
- author: Boaz1111
|
||||
changes:
|
||||
- message: Added plasma and uranium arrows.
|
||||
|
|
@ -3910,3 +3892,17 @@
|
|||
id: 7895
|
||||
time: '2025-02-03T23:33:14.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/32934
|
||||
- author: ps3moira
|
||||
changes:
|
||||
- message: Changed 3D item sprites to cabinet perspective
|
||||
type: Tweak
|
||||
id: 7896
|
||||
time: '2025-02-04T07:52:10.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/34293
|
||||
- author: impubbi
|
||||
changes:
|
||||
- message: Bolas will now only be applied once.
|
||||
type: Fix
|
||||
id: 7897
|
||||
time: '2025-02-04T16:11:46.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/34723
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@
|
|||
id: ServiceSmokeables
|
||||
icon:
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/green.rsi
|
||||
state: closed
|
||||
state: icon
|
||||
product: CrateServiceSmokeables
|
||||
cost: 1500
|
||||
category: cargoproduct-category-name-service
|
||||
|
|
@ -62,7 +62,7 @@
|
|||
id: ServiceCustomSmokable
|
||||
icon:
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/green.rsi
|
||||
state: closed
|
||||
state: icon
|
||||
product: CrateServiceCustomSmokable
|
||||
cost: 1000
|
||||
category: cargoproduct-category-name-service
|
||||
|
|
|
|||
|
|
@ -202,7 +202,7 @@
|
|||
- id: FoodCondimentPacketKetchup
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: box_olive
|
||||
- state: box
|
||||
- state: writing
|
||||
|
||||
- type: entity
|
||||
|
|
|
|||
|
|
@ -493,9 +493,6 @@
|
|||
state: box
|
||||
layers:
|
||||
- state: box
|
||||
map: ["closeLayer"]
|
||||
- state: box-open
|
||||
map: ["openLayer"]
|
||||
- type: Item
|
||||
sprite: Objects/Storage/Happyhonk/clown.rsi
|
||||
heldPrefix: box
|
||||
|
|
|
|||
|
|
@ -6,11 +6,7 @@
|
|||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/green.rsi
|
||||
layers:
|
||||
- state: closed
|
||||
map: ["closeLayer"]
|
||||
- state: open
|
||||
map: ["openLayer"]
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/green.rsi
|
||||
size: Normal
|
||||
|
|
@ -37,8 +33,7 @@
|
|||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/red.rsi
|
||||
layers:
|
||||
- state: closed
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/red.rsi
|
||||
- type: StorageFill
|
||||
|
|
@ -54,8 +49,7 @@
|
|||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/blue.rsi
|
||||
layers:
|
||||
- state: closed
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/blue.rsi
|
||||
- type: StorageFill
|
||||
|
|
@ -71,8 +65,7 @@
|
|||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/black.rsi
|
||||
layers:
|
||||
- state: closed
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/black.rsi
|
||||
- type: StorageFill
|
||||
|
|
@ -88,8 +81,7 @@
|
|||
components:
|
||||
- type: Sprite
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/mixed.rsi
|
||||
layers:
|
||||
- state: closed
|
||||
state: icon
|
||||
- type: Item
|
||||
sprite: Objects/Consumable/Smokeables/Cigarettes/Cartons/mixed.rsi
|
||||
- type: StorageFill
|
||||
|
|
|
|||
|
|
@ -25,26 +25,6 @@
|
|||
- type: Appearance
|
||||
|
||||
# Boxes
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxAntiMateriel
|
||||
id: MagazineBoxAntiMaterielBig
|
||||
name: ammunition box (.60 anti-materiel)
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
capacity: 30
|
||||
proto: CartridgeAntiMateriel
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base-b
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: magb-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: MagazineVisuals
|
||||
magState: magb
|
||||
steps: 4
|
||||
zeroVisible: false
|
||||
- type: Appearance
|
||||
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxAntiMateriel
|
||||
id: MagazineBoxAntiMateriel
|
||||
|
|
|
|||
|
|
@ -25,46 +25,6 @@
|
|||
- type: Appearance
|
||||
|
||||
# Boxes
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxCaselessRifle
|
||||
id: MagazineBoxCaselessRifle10x24
|
||||
name: ammunition box (.25 caseless)
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
capacity: 200
|
||||
proto: CartridgeCaselessRifle
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base-10x24
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag10-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: MagazineVisuals
|
||||
magState: mag10
|
||||
steps: 4
|
||||
zeroVisible: false
|
||||
- type: Appearance
|
||||
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxCaselessRifle
|
||||
id: MagazineBoxCaselessRifleBig
|
||||
name: ammunition box (.25 caseless)
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
capacity: 200
|
||||
proto: CartridgeCaselessRifle
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base-b
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: magb-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: MagazineVisuals
|
||||
magState: magb
|
||||
steps: 4
|
||||
zeroVisible: false
|
||||
- type: Appearance
|
||||
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxCaselessRifle
|
||||
id: MagazineBoxCaselessRifle
|
||||
|
|
|
|||
|
|
@ -29,21 +29,17 @@
|
|||
parent: BaseMagazineBoxLightRifle
|
||||
id: MagazineBoxLightRifleBig
|
||||
name: ammunition box (.30 rifle)
|
||||
suffix: Big
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
capacity: 200
|
||||
proto: CartridgeLightRifle
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base-b
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: magb-1
|
||||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: MagazineVisuals
|
||||
magState: magb
|
||||
steps: 4
|
||||
zeroVisible: false
|
||||
- type: Appearance
|
||||
|
||||
- type: entity
|
||||
parent: BaseMagazineBoxLightRifle
|
||||
|
|
|
|||
|
|
@ -28,18 +28,19 @@
|
|||
parent: BaseMagazineBoxRifle
|
||||
id: MagazineBoxRifleBig
|
||||
name: ammunition box (.20 rifle)
|
||||
suffix: Big
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
capacity: 200
|
||||
proto: CartridgeRifle
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base-b
|
||||
- state: base-big
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: magb-1
|
||||
- state: mag-big-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- type: MagazineVisuals
|
||||
magState: magb
|
||||
magState: mag-big
|
||||
steps: 4
|
||||
zeroVisible: false
|
||||
- type: Appearance
|
||||
|
|
|
|||
|
|
@ -52,11 +52,15 @@
|
|||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: ShellShotgunBeanbag
|
||||
- type: MagazineVisuals
|
||||
magState: mag-beanbag
|
||||
steps: 5
|
||||
zeroVisible: false
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
- state: mag-beanbag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- state: beanbag
|
||||
|
||||
|
|
@ -83,14 +87,14 @@
|
|||
- type: BallisticAmmoProvider
|
||||
proto: ShellShotgunSlug
|
||||
- type: MagazineVisuals
|
||||
magState: mag-alt
|
||||
magState: mag-slug
|
||||
steps: 5
|
||||
zeroVisible: false
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-alt-1
|
||||
- state: mag-slug-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- state: slug
|
||||
|
||||
|
|
@ -101,11 +105,15 @@
|
|||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: ShellShotgunFlare
|
||||
- type: MagazineVisuals
|
||||
magState: mag-flare
|
||||
steps: 5
|
||||
zeroVisible: false
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
- state: mag-flare-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- state: flare
|
||||
|
||||
|
|
@ -116,11 +124,15 @@
|
|||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: ShellShotgunIncendiary
|
||||
- type: MagazineVisuals
|
||||
magState: mag-incend
|
||||
steps: 5
|
||||
zeroVisible: false
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
- state: mag-incend-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- state: incendiary
|
||||
|
||||
|
|
@ -132,14 +144,14 @@
|
|||
- type: BallisticAmmoProvider
|
||||
proto: ShellShotgunUranium
|
||||
- type: MagazineVisuals
|
||||
magState: mag-alt
|
||||
magState: mag-uranium
|
||||
steps: 5
|
||||
zeroVisible: false
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-alt-1
|
||||
- state: mag-uranium-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- state: uranium
|
||||
|
||||
|
|
@ -150,11 +162,15 @@
|
|||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: ShellShotgunPractice
|
||||
- type: MagazineVisuals
|
||||
magState: mag-practice
|
||||
steps: 5
|
||||
zeroVisible: false
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
- state: mag-practice-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- state: practice
|
||||
|
||||
|
|
@ -165,10 +181,14 @@
|
|||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: ShellTranquilizer
|
||||
- type: MagazineVisuals
|
||||
magState: mag-tranq
|
||||
steps: 5
|
||||
zeroVisible: false
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
- state: mag-tranq-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- state: tranquilizer
|
||||
|
|
|
|||
|
|
@ -39,11 +39,15 @@
|
|||
- type: BallisticAmmoProvider
|
||||
proto: CartridgeCap
|
||||
capacity: 20
|
||||
- type: MagazineVisuals
|
||||
magState: mag-cap
|
||||
steps: 4
|
||||
zeroVisible: false
|
||||
- type: Sprite
|
||||
sprite: Objects/Weapons/Guns/Ammunition/Boxes/magnum.rsi
|
||||
layers:
|
||||
- state: capbase
|
||||
- state: base
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
- state: mag-cap-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
- state: cap
|
||||
- state: capbase
|
||||
|
|
|
|||
|
|
@ -241,20 +241,6 @@
|
|||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
|
||||
- type: entity
|
||||
id: MagazinePistolHighCapacityRubber
|
||||
name: machine pistol magazine (.35 auto rubber)
|
||||
parent: BaseMagazinePistolHighCapacity
|
||||
components:
|
||||
- type: BallisticAmmoProvider
|
||||
proto: CartridgePistol
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: rubber
|
||||
map: ["enum.GunVisualLayers.Base"]
|
||||
- state: mag-1
|
||||
map: ["enum.GunVisualLayers.Mag"]
|
||||
|
||||
- type: entity
|
||||
id: MagazinePistolSubMachineGun
|
||||
name: SMG magazine (.35 auto)
|
||||
|
|
|
|||
|
|
@ -47,4 +47,5 @@
|
|||
staminaDamage: 0 # anything but this is gamebreaking
|
||||
canThrowTrigger: true
|
||||
canMoveBreakout: true
|
||||
maxEnsnares: 1
|
||||
- type: LandAtCursor
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@
|
|||
whitelist:
|
||||
components:
|
||||
- Body
|
||||
- MindContainer
|
||||
canTargetSelf: false
|
||||
interactOnMiss: false
|
||||
sound: !type:SoundPathSpecifier
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 637 B After Width: | Height: | Size: 491 B |
|
Before Width: | Height: | Size: 371 B After Width: | Height: | Size: 424 B |
|
Before Width: | Height: | Size: 309 B After Width: | Height: | Size: 475 B |
|
Before Width: | Height: | Size: 492 B After Width: | Height: | Size: 492 B |
|
Before Width: | Height: | Size: 427 B After Width: | Height: | Size: 481 B |
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/c6e3401f2e7e1e55c57060cdf956a98ef1fefc24. Stonk pocket by Tayrtahn on GitHub. Carp pocket by deltanedas (GitHub).",
|
||||
"copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/c6e3401f2e7e1e55c57060cdf956a98ef1fefc24. Stonk pocket by Tayrtahn on GitHub. Carp pocket by deltanedas (GitHub), modified by ps3moira (GitHub)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 325 B After Width: | Height: | Size: 441 B |
|
Before Width: | Height: | Size: 355 B After Width: | Height: | Size: 449 B |
|
Before Width: | Height: | Size: 374 B After Width: | Height: | Size: 479 B |
|
Before Width: | Height: | Size: 254 B After Width: | Height: | Size: 356 B |
|
Before Width: | Height: | Size: 323 B After Width: | Height: | Size: 374 B |
|
Before Width: | Height: | Size: 245 B After Width: | Height: | Size: 328 B |
|
Before Width: | Height: | Size: 146 B After Width: | Height: | Size: 161 B |
|
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 159 B |
|
Before Width: | Height: | Size: 147 B After Width: | Height: | Size: 158 B |
|
Before Width: | Height: | Size: 147 B After Width: | Height: | Size: 159 B |
|
Before Width: | Height: | Size: 147 B After Width: | Height: | Size: 159 B |
|
Before Width: | Height: | Size: 145 B After Width: | Height: | Size: 152 B |
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from tgstation and modified by Swept at https://github.com/tgstation/tgstation/commit/40d75cc340c63582fb66ce15bf75a36115f6bdaa",
|
||||
"copyright": "Taken from tgstation and modified by Swept at https://github.com/tgstation/tgstation/commit/40d75cc340c63582fb66ce15bf75a36115f6bdaa, further modified by ps3moira (github)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 137 B After Width: | Height: | Size: 149 B |
|
Before Width: | Height: | Size: 144 B After Width: | Height: | Size: 168 B |
|
Before Width: | Height: | Size: 149 B After Width: | Height: | Size: 157 B |
|
Before Width: | Height: | Size: 142 B After Width: | Height: | Size: 150 B |
|
Before Width: | Height: | Size: 137 B After Width: | Height: | Size: 154 B |
|
Before Width: | Height: | Size: 131 B After Width: | Height: | Size: 146 B |
|
Before Width: | Height: | Size: 269 B |
|
After Width: | Height: | Size: 349 B |
|
Before Width: | Height: | Size: 293 B After Width: | Height: | Size: 287 B |
|
Before Width: | Height: | Size: 275 B After Width: | Height: | Size: 290 B |
|
|
@ -1,17 +1,14 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/f18aa05685f13c8b424867e4219a1e727019c026",
|
||||
"copyright": "Made by ps3moira (github)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "open"
|
||||
},
|
||||
{
|
||||
"name": "closed"
|
||||
"name": "icon"
|
||||
},
|
||||
{
|
||||
"name": "inhand-left",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 340 B |
|
Before Width: | Height: | Size: 253 B |
|
After Width: | Height: | Size: 353 B |
|
Before Width: | Height: | Size: 257 B After Width: | Height: | Size: 297 B |
|
Before Width: | Height: | Size: 253 B After Width: | Height: | Size: 316 B |
|
|
@ -1,17 +1,14 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/f18aa05685f13c8b424867e4219a1e727019c026",
|
||||
"copyright": "Made by ps3moira (github)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "open"
|
||||
},
|
||||
{
|
||||
"name": "closed"
|
||||
"name": "icon"
|
||||
},
|
||||
{
|
||||
"name": "inhand-left",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 330 B |
|
Before Width: | Height: | Size: 254 B |
|
After Width: | Height: | Size: 369 B |
|
Before Width: | Height: | Size: 243 B After Width: | Height: | Size: 314 B |
|
Before Width: | Height: | Size: 244 B After Width: | Height: | Size: 319 B |
|
|
@ -1,17 +1,14 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/f18aa05685f13c8b424867e4219a1e727019c026",
|
||||
"copyright": "Made by ps3moira (github)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "open"
|
||||
},
|
||||
{
|
||||
"name": "closed"
|
||||
"name": "icon"
|
||||
},
|
||||
{
|
||||
"name": "inhand-left",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 320 B |
|
Before Width: | Height: | Size: 275 B |
|
After Width: | Height: | Size: 479 B |
|
Before Width: | Height: | Size: 247 B After Width: | Height: | Size: 671 B |
|
Before Width: | Height: | Size: 248 B After Width: | Height: | Size: 666 B |
|
|
@ -1,17 +1,14 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/f18aa05685f13c8b424867e4219a1e727019c026",
|
||||
"copyright": "Made by ps3moira (github)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "open"
|
||||
},
|
||||
{
|
||||
"name": "closed"
|
||||
"name": "icon"
|
||||
},
|
||||
{
|
||||
"name": "inhand-left",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 320 B |
|
Before Width: | Height: | Size: 255 B |
|
After Width: | Height: | Size: 351 B |
|
Before Width: | Height: | Size: 261 B After Width: | Height: | Size: 695 B |
|
Before Width: | Height: | Size: 252 B After Width: | Height: | Size: 676 B |
|
|
@ -1,17 +1,14 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/f18aa05685f13c8b424867e4219a1e727019c026",
|
||||
"copyright": "Made by ps3moira (github)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
},
|
||||
"states": [
|
||||
{
|
||||
"name": "open"
|
||||
},
|
||||
{
|
||||
"name": "closed"
|
||||
"name": "icon"
|
||||
},
|
||||
{
|
||||
"name": "inhand-left",
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 324 B |
|
Before Width: | Height: | Size: 254 B After Width: | Height: | Size: 351 B |
|
Before Width: | Height: | Size: 159 B After Width: | Height: | Size: 147 B |
|
Before Width: | Height: | Size: 293 B After Width: | Height: | Size: 287 B |
|
Before Width: | Height: | Size: 275 B After Width: | Height: | Size: 290 B |
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/f18aa05685f13c8b424867e4219a1e727019c026",
|
||||
"copyright": "Made by ps3moira (github)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 297 B After Width: | Height: | Size: 377 B |
|
Before Width: | Height: | Size: 292 B After Width: | Height: | Size: 367 B |
|
Before Width: | Height: | Size: 249 B After Width: | Height: | Size: 359 B |
|
Before Width: | Height: | Size: 159 B After Width: | Height: | Size: 152 B |
|
Before Width: | Height: | Size: 257 B After Width: | Height: | Size: 297 B |
|
Before Width: | Height: | Size: 253 B After Width: | Height: | Size: 316 B |
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/f18aa05685f13c8b424867e4219a1e727019c026",
|
||||
"copyright": "Made by ps3moira (github)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 300 B After Width: | Height: | Size: 398 B |
|
Before Width: | Height: | Size: 288 B After Width: | Height: | Size: 384 B |
|
Before Width: | Height: | Size: 234 B After Width: | Height: | Size: 372 B |
|
Before Width: | Height: | Size: 159 B After Width: | Height: | Size: 158 B |
|
Before Width: | Height: | Size: 243 B After Width: | Height: | Size: 314 B |
|
Before Width: | Height: | Size: 244 B After Width: | Height: | Size: 319 B |
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"version": 1,
|
||||
"license": "CC-BY-SA-3.0",
|
||||
"copyright": "Taken from cev-eris at commit https://github.com/discordia-space/CEV-Eris/commit/f18aa05685f13c8b424867e4219a1e727019c026",
|
||||
"copyright": "Made by ps3moira (github)",
|
||||
"size": {
|
||||
"x": 32,
|
||||
"y": 32
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 299 B After Width: | Height: | Size: 384 B |
|
Before Width: | Height: | Size: 292 B After Width: | Height: | Size: 434 B |