Skip to content

Commit

Permalink
Merge branch 'master' into Deep_frier
Browse files Browse the repository at this point in the history
  • Loading branch information
Adrian16199 authored Sep 27, 2023
2 parents fae18b8 + b2980d9 commit e856c41
Show file tree
Hide file tree
Showing 57 changed files with 629 additions and 82 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
namespace Content.Server.Abilities.Oni
{
[RegisterComponent]
public sealed partial class HeldByOniComponent : Component
{
public EntityUid Holder = default!;
}
}
14 changes: 14 additions & 0 deletions Content.Server/Nyanotrasen/Abilities/Oni/OniComponent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
using Content.Shared.Damage;

namespace Content.Server.Abilities.Oni
{
[RegisterComponent]
public sealed partial class OniComponent : Component
{
[DataField("modifiers", required: true)]
public DamageModifierSet MeleeModifiers = default!;

[DataField("stamDamageBonus")]
public float StamDamageMultiplier = 1.25f;
}
}
76 changes: 76 additions & 0 deletions Content.Server/Nyanotrasen/Abilities/Oni/OniSystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
using Content.Server.Tools;
using Content.Shared.Tools.Components;
using Content.Shared.Damage.Events;
using Content.Shared.Weapons.Melee.Events;
using Content.Shared.Weapons.Ranged.Components;
using Robust.Shared.Containers;

namespace Content.Server.Abilities.Oni
{
public sealed class OniSystem : EntitySystem
{
[Dependency] private readonly ToolSystem _toolSystem = default!;

public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent<OniComponent, EntInsertedIntoContainerMessage>(OnEntInserted);
SubscribeLocalEvent<OniComponent, EntRemovedFromContainerMessage>(OnEntRemoved);
SubscribeLocalEvent<OniComponent, MeleeHitEvent>(OnOniMeleeHit);
SubscribeLocalEvent<HeldByOniComponent, MeleeHitEvent>(OnHeldMeleeHit);
SubscribeLocalEvent<HeldByOniComponent, StaminaMeleeHitEvent>(OnStamHit);
}

private void OnEntInserted(EntityUid uid, OniComponent component, EntInsertedIntoContainerMessage args)
{
var heldComp = EnsureComp<HeldByOniComponent>(args.Entity);
heldComp.Holder = uid;

if (TryComp<ToolComponent>(args.Entity, out var tool) && _toolSystem.HasQuality(args.Entity, "Prying", tool))
tool.SpeedModifier *= 1.66f;

if (TryComp<GunComponent>(args.Entity, out var gun))
{
gun.MinAngle *= 15f;
gun.AngleIncrease *= 15f;
gun.MaxAngle *= 15f;
}
}

private void OnEntRemoved(EntityUid uid, OniComponent component, EntRemovedFromContainerMessage args)
{
if (TryComp<ToolComponent>(args.Entity, out var tool) && _toolSystem.HasQuality(args.Entity, "Prying", tool))
tool.SpeedModifier /= 1.66f;

if (TryComp<GunComponent>(args.Entity, out var gun))
{
gun.MinAngle /= 15f;
gun.AngleIncrease /= 15f;
gun.MaxAngle /= 15f;
}

RemComp<HeldByOniComponent>(args.Entity);
}

private void OnOniMeleeHit(EntityUid uid, OniComponent component, MeleeHitEvent args)
{
args.ModifiersList.Add(component.MeleeModifiers);
}

private void OnHeldMeleeHit(EntityUid uid, HeldByOniComponent component, MeleeHitEvent args)
{
if (!TryComp<OniComponent>(component.Holder, out var oni))
return;

args.ModifiersList.Add(oni.MeleeModifiers);
}

private void OnStamHit(EntityUid uid, HeldByOniComponent component, StaminaMeleeHitEvent args)
{
if (!TryComp<OniComponent>(component.Holder, out var oni))
return;

args.Multiplier *= oni.StamDamageMultiplier;
}
}
}
5 changes: 5 additions & 0 deletions Content.Shared/Humanoid/NamingSystem.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,11 @@ public string GetName(string species, Gender? gender = null)

