diff --git a/Content.Server/GameObjects/Components/Weapon/Ranged/Barrels/ServerMagazineBarrelComponent.cs b/Content.Server/GameObjects/Components/Weapon/Ranged/Barrels/ServerMagazineBarrelComponent.cs index ed7ec35452..cdda71816d 100644 --- a/Content.Server/GameObjects/Components/Weapon/Ranged/Barrels/ServerMagazineBarrelComponent.cs +++ b/Content.Server/GameObjects/Components/Weapon/Ranged/Barrels/ServerMagazineBarrelComponent.cs @@ -546,5 +546,6 @@ namespace Content.Server.GameObjects.Components.Weapon.Ranged.Barrels Box = 1 << 7, Pan = 1 << 8, Dart = 1 << 9, // Placeholder + CalicoTopMounted = 1 << 10, } } diff --git a/Resources/Prototypes/Entities/Effects/Markers/gamemode_conditional_spawners.yml b/Resources/Prototypes/Entities/Effects/Markers/gamemode_conditional_spawners.yml index aa8e264353..f026ba3d01 100644 --- a/Resources/Prototypes/Entities/Effects/Markers/gamemode_conditional_spawners.yml +++ b/Resources/Prototypes/Entities/Effects/Markers/gamemode_conditional_spawners.yml @@ -41,6 +41,7 @@ - RifleSTS - RifleVintorez - RifleWintermute + - RifleCalico chance: 0.75 gameRules: - RuleSuspicion @@ -289,6 +290,7 @@ - MagazineClRifle10x24 - MagazineClRiflePistol - MagazineLRifle + - MagazinePistolCalicoTopMounted chance: 0.95 gameRules: - RuleSuspicion diff --git a/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml b/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml index 37be27fe7b..b24b2d0d92 100644 --- a/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml +++ b/Resources/Prototypes/Entities/Mobs/NPCs/pets.yml @@ -169,6 +169,42 @@ normal: cat dead: cat_dead +- type: entity + save: false + name: calico cat + parent: PetBaseMob_Content + id: CatCalicoMob_Content + description: + drawdepth: Mobs + suffix: AI + components: + - type: Sprite + drawdepth: Mobs + sprite: Mobs/Pets/cat.rsi + layers: + - map: ["enum.DamageStateVisualLayers.Base"] + state: cat2 + - type: Icon + sprite: Mobs/Pets/cat.rsi + state: cat + - type: Collidable + shapes: + - !type:PhysShapeAabb + bounds: "-0.50,-0.25,0.30,0.25" + mask: + - Impassable + - MobImpassable + - VaultImpassable + - SmallImpassable + layer: + - Opaque + - MobImpassable + - type: Appearance + visuals: + - type: DamageStateVisualizer + normal: cat2 + dead: cat2_dead + - type: entity save: false name: sloth diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Pistol/magazines.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Pistol/magazines.yml index 2cd1763cd3..85bd3f04ed 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Pistol/magazines.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Ammunition/Pistol/magazines.yml @@ -103,6 +103,32 @@ steps: 6 zeroVisible: false +- type: entity + id: MagazinePistolCalicoTopMounted + name: Calico Magazine (.35 auto top-mounted) + parent: MagazinePistolSmgBase + components: + - type: RangedMagazine + caliber: Pistol + magazineType: CalicoTopMounted + fillPrototype: CartridgePistol + capacity: 100 + - type: Icon + sprite: Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi + - type: Sprite + sprite: Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi + layers: + - state: base + map: ["enum.RangedBarrelVisualLayers.Base"] + - state: mag-1 + shader: unshaded + - type: Appearance + visuals: + - type: MagVisualizer + magState: mag + steps: 1 + zeroVisible: false + - type: entity id: MagazinePistol name: magazine (.35 auto) diff --git a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml index f5b6503ddd..1d144ed9e7 100644 --- a/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml +++ b/Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml @@ -315,3 +315,43 @@ magState: mag steps: 1 zeroVisible: true + +- type: entity + name: calico m900 + parent: RifleBase + id: RifleCalico + description: A carbine with a unique cylindrical magazine design which allows for high capacity loads. + components: + - type: Sprite + sprite: Objects/Weapons/Guns/Rifles/calico.rsi + layers: + - state: base + map: ["enum.RangedBarrelVisualLayers.Base"] + - state: mag-0 + map: ["enum.RangedBarrelVisualLayers.Mag"] + - type: Icon + sprite: Objects/Weapons/Guns/Rifles/calico.rsi + - type: Item + size: 24 + sprite: Objects/Weapons/Guns/Rifles/calico.rsi + - type: RangedWeapon + - type: MagazineBarrel + magFillPrototype: MagazinePistolCalicoTopMounted + caliber: Pistol + magazineTypes: + - CalicoTopMounted + fireRate: 3 + minAngle: 0 + maxAngle: 25 + angleIncrease: 15 + angleDecay: 25 + soundGunshot: /Audio/Weapons/Guns/Gunshots/rifle2.ogg + soundRack: /Audio/Weapons/Guns/Cock/ltrifle_cock.ogg + soundMagInsert: /Audio/Weapons/Guns/MagIn/ltrifle_magin.ogg + soundMagEject: /Audio/Weapons/Guns/MagOut/ltrifle_magout.ogg + - type: Appearance + visuals: + - type: MagVisualizer + magState: mag + steps: 1 + zeroVisible: true diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/base.png b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/base.png new file mode 100644 index 0000000000..c52c684562 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/base.png differ diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/icon.png b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/icon.png new file mode 100644 index 0000000000..c52c684562 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/icon.png differ diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/mag-1.png b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/mag-1.png new file mode 100644 index 0000000000..c52c684562 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/mag-1.png differ diff --git a/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/meta.json new file mode 100644 index 0000000000..e4f2abdee0 --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Guns/Ammunition/Magazine/Pistol/calico_mag.rsi/meta.json @@ -0,0 +1,23 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "https://github.com/discordia-space/CEV-Eris/raw/aed9cbddbf9039dae1e4f02bab592248b0539431/icons/obj/ammo_mags.dmi", + "states": [ + { + "name": "icon", + "directions": 1 + }, + { + "name": "base", + "directions": 1 + }, + { + "name": "mag-1", + "directions": 1 + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/base.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/base.png new file mode 100644 index 0000000000..6b5c09158c Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/base.png differ diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/icon.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/icon.png new file mode 100644 index 0000000000..f1027fbd2c Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/icon.png differ diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/inhand-left.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/inhand-left.png new file mode 100644 index 0000000000..157e2a6d64 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/inhand-left.png differ diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/inhand-right.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/inhand-right.png new file mode 100644 index 0000000000..1b179d55a0 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/inhand-right.png differ diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/mag-0.png b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/mag-0.png new file mode 100644 index 0000000000..e37aa9a0e8 Binary files /dev/null and b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/mag-0.png differ diff --git a/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/meta.json b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/meta.json new file mode 100644 index 0000000000..f061c8a636 --- /dev/null +++ b/Resources/Textures/Objects/Weapons/Guns/Rifles/calico.rsi/meta.json @@ -0,0 +1,31 @@ +{ + "version": 1, + "size": { + "x": 32, + "y": 32 + }, + "license": "CC-BY-SA-3.0", + "copyright": "Yeeye", + "states": [ + { + "name": "icon", + "directions": 1 + }, + { + "name": "base", + "directions": 1 + }, + { + "name": "mag-0", + "directions": 1 + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +}