Skip to content

Commit

Permalink
Merge pull request #10 from Corvax-Frontier/Elzuosa-return
Browse files Browse the repository at this point in the history
Elzuosa return
  • Loading branch information
Sh1ntra authored Aug 10, 2024
2 parents a5ee991 + 5c33773 commit a1b5155
Show file tree
Hide file tree
Showing 75 changed files with 1,072 additions and 3 deletions.
20 changes: 20 additions & 0 deletions Content.Server/Corvax/Elzuosa/ElzuosaColorComponent.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Robust.Shared.Audio;

namespace Content.Server.Corvax.Elzuosa
{
[RegisterComponent]
public sealed partial class ElzuosaColorComponent : Component
{
public Color SkinColor { get; set; }

public bool Hacked { get; set; } = false;

[DataField("cycleRate")]
public float CycleRate = 1f;
}
}
37 changes: 37 additions & 0 deletions Content.Server/Corvax/Elzuosa/ElzuosaColorSystem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
using Content.Shared.Humanoid;
using Content.Shared.Preferences;
using Robust.Server.GameObjects;
using Content.Server.GameTicking;
namespace Content.Server.Corvax.Elzuosa
{
public sealed class ElzuosaColorSystem : EntitySystem
{
[Dependency] private readonly PointLightSystem _pointLightSystem = default!;
public override void Initialize()
{
base.Initialize();

SubscribeLocalEvent<ElzuosaColorComponent, PlayerSpawnCompleteEvent>(OnPlayerSpawn);
}

private void OnPlayerSpawn(EntityUid uid, ElzuosaColorComponent comp, PlayerSpawnCompleteEvent args)
{
if (!HasComp<HumanoidAppearanceComponent>(uid))
return;
if (args == null)
return;
var profile = args.Profile;
SetEntityPointLightColor(uid, profile);
}

public void SetEntityPointLightColor(EntityUid uid, HumanoidCharacterProfile? profile)
{
if (profile == null)
return;

var color = profile.Appearance.SkinColor;
_pointLightSystem.SetColor(uid,color);

}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
### Corvax Interaction

## Elzuosa

pat-success-elzuosa = вы обнимаете { $target }, чувствуя, как по вам проходит высоковольтный ток.
pat-success-elzuosa-others = { CAPITALIZE($user) } обнимает { $target }, наэлектризовываясь.
pat-success-elzuosa-target = { CAPITALIZE($user) } обнимает вас.
41 changes: 41 additions & 0 deletions Resources/Locale/ru-RU/corvax/markings/elzuosa.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
marking-EtherealPartsMElzuHornsClipped = рога (вросшие)
marking-EtherealPartsMElzuHornsClipped-ethereal_parts_m_elzu_horns_clipped_ADJ = рога
marking-EtherealPartsMElzuHornsClipped-ethereal_parts_m_elzu_horns_clipped_FRONT = рога (вросшие, передние)
marking-EtherealPartsMElzuHornsHelm = рога (шлем)
marking-EtherealPartsMElzuHornsHelm-ethereal_parts_m_elzu_horns_helm_ADJ = рога (шлем)
marking-EtherealPartsMElzuHornsHelm-ethereal_parts_m_elzu_horns_helm_FRONT = рога (шлем, передние)
marking-EtherealPartsMElzuHornsInward = рога (загнутые назад)
marking-EtherealPartsMElzuHornsInward-ethereal_parts_m_elzu_horns_inward_ADJ = рога (загнутые назад)
marking-EtherealPartsMElzuHornsInward-ethereal_parts_m_elzu_horns_inward_FRONT = рога (загнутые назад, передние)
marking-EtherealPartsMElzuHornsLunar = рога (лунные)
marking-EtherealPartsMElzuHornsLunar-ethereal_parts_m_elzu_horns_lunar_ADJ = рога (лунные)
marking-EtherealPartsMElzuHornsLunar-ethereal_parts_m_elzu_horns_lunar_FRONT = рога (лунные, передние)
marking-EtherealPartsMElzuHornsMajesty = рога (величественные)
marking-EtherealPartsMElzuHornsMajesty-ethereal_parts_m_elzu_horns_majesty_ADJ = рога (величественные)
marking-EtherealPartsMElzuHornsMajesty-ethereal_parts_m_elzu_horns_majesty_FRONT = рога (величественные, передние)
marking-EtherealPartsMElzuHornsSharp = рога (острые)
marking-EtherealPartsMElzuHornsSharp-ethereal_parts_m_elzu_horns_sharp_ADJ = рога (острые)
marking-EtherealPartsMElzuHornsSharp-ethereal_parts_m_elzu_horns_sharp_FRONT = рога (острые, передние)
marking-EtherealPartsMElzuHornsShort = рога (короткие)
marking-EtherealPartsMElzuHornsShort-ethereal_parts_m_elzu_horns_short_ADJ = рога (короткие)
marking-EtherealPartsMElzuHornsShort-ethereal_parts_m_elzu_horns_short_FRONT = рога (короткие, передние)
marking-EtherealPartsMTailBifurcated = хвост (разделённый)
marking-EtherealPartsMTailBifurcated-ethereal_parts_m_tail_bifurcated_BEHIND = хвост (разделённый)
marking-EtherealPartsMTailBifurcated-ethereal_parts_m_tail_bifurcated_FRONT = хвост (разделённый, кончик)
marking-EtherealPartsMTailLong = хвост (длинный)
marking-EtherealPartsMTailLong-ethereal_parts_m_tail_long_BEHIND = хвост (длинный)
marking-EtherealPartsMTailLong-ethereal_parts_m_tail_long_FRONT = хвост (длинный, кончик)
marking-EtherealPartsMTailStubby = хвост (коренастый)
marking-EtherealPartsMTailStubby-ethereal_parts_m_tail_stubby_BEHIND = хвост (коренастый)
marking-EtherealPartsMTailStubby-ethereal_parts_m_tail_stubby_FRONT = хвост (коренастый, кончик)
marking-EtherealPartsMAnimatedtailBifurcated = хвост (разделённый, анимированный)
marking-EtherealPartsMAnimatedtailBifurcated-ethereal_parts_m_waggingtail_bifurcated_BEHIND = хвост (разделённый, анимированный)
marking-EtherealPartsMAnimatedtailBifurcated-ethereal_parts_m_waggingtail_bifurcated_FRONT = хвост (разделённый, анимированный, кончик)
marking-EtherealPartsMAnimatedtailLong = хвост (длинный, анимированный)
marking-EtherealPartsMAnimatedtailLong-ethereal_parts_m_waggingtail_long_BEHIND = хвост (длинный, анимированный)
marking-EtherealPartsMAnimatedtailLong-ethereal_parts_m_waggingtail_long_FRONT = хвост (длинный, анимированный, кончик)
marking-EtherealPartsMAnimatedtailStubby = хвост (коренастый, анимированный)
marking-EtherealPartsMAnimatedtailStubby-ethereal_parts_m_waggingtail_stubby_BEHIND = хвост (коренастый, анимированный)
marking-EtherealPartsMAnimatedtailStubby-ethereal_parts_m_waggingtail_stubby_FRONT = хвост (коренастый, анимированный, кончик)
marking-EtherealPartsEyesGlowGs = глаза (светящиеся)
marking-EtherealPartsEyesGlowGs-ethereal_parts_eyes_glow_gs = глаза
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
metabolizer-type-elzuosa = Elzuosa
2 changes: 2 additions & 0 deletions Resources/Locale/ru-RU/corvax/reagents/bilogical.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
reagent-name-electroblood = электрокровь
reagent-desc-electroblood = На вид искрится.
1 change: 1 addition & 0 deletions Resources/Locale/ru-RU/corvax/species/species.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
species-name-elzuosa = Эльзуос
Original file line number Diff line number Diff line change
Expand Up @@ -85,4 +85,4 @@ hugging-success-generic-others = { CAPITALIZE($user) } обнимает { $targe
fence-rattle-success = *бдзынь*
hugging-success-generic-target = { CAPITALIZE($user) } обнимает вас.
petting-success-tesla = Вы гладите { $target }, попутно нарушая законы природы и физики.
petting-failure-tesla = Вы тянетесь погладить { $target }, но разряд заставляет вас отдёрнуть руку.
petting-failure-tesla = Вы тянетесь погладить { $target }, но разряд заставляет вас отдёрнуть руку.
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
ent-BaseElzuosaOrgan = { ent-BaseHumanOrganUnGibbable }
.desc = { ent-BaseHumanOrganUnGibbable.desc }
ent-OrganElzuosaBrain = мозг
.desc = Источник невероятного интеллекта. Хонк!
ent-OrganElzuosaLungs = лёгкие
.desc = Позволяют вам наслаждаться свежим воздухом.
ent-OrganElzuosaHeart = сердце
.desc = Только бессердечный ублюдок мог потерять его.
ent-OrganElzuosaStomach = желудок
.desc = Мерзость. Это будет сложно переварить.
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
ent-PartElzuosa = часть тела эльзуоза
.desc = { ent-BasePart.desc }
ent-TorsoElzuosa = торс эльзуоза
.desc = { ent-PartElzuosa.desc }
ent-HeadElzuosa = голова эльзуоза
.desc = { ent-PartElzuosa.desc }
ent-LeftArmElzuosa = левая рука эльзуоза
.desc = { ent-PartElzuosa.desc }
ent-RightArmElzuosa = правая эльзуоза
.desc = { ent-PartElzuosa.desc }
ent-LeftHandElzuosa = левая ладонь эльзуоза
.desc = { ent-PartElzuosa.desc }
ent-RightHandElzuosa = прававая ладонь эльзуоза
.desc = { ent-PartElzuosa.desc }
ent-LeftLegElzuosa = левая нога эльзуоза
.desc = { ent-PartElzuosa.desc }
ent-RightLegElzuosa = правая нога эльзуоза
.desc = { ent-PartElzuosa.desc }
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
ent-MobElzuosa = Урист МакЭльзуос
.desc = { ent-BaseMobElzuosa.desc }
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
ent-BaseMobElzuosa = Урист МакЭлсуоза
.desc = { ent-BaseMobSpeciesOrganic.desc }
ent-MobElzuosaDummy = { ent-BaseSpeciesDummy }
.desc = { ent-BaseSpeciesDummy.desc }
127 changes: 127 additions & 0 deletions Resources/Prototypes/Corvax/Body/Organs/elzuosa.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
- type: entity
id: BaseElzuosaOrgan
parent: BaseHumanOrganUnGibbable
abstract: true
components:
- type: Sprite
sprite: Structures/Specific/Anomalies/Cores/electric_core.rsi
- type: Gibbable
- type: Electrified
requirePower: false
shockDamage: 2
shockTime: 2

- type: entity
id: OrganElzuosaBrain
parent: BaseElzuosaOrgan
name: brain
description: "The source of incredible, unending intelligence. Honk."
components:
- type: Sprite
layer:
- state: core
- state: pulse
- type: Organ
- type: Input
context: "ghost"
- type: Brain
- type: InputMover
- type: Examiner
- type: BlockMovement
- type: BadFood
- type: Tag
tags:
- Meat
- type: SolutionContainerManager
solutions:
organ:
reagents:
- ReagentId: Nutriment
Quantity: 10
food:
maxVol: 5
reagents:
- ReagentId: GreyMatter
Quantity: 5
- type: FlavorProfile
flavors:
- people

- type: entity
id: OrganElzuosaLungs
parent: BaseElzuosaOrgan
name: lungs
description: "Filters oxygen from an atmosphere, which is then sent into the bloodstream to be used as an electron carrier."
components:
- type: Sprite
state: core
- type: Lung
- type: Metabolizer
removeEmpty: true
solutionOnBody: false
solution: "Lung"
metabolizerTypes: [ Human ]
groups:
- id: Gas
rateModifier: 100.0
- type: SolutionContainerManager
solutions:
organ:
reagents:
- ReagentId: Nutriment
Quantity: 10
Lung:
maxVol: 100.0
canReact: false
food:
maxVol: 5
reagents:
- ReagentId: UncookedAnimalProteins
Quantity: 5

- type: entity
id: OrganElzuosaHeart
parent: BaseElzuosaOrgan
name: heart
description: "I feel bad for the heartless bastard who lost this."
components:
- type: Sprite
layer:
- state: core
- state: pulse
- type: Metabolizer
maxReagents: 2
metabolizerTypes: [Human]
groups:
- id: Medicine
- id: Poison
- id: Narcotic

- type: entity
id: OrganElzuosaStomach
parent: BaseElzuosaOrgan
name: stomach
description: "Gross. This is hard to stomach."
components:
- type: Sprite
state: core
- type: SolutionContainerManager
solutions:
stomach:
maxVol: 50
food:
maxVol: 5
reagents:
- ReagentId: UncookedAnimalProteins
Quantity: 5
- type: Stomach
specialDigestible:
tags:
- PowerCellSmall
- PowerCell
- type: Metabolizer
maxReagents: 3
metabolizerTypes: [Elzuosa]
groups:
- id: Food
- id: Drink
93 changes: 93 additions & 0 deletions Resources/Prototypes/Corvax/Body/Parts/elzuosa.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
- type: entity
id: PartElzuosa
parent: [BaseItem, BasePart]
name: "elzuosa body part"
abstract: true
components:
- type: Extractable
juiceSolution:
reagents:
- ReagentId: ElectroBlood
Quantity: 10

- type: entity
id: TorsoElzuosa
name: "elzuosa torso"
parent: [PartElzuosa, BaseTorso]
components:
- type: Sprite
sprite: Corvax/Mobs/Species/Elzuosa/parts.rsi
state: "torso_m"
- type: Extractable
juiceSolution:
reagents:
- ReagentId: ElectroBlood
Quantity: 20

- type: entity
id: HeadElzuosa
name: "elzuosa head"
parent: [PartElzuosa, BaseHead]
components:
- type: Sprite
sprite: Corvax/Mobs/Species/Elzuosa/parts.rsi
state: "head_m"
- type: Extractable
juiceSolution:
reagents:
- ReagentId: ElectroBlood
Quantity: 10

- type: entity
id: LeftArmElzuosa
name: "left elzuosa arm"
parent: [PartElzuosa, BaseLeftArm]
components:
- type: Sprite
sprite: Corvax/Mobs/Species/Elzuosa/parts.rsi
state: "l_arm"

- type: entity
id: RightArmElzuosa
name: "right elzuosa arm"
parent: [PartElzuosa, BaseRightArm]
components:
- type: Sprite
sprite: Corvax/Mobs/Species/Elzuosa/parts.rsi
state: "r_arm"

- type: entity
id: LeftHandElzuosa
name: "left elzuosa hand"
parent: [PartElzuosa, BaseLeftHand]
components:
- type: Sprite
sprite: Corvax/Mobs/Species/Elzuosa/parts.rsi
state: "l_hand"

- type: entity
id: RightHandElzuosa
name: "right elzuosa hand"
parent: [PartElzuosa, BaseRightHand]
components:
- type: Sprite
sprite: Corvax/Mobs/Species/Elzuosa/parts.rsi
state: "r_hand"

- type: entity
id: LeftLegElzuosa
name: "left elzuosa leg"
parent: [PartElzuosa, BaseLeftLeg]
components:
- type: Sprite
sprite: Corvax/Mobs/Species/Elzuosa/parts.rsi
state: "l_leg"

- type: entity
id: RightLegElzuosa
name: "right elzuosa leg"
parent: [PartElzuosa, BaseRightLeg]
components:
- type: Sprite
sprite: Corvax/Mobs/Species/Elzuosa/parts.rsi
state: "r_leg"
Loading

0 comments on commit a1b5155

Please sign in to comment.