switch (speciesProto.Naming)
{
// Start of Nyano code for Oni naming
case SpeciesNaming.LastNoFirst:
return Loc.GetString("namepreset-lastnofirst",
("first", GetFirstName(speciesProto, gender)), ("last", GetLastName(speciesProto)));
// End of Nyano code for Oni naming
case SpeciesNaming.TheFirstofLast:
return Loc.GetString("namepreset-thefirstoflast",
("first", GetFirstName(speciesProto, gender)), ("last", GetLastName(speciesProto)));
Expand Down
3 changes: 3 additions & 0 deletions Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs
Original file line number Diff line number Diff line change
Expand Up @@ -126,5 +126,8 @@ public enum SpeciesNaming : byte
{
FirstLast,
FirstDashFirst,
//Start of Nyano code for Oni naming
LastNoFirst,
//End of Nyano code for Oni naming
TheFirstofLast,
}
18 changes: 18 additions & 0 deletions Resources/Changelog/DeltaVChangelog.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,3 +77,21 @@ Entries:
message: Cargo Department is now the Logistics Department
id: 12
time: '2023-09-21T04:37:30.0000000+00:00'
- author: FluffiestFloof
changes:
- type: Remove
message: Clown Spiders no longer can squeeze through the vents.
id: 13
time: '2023-09-21T20:45:11.0000000+00:00'
- author: FluffiestFloof
changes:
- type: Add
message: Added the PSB emergency snack.
id: 14
time: '2023-09-26T02:57:54.0000000+00:00'
- author: FluffiestFloof
changes:
- type: Tweak
message: Changed chat messages to not have the names bold.
id: 15
time: '2023-09-26T16:47:58.0000000+00:00'
20 changes: 10 additions & 10 deletions Resources/Locale/en-US/chat/managers/chat-manager.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ chat-manager-whisper-headset-on-message = You can't whisper on the radio!
chat-manager-server-wrap-message = [bold]{$message}[/bold]
chat-manager-sender-announcement-wrap-message = [font size=14][bold]{$sender} Announcement:[/font][font size=12]
{$message}[/bold][/font]
chat-manager-entity-say-wrap-message = [bold]{$entityName}[/bold] {$verb}, [font={$fontType} size={$fontSize}]"{$message}"[/font]
chat-manager-entity-say-bold-wrap-message = [bold]{$entityName}[/bold] {$verb}, [font={$fontType} size={$fontSize}][bold]"{$message}"[/bold][/font]
chat-manager-entity-say-wrap-message = {$entityName} {$verb}, [font={$fontType} size={$fontSize}]"{$message}"[/font]
chat-manager-entity-say-bold-wrap-message = {$entityName} {$verb}, [font={$fontType} size={$fontSize}][bold]"{$message}"[/bold][/font]
chat-manager-entity-whisper-wrap-message = [font size=11][italic]{$entityName} whispers, "{$message}"[/italic][/font]
chat-manager-entity-whisper-unknown-wrap-message = [font size=11][italic]Someone whispers, "{$message}"[/italic][/font]
Expand All @@ -33,16 +33,16 @@ chat-manager-entity-me-wrap-message = [italic]{ PROPER($entity) ->
[true] {$entityName} {$message}[/italic]
}
chat-manager-entity-looc-wrap-message = LOOC: [bold]{$entityName}:[/bold] {$message}
chat-manager-send-ooc-wrap-message = OOC: [bold]{$playerName}:[/bold] {$message}
chat-manager-send-ooc-patron-wrap-message = OOC: [bold][color={$patronColor}]{$playerName}[/color]:[/bold] {$message}
chat-manager-entity-looc-wrap-message = LOOC: {$entityName}: {$message}
chat-manager-send-ooc-wrap-message = OOC: {$playerName}: {$message}
chat-manager-send-ooc-patron-wrap-message = OOC: [color={$patronColor}]{$playerName}[/color]: {$message}
chat-manager-send-dead-chat-wrap-message = {$deadChannelName}: [bold]{$playerName}:[/bold] {$message}
chat-manager-send-admin-dead-chat-wrap-message = {$adminChannelName}: [bold]({$userName}):[/bold] {$message}
chat-manager-send-admin-chat-wrap-message = {$adminChannelName}: [bold]{$playerName}:[/bold] {$message}
chat-manager-send-admin-announcement-wrap-message = [bold]{$adminChannelName}: {$message}[/bold]
chat-manager-send-dead-chat-wrap-message = {$deadChannelName}: {$playerName}: {$message}
chat-manager-send-admin-dead-chat-wrap-message = {$adminChannelName}: ({$userName}): {$message}
chat-manager-send-admin-chat-wrap-message = {$adminChannelName}: {$playerName}: {$message}
chat-manager-send-admin-announcement-wrap-message = {$adminChannelName}: {$message}
chat-manager-send-hook-ooc-wrap-message = OOC: [bold](D){$senderName}:[/bold] {$message}
chat-manager-send-hook-ooc-wrap-message = OOC: (D){$senderName}: {$message}
chat-manager-dead-channel-name = DEAD
chat-manager-admin-channel-name = ADMIN
Expand Down
4 changes: 2 additions & 2 deletions Resources/Locale/en-US/headset/headset-component.ftl
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Chat window radio wrap (prefix and postfix)
chat-radio-message-wrap = [color={$color}]{$channel} [bold]{$name}[/bold] {$verb}, [font={$fontType} size={$fontSize}]"{$message}"[/font][/color]
chat-radio-message-wrap-bold = [color={$color}]{$channel} [bold]{$name}[/bold] {$verb}, [font={$fontType} size={$fontSize}][bold]"{$message}"[/bold][/font][/color]
chat-radio-message-wrap = [color={$color}]{$channel} {$name} {$verb}, [font={$fontType} size={$fontSize}]"{$message}"[/font][/color]
chat-radio-message-wrap-bold = [color={$color}]{$channel} {$name} {$verb}, [font={$fontType} size={$fontSize}][bold]"{$message}"[/bold][/font][/color]
examine-headset-default-channel = Use {$prefix} for the default channel ([color={$color}]{$channel}[/color]).
Expand Down
1 change: 1 addition & 0 deletions Resources/Locale/en-US/nyanotrasen/abilities/Oni.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
oni-gun-fire = You can't fire guns!
7 changes: 7 additions & 0 deletions Resources/Locale/en-US/nyanotrasen/markings/Oni.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
marking-OniHornSingleCurved = Single Curved
marking-OniHornSingleLeftCurved =Single Left Curved
marking-OniHornSingleRightCurved = Single Right Curved
marking-OniHornDoubleCurvedOutwards = Double Curved Outwards
marking-OniHornDoubleCurved = Double Curved
marking-OniHornDoubleLeftBrokeCurved = Double Left Broke Curved
marking-OniHornDoubleRightBrokeCurved = Double Right Broke Curved
1 change: 1 addition & 0 deletions Resources/Locale/en-US/nyanotrasen/species/namepreset.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
namepreset-lastnofirst = {$last}-no-{$first}
1 change: 1 addition & 0 deletions Resources/Locale/en-US/nyanotrasen/species/species.ftl
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
species-name-oni = Oni
species-name-felinid = Felinid
12 changes: 6 additions & 6 deletions Resources/Prototypes/Catalog/Fills/Boxes/emergency.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
- id: SpaceMedipen
- id: EmergencyMedipen
- id: Flare
- id: FoodTinMRE
- id: FoodPSB # Nyanotrasen - Replace Tinned Meat with PSB
- type: Sprite
layers:
- state: internals
Expand All @@ -30,7 +30,7 @@
- id: SpaceMedipen
- id: EmergencyMedipen
- id: Flare
- id: FoodTinMRE
- id: FoodPSB # Nyanotrasen - Replace Tinned Meat with PSB
- type: Sprite
layers:
- state: internals
Expand All @@ -50,7 +50,7 @@
- id: SpaceMedipen
- id: EmergencyMedipen
- id: Flare
- id: FoodTinMRE
- id: FoodPSB # Nyanotrasen - Replace Tinned Meat with PSB
- type: Sprite
layers:
- state: internals
Expand All @@ -70,7 +70,7 @@
- id: SpaceMedipen
- id: EmergencyMedipen
- id: EmergencyMedipen
- id: FoodTinMRE
- id: FoodPSB # Nyanotrasen - Replace Tinned Meat with PSB
- type: Sprite
layers:
- state: internals
Expand All @@ -90,7 +90,7 @@
- id: SpaceMedipen
- id: EmergencyMedipen
- id: Flare
- id: FoodTinMRE
- id: FoodPSB # Nyanotrasen - Replace Tinned Meat with PSB
- type: Sprite
layers:
- state: internals
Expand All @@ -115,7 +115,7 @@
- id: SpaceMedipen
- id: EmergencyMedipen
- id: Flare
- id: FoodTinMRE
- id: FoodPSB # Nyanotrasen - Replace Tinned Meat with PSB
- type: Tag
tags:
- BoxHug
Expand Down
2 changes: 1 addition & 1 deletion Resources/Prototypes/Catalog/Fills/Crates/fun.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
- id: PlushieXeno
- id: PlushieHampter
- id: PlushieMoth
- id: PlushieMothRandom # Nyanotrasen Random Moth Plushies
- id: PlushieMothRandom # Nyanotrasen - Random Moth Plushies
amount: 2

- type: entity
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
- type: entity
parent: PosterBase
id: PosterLegitFuckAround
name: Fuck Around...
description: ...and find out. Sponsored by the Intergalactic Bartenders' Federation, Delta branch.
components:
- type: Sprite
sprite: DeltaV/Structures/Wallmounts/Posters/TJohnson.rsi
state: fuckaround

- type: entity
parent: PosterBase
id: PosterContrabandGotWood
name: "Got Wood?"
description: "A grimy old advert for a seedy lumber company. \"You got a friend in me.\" is scrawled in the corner."
components:
- type: Sprite
sprite: DeltaV/Structures/Wallmounts/Posters/misc.rsi
state: woodygotwood

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -655,15 +655,16 @@
#MISC. HARDSUITS
#Clown Hardsuit
- type: entity
parent: ClothingHeadHelmetHardsuitSecurity
parent: ClothingHeadEVAHelmetBase # DeltaV - Clown Hardsuit crafting recipe uses an EVA suit to craft.
id: ClothingHeadHelmetHardsuitClown
noSpawn: true
name: clown hardsuit helmet
description: A clown hardsuit helmet.
name: clown EVA helmet # DeltaV - Clown Hardsuit crafting recipe uses an EVA suit to craft.
description: A clown EVA helmet.
components:
- type: Sprite
sprite: Clothing/Head/Hardsuits/clown.rsi
- type: Clothing
equippedPrefix: off # Fix lack of helmet while not using the flashlight feature.
sprite: Clothing/Head/Hardsuits/clown.rsi
equipSound: /Audio/Mecha/mechmove03.ogg
unequipSound: /Audio/Effects/Emotes/parp1.ogg
unequipSound: /Audio/Mecha/mechmove03.ogg # DeltaV - This doesn't need to make a fart noise.
40 changes: 22 additions & 18 deletions Resources/Prototypes/Entities/Clothing/OuterClothing/hardsuits.yml
Original file line number Diff line number Diff line change
Expand Up @@ -805,32 +805,36 @@
#MISC. HARDSUITS
#Clown Hardsuit
- type: entity
parent: ClothingOuterHardsuitBase
parent: ClothingOuterHardsuitEVA # DeltaV - Clown Hardsuit crafting recipe uses an EVA suit to craft.
id: ClothingOuterHardsuitClown
name: clown hardsuit
description: A custom made clown hardsuit.
name: clown EVA suit # DeltaV - Clown Hardsuit crafting recipe uses an EVA suit to craft.
description: A custom made clown softsuit. # DeltaV - Clown Hardsuit crafting recipe uses an EVA suit to craft.
components:
- type: Sprite
sprite: Clothing/OuterClothing/Hardsuits/clown.rsi
- type: Clothing
sprite: Clothing/OuterClothing/Hardsuits/clown.rsi
- type: PressureProtection
highPressureMultiplier: 0.5
lowPressureMultiplier: 1000
- type: ExplosionResistance
damageCoefficient: 0.9
- type: Armor
modifiers:
coefficients:
Blunt: 0.9
Slash: 0.9
Piercing: 0.9
Caustic: 0.8
- type: ClothingSpeedModifier
walkModifier: 0.9
sprintModifier: 0.9
# - type: PressureProtection # DeltaV - Clown Hardsuit inherits from the normal eva suit, entirely cosmetic.
# highPressureMultiplier: 0.5
# lowPressureMultiplier: 1000
# - type: ExplosionResistance
# damageCoefficient: 0.9
# - type: Armor
# modifiers:
# coefficients:
# Blunt: 0.9
# Slash: 0.9
# Piercing: 0.9
# Caustic: 0.8
# - type: ClothingSpeedModifier
# walkModifier: 0.9
# sprintModifier: 0.9
- type: Construction
graph: ClownHardsuit
node: clownHardsuit
- type: ToggleableClothing
slot: head
clothingPrototype: ClothingHeadHelmetHardsuitClown
- type: ContainerContainer # DeltaV - Allows the EVA suit to have built in 'hardsuit' helmet
containers:
toggleable-clothing: !type:ContainerSlot {}
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@
- PaintingEmpty
- PaintingMoony
- PaintingAmogusTriptych
- PaintingMothBigCatch # Nyanotrasen Painting, see Resources/Prototypes/Nyanotrasen/Entities/Wallmount/painting.yml
- PaintingMothBigCatch # Nyanotrasen Painting, see Resources/Prototypes/Nyanotrasen/Entities/Structures/Wallmount/Signs/painting.yml
rareChance: 0.01
Loading

0 comments on commit e856c41

Please sign in to comment.