diff --git a/Content.Shared/Humanoid/NamingSystem.cs b/Content.Shared/Humanoid/NamingSystem.cs index 825eca17cff..a563d396398 100644 --- a/Content.Shared/Humanoid/NamingSystem.cs +++ b/Content.Shared/Humanoid/NamingSystem.cs @@ -35,6 +35,11 @@ public string GetName(string species, Gender? gender = null) case SpeciesNaming.FirstDashFirst: return Loc.GetString("namepreset-firstdashfirst", ("first1", GetFirstName(speciesProto, gender)), ("first2", GetFirstName(speciesProto, gender))); + // Start ADT Tweak: Drask naming + case SpeciesNaming.FirstDashFirstDashFirst: + return Loc.GetString("namepreset-firstdashfirstdashfirst", + ("first1", GetFirstName(speciesProto, gender)), ("first2", GetFirstName(speciesProto, gender)), ("first3", GetFirstName(speciesProto, gender))); + // End ADT Tweak case SpeciesNaming.FirstLast: default: return Loc.GetString("namepreset-firstlast", diff --git a/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs b/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs index e91785114ca..1405c4b5a94 100644 --- a/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs +++ b/Content.Shared/Humanoid/Prototypes/SpeciesPrototype.cs @@ -140,5 +140,8 @@ public enum SpeciesNaming : byte First, FirstLast, FirstDashFirst, + // ADT Start tweak: Drask naming + FirstDashFirstDashFirst, + // ADT End tweak TheFirstofLast, } diff --git a/Resources/Audio/ADT/Drask/draskcough.ogg b/Resources/Audio/ADT/Drask/draskcough.ogg new file mode 100644 index 00000000000..613f5ddb399 Binary files /dev/null and b/Resources/Audio/ADT/Drask/draskcough.ogg differ diff --git a/Resources/Audio/ADT/Drask/draskscream.ogg b/Resources/Audio/ADT/Drask/draskscream.ogg new file mode 100644 index 00000000000..102f3e727fd Binary files /dev/null and b/Resources/Audio/ADT/Drask/draskscream.ogg differ diff --git a/Resources/Audio/ADT/Drask/drasksneeze.ogg b/Resources/Audio/ADT/Drask/drasksneeze.ogg new file mode 100644 index 00000000000..36080e03ee7 Binary files /dev/null and b/Resources/Audio/ADT/Drask/drasksneeze.ogg differ diff --git a/Resources/Audio/ADT/Drask/drasktalk.ogg b/Resources/Audio/ADT/Drask/drasktalk.ogg new file mode 100644 index 00000000000..8a22bf3545b Binary files /dev/null and b/Resources/Audio/ADT/Drask/drasktalk.ogg differ diff --git a/Resources/Locale/en-US/species/namepreset.ftl b/Resources/Locale/en-US/species/namepreset.ftl index 5a42c87b78e..092d0b6d62c 100644 --- a/Resources/Locale/en-US/species/namepreset.ftl +++ b/Resources/Locale/en-US/species/namepreset.ftl @@ -1,4 +1,7 @@ namepreset-first = {$first} namepreset-firstlast = {$first} {$last} namepreset-firstdashfirst = {$first1}-{$first2} +# Start ADT tweak: Drask +namepreset-firstdashfirstdashfirst = { $first1 }-{ $first2 }-{ $first3 } +# End ADT tweak namepreset-thefirstoflast = The {$first} of {$last} diff --git a/Resources/Locale/ru-RU/metabolism/metabolizer-types.ftl b/Resources/Locale/ru-RU/ADT/Chemistry/metabolizer-types.ftl similarity index 92% rename from Resources/Locale/ru-RU/metabolism/metabolizer-types.ftl rename to Resources/Locale/ru-RU/ADT/Chemistry/metabolizer-types.ftl index 7a17abf3656..ff10a218e10 100644 --- a/Resources/Locale/ru-RU/metabolism/metabolizer-types.ftl +++ b/Resources/Locale/ru-RU/ADT/Chemistry/metabolizer-types.ftl @@ -9,3 +9,4 @@ metabolizer-type-plant = Растение metabolizer-type-dwarf = Дварф metabolizer-type-moth = Ниан metabolizer-type-arachnid = Арахнид +metabolizer-type-drask = Драск diff --git a/Resources/Locale/ru-RU/ADT/Entities/Mobs/Player/drask.ftl b/Resources/Locale/ru-RU/ADT/Entities/Mobs/Player/drask.ftl new file mode 100644 index 00000000000..19a7093e9fe --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Mobs/Player/drask.ftl @@ -0,0 +1,2 @@ +ent-MobDrask = { ent-BaseMobDrask } + .desc = { ent-BaseMobDrask.desc } diff --git a/Resources/Locale/ru-RU/ADT/Entities/Mobs/Species/drask.ftl b/Resources/Locale/ru-RU/ADT/Entities/Mobs/Species/drask.ftl new file mode 100644 index 00000000000..1d985504e9a --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Entities/Mobs/Species/drask.ftl @@ -0,0 +1,5 @@ +ent-BaseMobDrask = Урист МакДраск + .desc = { ent-BaseMobSpeciesOrganic.desc } + .suffix = Драск +ent-MobDraskDummy = { ent-BaseSpeciesDummy } + .desc = { ent-BaseSpeciesDummy.desc } diff --git a/Resources/Locale/ru-RU/ADT/Species/drask.ftl b/Resources/Locale/ru-RU/ADT/Species/drask.ftl new file mode 100644 index 00000000000..6f61062aefc --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/Species/drask.ftl @@ -0,0 +1,13 @@ +species-name-drask = Драск +marking-DraskArmRight = правая рука +marking-DraskArmLeft = левая рука +ent-OrganDraskEyes = глаза + .desc = Я тебя вижу! +ent-OrganDraskLungs = лёгкие + .desc = Фильтрует кислород из атмосферы, который затем поступает в кровь для использования в качестве переносчика электронов. +ent-OrganDraskHeart = сердце + .desc = Мне жаль того бессердечного ублюдка, который его потерял. +ent-OrganDraskInnards = внутренности + .desc = Мерзость. +ent-OrganDraskKidneys = почки + .desc = Выводят токсины из кровеносной системы. diff --git a/Resources/Prototypes/ADT/Body/Organs/Drask.yml b/Resources/Prototypes/ADT/Body/Organs/Drask.yml new file mode 100644 index 00000000000..53a6c3b0966 --- /dev/null +++ b/Resources/Prototypes/ADT/Body/Organs/Drask.yml @@ -0,0 +1,103 @@ +- type: entity + id: OrganDraskEyes + parent: BaseHumanOrgan + suffix: "drask" + name: eyes + description: "I see you!" + components: + - type: Sprite + sprite: ADT/Mobs/Drask/organs.rsi + state: eyes + +- type: entity + id: OrganDraskLungs + parent: BaseHumanOrgan + suffix: "drask" + 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 + sprite: ADT/Mobs/Drask/organs.rsi + state: lungs + - type: Lung + - type: Metabolizer + removeEmpty: true + solutionOnBody: false + solution: "Lung" + metabolizerTypes: [ Drask ] + 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: OrganDraskHeart + parent: BaseHumanOrgan + suffix: "drask" + name: heart + description: "I feel bad for the heartless bastard who lost this." + components: + - type: Sprite + sprite: ADT/Mobs/Drask/organs.rsi + state: heart_on + - type: Metabolizer + maxReagents: 2 + metabolizerTypes: [ Drask ] + groups: + - id: Medicine + - id: Poison + - id: Narcotic + +- type: entity + id: OrganDraskInnards + parent: BaseHumanOrgan + suffix: "drask" + name: innards + description: "Ew innards." + components: + - type: Sprite + sprite: ADT/Mobs/Drask/organs.rsi + state: innards + - type: SolutionContainerManager + solutions: + stomach: + maxVol: 50 + food: + maxVol: 5 + reagents: + - ReagentId: UncookedAnimalProteins + Quantity: 5 + - type: Stomach + - type: Metabolizer + maxReagents: 3 + metabolizerTypes: [ Drask ] + groups: + - id: Food + - id: Drink + +- type: entity + id: OrganDraskKidneys + parent: BaseHumanOrgan + suffix: "drask" + name: kidneys + components: + - type: Sprite + sprite: ADT/Mobs/Drask/organs.rsi + state: kidneys + - type: Metabolizer + maxReagents: 5 + metabolizerTypes: [ Drask ] + removeEmpty: true diff --git a/Resources/Prototypes/ADT/Body/Parts/Drask.yml b/Resources/Prototypes/ADT/Body/Parts/Drask.yml new file mode 100644 index 00000000000..bceb64a62be --- /dev/null +++ b/Resources/Prototypes/ADT/Body/Parts/Drask.yml @@ -0,0 +1,190 @@ +# TODO: Add descriptions (many) +# TODO BODY: Part damage +- type: entity + id: PartDrask + parent: BaseItem + name: "drask body part" + abstract: true + components: + - type: Damageable + damageContainer: Biological + - type: BodyPart + - type: ContainerContainer + containers: + bodypart: !type:Container + ents: [] + +- type: entity + id: TorsoDrask + name: "drask torso" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "torso_m" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "torso_m" + - type: BodyPart + partType: Torso + +- type: entity + id: HeadDrask + name: "drask head" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "head_m" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "head_m" + - type: BodyPart + partType: Head + vital: true + - type: Input + context: "ghost" + - type: MovementSpeedModifier + baseWalkSpeed: 0 + baseSprintSpeed: 0 + - type: InputMover + - type: GhostOnMove + - type: Tag + tags: + - Head + +- type: entity + id: LeftArmDrask + name: "left drask arm" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "l_arm" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "l_arm" + - type: BodyPart + partType: Arm + symmetry: Left + +- type: entity + id: RightArmDrask + name: "right drask arm" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "r_arm" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "r_arm" + - type: BodyPart + partType: Arm + symmetry: Right + +- type: entity + id: LeftHandDrask + name: "left drask hand" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "l_hand" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "l_hand" + - type: BodyPart + partType: Hand + symmetry: Left + +- type: entity + id: RightHandDrask + name: "right drask hand" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "r_hand" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "r_hand" + - type: BodyPart + partType: Hand + symmetry: Right + +- type: entity + id: LeftLegDrask + name: "left drask leg" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "l_leg" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "l_leg" + - type: BodyPart + partType: Leg + symmetry: Left + - type: MovementBodyPart + walkSpeed : 2.5 + sprintSpeed : 4.5 + +- type: entity + id: RightLegDrask + name: "right drask leg" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "r_leg" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "r_leg" + - type: BodyPart + partType: Leg + symmetry: Right + - type: MovementBodyPart + walkSpeed : 2.5 + sprintSpeed : 4.5 + +- type: entity + id: LeftFootDrask + name: "left drask foot" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "l_foot" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "l_foot" + - type: BodyPart + partType: Foot + symmetry: Left + +- type: entity + id: RightFootDrask + name: "right drask foot" + parent: PartDrask + components: + - type: Sprite + netsync: false + sprite: ADT/Mobs/Drask/parts.rsi + state: "r_foot" + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: "r_foot" + - type: BodyPart + partType: Foot + symmetry: Right diff --git a/Resources/Prototypes/ADT/Body/Prototypes/Drask.yml b/Resources/Prototypes/ADT/Body/Prototypes/Drask.yml new file mode 100644 index 00000000000..cdf4b045688 --- /dev/null +++ b/Resources/Prototypes/ADT/Body/Prototypes/Drask.yml @@ -0,0 +1,49 @@ +- type: body + name: "drask" + id: Drask + root: torso + slots: + head: + part: HeadDrask + connections: + - torso + organs: + brain: OrganHumanBrain + eyes: OrganDraskEyes + heart: OrganDraskHeart + torso: + part: TorsoDrask + organs: + lungs: OrganDraskLungs + stomach: OrganDraskInnards + liver: OrganHumanLiver + kidneys: OrganDraskKidneys + connections: + - left arm + - right arm + - left leg + - right leg + right arm: + part: RightArmDrask + connections: + - right hand + left arm: + part: LeftArmDrask + connections: + - left hand + right hand: + part: RightHandDrask + left hand: + part: LeftHandDrask + right leg: + part: RightLegDrask + connections: + - right foot + left leg: + part: LeftLegDrask + connections: + - left foot + right foot: + part: RightFootDrask + left foot: + part: LeftFootDrask diff --git a/Resources/Prototypes/Chemistry/metabolizer_types.yml b/Resources/Prototypes/ADT/Chemistry/metabolizer_types.yml similarity index 88% rename from Resources/Prototypes/Chemistry/metabolizer_types.yml rename to Resources/Prototypes/ADT/Chemistry/metabolizer_types.yml index 3f7bf05b35e..0e7706c1e5a 100644 --- a/Resources/Prototypes/Chemistry/metabolizer_types.yml +++ b/Resources/Prototypes/ADT/Chemistry/metabolizer_types.yml @@ -44,3 +44,9 @@ - type: metabolizerType id: Arachnid name: metabolizer-type-arachnid + + # Start ADT tweak: Drask +- type: metabolizerType + id: Drask + name: metabolizer-type-drask + # End ADT tweak diff --git a/Resources/Prototypes/ADT/Damage/ADTmodifiers.yml b/Resources/Prototypes/ADT/Damage/ADTmodifiers.yml new file mode 100644 index 00000000000..3f73c916c9f --- /dev/null +++ b/Resources/Prototypes/ADT/Damage/ADTmodifiers.yml @@ -0,0 +1,190 @@ +# - type: damageModifierSet +# id: Fur # 1) - ебучий годспид, балансим уроном. 2) - шерсть должна гореть +# coefficients: +# Blunt: 1 +# Piercing: 1.2 +# Slash: 1.2 +# Cold: 0.6 +# Heat: 1.5 +# Poison: 1 + +- type: damageModifierSet + id: Kobalt # мне даже жаль кобальдов, но жизнь такова какова она какова и больше не какова + coefficients: + Blunt: 1 + Piercing: 1 + Slash: 1.0 + Cold: 1.5 + Heat: 0.9 + Poison: 1 + Bloodloss: 0.3 + +# - type: damageModifierSet +# id: Demon # они вообще то мутанты, но кого ебёт так? +# coefficients: +# Blunt: 1 +# Piercing: 1 +# Slash: 1.0 +# Cold: 0.8 +# Heat: 0.8 +# Poison: 0.8 +# Cellular: 1.5 + +# - type: damageModifierSet +# id: Shadowkin # пупупу +# coefficients: +# Blunt: 1.2 +# Piercing: 1.2 +# Slash: 1.2 +# Cold: 0.8 +# Heat: 0.8 +# Poison: 1 +# Cellular: 1 + +- type: damageModifierSet + id: Drask # саморезы + coefficients: + Heat: 1.5 + Asphyxiation: 2.0 + +# - type: damageModifierSet +# id: Felinid # мяу +# coefficients: +# Blunt: 1.0 +# Piercing: 1.15 +# Slash: 1.30 +# Cold: 1.5 +# Heat: 2.0 +# Poison: 1.1 + +- type: damageModifierSet + id: CyborgMetallic + coefficients: + Blunt: 0.8 + Slash: 0.7 + Piercing: 0.8 + Heat: 1.2 + Shock: 1.5 + flatReductions: + Blunt: 5 + Slash: 5 + Piercing: 5 + Heat: 5 + + +- type: damageModifierSet + id: CyborgMetallicStrong + coefficients: + Blunt: 0.6 + Slash: 0.6 + Piercing: 0.6 + Heat: 0.8 + Shock: 1.1 + flatReductions: + Blunt: 9 + Slash: 9 + Piercing: 9 + Heat: 9 + +# - type: damageModifierSet +# id: Ursus # мишк +# coefficients: +# Blunt: 1.0 + +- type: damageModifierSet + id: AshWalker # Груба кожа = умно ящериц + coefficients: + Blunt: 0.8 + +- type: damageModifierSet + id: ADTAntagDroneIPCDamageModSet + coefficients: + Blunt: 0.75 + Slash: 0.75 + Piercing: 0.55 + Heat: 0.80 + #Explosive: 0.25 + Structural: 0 + # zap + Shock: 0.5 + Cold: 0 + Caustic: 0.3 + +- type: damageModifierSet + id: ADTSecurityCybDamagModSet + coefficients: + Blunt: 0.5 + Slash: 0.4 + Piercing: 0.45 + # fire and lasers burn it good + Heat: 1.0 + # zap + Shock: 1.2 + Cold: 0 + Caustic: 0.4 + +- type: damageModifierSet + id: distorted + coefficients: + Blunt: 1 + Piercing: 1 + Slash: 1.0 + Cold: 0.5 + Heat: 0.5 + Poison: 0.5 + Bloodloss: 1 + +- type: damageModifierSet + id: echo + coefficients: + Blunt: 1 + Piercing: 1 + Slash: 0.4 + Cold: 0.6 + Heat: 0.6 + Poison: 1.0 + Bloodloss: 1 + +- type: damageModifierSet + id: grant + coefficients: + Blunt: 0.5 + Piercing: 0.7 + Slash: 0.5 + Cold: 0.7 + Heat: 0.7 + Poison: 0.7 + Bloodloss: 1 + +- type: damageModifierSet + id: hunter + coefficients: + Blunt: 0.45 + Piercing: 0.6 + Slash: 0.45 + Cold: 0.6 + Heat: 0.45 + Poison: 0.6 + Bloodloss: 1 + +- type: damageModifierSet + id: soldier + coefficients: + Blunt: 0.8 + Piercing: 0.8 + Slash: 0.8 + Cold: 0.8 + Heat: 0.8 + Poison: 0.8 + Bloodloss: 1 + +- type: damageModifierSet + id: wrecker + coefficients: + Blunt: 0.4 + Piercing: 0.55 + Slash: 0.4 + Cold: 0.55 + Heat: 0.65 + Poison: 0.55 + Bloodloss: 1 diff --git a/Resources/Prototypes/ADT/Datasets/Names/name_drask.yml b/Resources/Prototypes/ADT/Datasets/Names/name_drask.yml new file mode 100644 index 00000000000..e277f4313c1 --- /dev/null +++ b/Resources/Prototypes/ADT/Datasets/Names/name_drask.yml @@ -0,0 +1,20 @@ +- type: dataset + id: Draskfrist + values: + - Овв + - Оумн + - Мноо + - Румум + - Ваар + - Дромнн + - Руум + - Гоом + - Фмонг + - Оорм + - Гаар + - Хоорб + - Саар + - Ссооумн + - Гнии + - Вииск + - Вррм diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Customization/Markings/Drask.yml b/Resources/Prototypes/ADT/Entities/Mobs/Customization/Markings/Drask.yml new file mode 100644 index 00000000000..242111d6d68 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Mobs/Customization/Markings/Drask.yml @@ -0,0 +1,43 @@ +- type: marking + id: DraskArmRight + bodyPart: RArm + markingCategory: Arms + speciesRestriction: [DraskSpecies] + sponsorOnly: false + coloring: + default: + type: + !type:CategoryColoring + category: Hair + fallbackTypes: + - !type:SkinColoring + layers: + r_arm: + type: + !type:SimpleColoring + color: "#171717" + sprites: + - sprite: ADT/Mobs/Drask/custom.rsi + state: r_arm + +- type: marking + id: DraskArmLeft + bodyPart: LArm + markingCategory: Arms + speciesRestriction: [DraskSpecies] + sponsorOnly: false + coloring: + default: + type: + !type:CategoryColoring + category: Hair + fallbackTypes: + - !type:SkinColoring + layers: + l_arm: + type: + !type:SimpleColoring + color: "#171717" + sprites: + - sprite: ADT/Mobs/Drask/custom.rsi + state: l_arm diff --git a/Resources/Prototypes/ADT/Entities/Mobs/Species/Drask.yml b/Resources/Prototypes/ADT/Entities/Mobs/Species/Drask.yml new file mode 100644 index 00000000000..72556b70a2d --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Mobs/Species/Drask.yml @@ -0,0 +1,81 @@ +- type: entity + parent: BaseMobSpeciesOrganic + id: BaseMobDrask + name: Urist McDrask + abstract: true + components: + - type: HumanoidAppearance + species: DraskSpecies + - type: Hunger + starvationDamage: + types: + Cold: 0.05 + Bloodloss: 0.05 + - type: Icon + sprite: ADT/Mobs/Drask/parts.rsi + state: full + - type: Thirst + - type: Perishable + - type: Butcherable + butcheringType: Spike + spawned: + - id: FoodMeatHuman + amount: 5 + - type: Body + prototype: Drask + requiredLegs: 2 + - type: MeleeWeapon + soundHit: + path: /Audio/Weapons/pierce.ogg + angle: 30 + animation: WeaponArcPunch + damage: + types: + Blunt: 10 + - type: Bloodstream + bloodReagent: Cryoxadone + - type: Temperature + heatDamageThreshold: 330 + coldDamageThreshold: 0 + currentTemperature: 273.15 + coldDamage: #per second, scales with temperature & other constants + types: + Cold : 0 + specificHeat: 42 + heatDamage: #per second, scales with temperature & other constants + types: + Heat : 0.4 + - type: ThermalRegulator + normalBodyTemperature: 273.15 + - type: DamageVisuals + damageOverlayGroups: + Brute: + sprite: Mobs/Effects/brute_damage.rsi + color: "#0091ff" + Burn: + sprite: Mobs/Effects/burn_damage.rsi + - type: Speech + speechSounds: Drask + - type: Vocal + sounds: + Male: MaleDrask + Female: FemaleDrask + Unsexed: MaleDrask + - type: Damageable + damageContainer: Biological + damageModifierSet: Drask + +- type: entity + save: false + name: Urist McDrask + parent: MobHumanDummy + id: MobDraskDummy + noSpawn: true + components: + - type: HumanoidAppearance + species: DraskSpecies + + + + + diff --git a/Resources/Prototypes/ADT/Entities/Mobs/player/Drask.yml b/Resources/Prototypes/ADT/Entities/Mobs/player/Drask.yml new file mode 100644 index 00000000000..e962cd24e15 --- /dev/null +++ b/Resources/Prototypes/ADT/Entities/Mobs/player/Drask.yml @@ -0,0 +1,46 @@ +- type: entity + save: false + name: "Urisst' McDrask" + parent: BaseMobDrask + id: MobDrask + components: + - type: CombatMode + - type: InteractionPopup + successChance: 1 + interactSuccessString: hugging-success-generic + interactSuccessSound: /Audio/Effects/thudswoosh.ogg + messagePerceivedByOthers: hugging-success-generic-others + - type: MindContainer + showExamineInfo: true + - type: Input + context: "human" + - type: MobMover + - type: InputMover + - type: Alerts + - type: Eye + - type: CameraRecoil + - type: Examiner + - type: CanHostGuardian + - type: NpcFactionMember + factions: + - NanoTrasen + - type: Respirator + damage: + types: + Asphyxiation: 1.0 + damageRecovery: + types: + Asphyxiation: -1.0 +# ОТКОММЕНТИТЬ ПРИ ПЕРЕНОСЕ ЯЗЫКОВ И РАЗМЕРОВ + # - type: LanguageSpeaker + # speaks: + # - GalacticCommon + # - Drask + # understands: + # - GalacticCommon + # - Drask + # - type: SizeAttributeWhitelist # Frontier + # tall: true + # tallscale: 1.15 + # short: true + # shortscale: 1 diff --git a/Resources/Prototypes/ADT/SoundCollections/emotes.yml b/Resources/Prototypes/ADT/SoundCollections/emotes.yml new file mode 100644 index 00000000000..3f6d3245480 --- /dev/null +++ b/Resources/Prototypes/ADT/SoundCollections/emotes.yml @@ -0,0 +1,16 @@ +- type: soundCollection + id: DraskCough + files: + - /Audio/ADT/Drask/draskcough.ogg +- type: soundCollection + id: DraskScream + files: + - /Audio/ADT/Drask/draskscream.ogg +- type: soundCollection + id: DraskSneeze + files: + - /Audio/ADT/Drask/drasksneeze.ogg +- type: soundCollection + id: DraskTalk + files: + - /Audio/ADT/Drask/drasktalk.ogg diff --git a/Resources/Prototypes/ADT/Species/drask.yml b/Resources/Prototypes/ADT/Species/drask.yml new file mode 100644 index 00000000000..8c75d513aec --- /dev/null +++ b/Resources/Prototypes/ADT/Species/drask.yml @@ -0,0 +1,158 @@ +- type: species + id: DraskSpecies + name: species-name-drask + roundStart: true + prototype: MobDrask + sprites: MobDraskSprites + defaultSkinTone: "#a3d4eb" + markingLimits: MobDraskMarkingLimits + dollPrototype: MobDraskDummy + skinColoration: Hues + maleFirstNames: Draskfrist + femaleFirstNames: Draskfrist + maleLastNames: Draskfrist + femaleLastNames: Draskfrist + naming: FirstDashFirstDashFirst + +- type: speciesBaseSprites + id: MobDraskSprites + sprites: + Head: MobDraskHead + Eyes: MobDraskEyes + Hair: MobHumanoidAnyMarking + HeadTop: MobHumanoidAnyMarking + HeadSide: MobHumanoidAnyMarking + Snout: MobHumanoidAnyMarking + Chest: MobDraskTorso + LArm: MobDraskLArm + RArm: MobDraskRArm + LHand: MobDraskLHand + RHand: MobDraskRHand + LLeg: MobDraskLLeg + RLeg: MobDraskRLeg + LFoot: MobDraskLFoot + RFoot: MobDraskRFoot + +- type: markingPoints + id: MobDraskMarkingLimits + onlyWhitelisted: true + points: + Head: + points: 1 + required: false + Hair: + points: 1 + required: false + HeadTop: + points: 1 + required: true + HeadSide: + points: 1 + required: true + Chest: + points: 1 + required: true + Tail: + points: 1 + required: false + Snout: + points: 1 + required: false + Legs: + points: 2 + required: false + Arms: + points: 2 + required: false + defaultMarkings: [DraskArmRight,DraskArmLeft] + + +- type: humanoidBaseSprite + id: MobDraskEyes + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: eyes + +- type: humanoidBaseSprite + id: MobDraskHead + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: head_m + +- type: humanoidBaseSprite + id: MobDraskHeadMale + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: head_m + +- type: humanoidBaseSprite + id: MobDraskHeadFemale + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: head_f + +- type: humanoidBaseSprite + id: MobDraskTorso + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: torso_m + +- type: humanoidBaseSprite + id: MobDraskTorsoMale + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: torso_m + +- type: humanoidBaseSprite + id: MobDraskTorsoFemale + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: torso_f + +- type: humanoidBaseSprite + id: MobDraskLLeg + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: l_leg + +- type: humanoidBaseSprite + id: MobDraskLHand + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: l_hand + +- type: humanoidBaseSprite + id: MobDraskLArm + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: l_arm + +- type: humanoidBaseSprite + id: MobDraskLFoot + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: l_foot + +- type: humanoidBaseSprite + id: MobDraskRLeg + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: r_leg + +- type: humanoidBaseSprite + id: MobDraskRHand + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: r_hand + +- type: humanoidBaseSprite + id: MobDraskRArm + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: r_arm + +- type: humanoidBaseSprite + id: MobDraskRFoot + baseSprite: + sprite: ADT/Mobs/Drask/parts.rsi + state: r_foot diff --git a/Resources/Prototypes/ADT/Voice/speech_emote_sounds.yml b/Resources/Prototypes/ADT/Voice/speech_emote_sounds.yml new file mode 100644 index 00000000000..8eb673d93f3 --- /dev/null +++ b/Resources/Prototypes/ADT/Voice/speech_emote_sounds.yml @@ -0,0 +1,67 @@ +- type: emoteSounds + id: MaleDrask + params: + variation: 0.125 + sounds: + Scream: + collection: DraskScream + Laugh: + collection: MaleLaugh + Sneeze: + collection: DraskSneeze + Cough: + collection: DraskCough + CatMeow: + collection: CatMeows + CatHisses: + collection: CatHisses + MonkeyScreeches: + collection: MonkeyScreeches + RobotBeep: + collection: RobotBeeps + Yawn: + collection: MaleYawn + Snore: + collection: Snores + Honk: + collection: BikeHorn + Sigh: + collection: MaleSigh + Crying: + collection: MaleCry + Whistle: + collection: Whistles + +- type: emoteSounds + id: FemaleDrask + params: + variation: 0.125 + sounds: + Scream: + collection: DraskScream + Laugh: + collection: FemaleLaugh + Sneeze: + collection: DraskSneeze + Cough: + collection: DraskCough + CatMeow: + collection: CatMeows + CatHisses: + collection: CatHisses + MonkeyScreeches: + collection: MonkeyScreeches + RobotBeep: + collection: RobotBeeps + Yawn: + collection: FemaleYawn + Snore: + collection: Snores + Honk: + collection: CluwneHorn + Sigh: + collection: FemaleSigh + Crying: + collection: FemaleCry + Whistle: + collection: Whistles diff --git a/Resources/Prototypes/ADT/Voice/speech_sounds.yml b/Resources/Prototypes/ADT/Voice/speech_sounds.yml new file mode 100644 index 00000000000..224f49ef3a3 --- /dev/null +++ b/Resources/Prototypes/ADT/Voice/speech_sounds.yml @@ -0,0 +1,8 @@ +- type: speechSounds + id: Drask + saySound: + path: /Audio/ADT/Drask/drasktalk.ogg + askSound: + path: /Audio/ADT/Drask/drasktalk.ogg + exclaimSound: + path: /Audio/ADT/Drask/drasktalk.ogg diff --git a/Resources/Prototypes/Reagents/gases.yml b/Resources/Prototypes/Reagents/gases.yml index 9ef508feead..2087d88655d 100644 --- a/Resources/Prototypes/Reagents/gases.yml +++ b/Resources/Prototypes/Reagents/gases.yml @@ -14,6 +14,12 @@ conditions: - !type:OrganType type: Human + # Start ADT tweak: Drask + - !type:Oxygenate + conditions: + - !type:OrganType + type: Drask + # End ADT tweak - !type:Oxygenate conditions: - !type:OrganType diff --git a/Resources/Textures/ADT/Mobs/Drask/custom.rsi/l_arm.png b/Resources/Textures/ADT/Mobs/Drask/custom.rsi/l_arm.png new file mode 100644 index 00000000000..f63177c4dbb Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/custom.rsi/l_arm.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/custom.rsi/meta.json b/Resources/Textures/ADT/Mobs/Drask/custom.rsi/meta.json new file mode 100644 index 00000000000..b53ab8a93a4 --- /dev/null +++ b/Resources/Textures/ADT/Mobs/Drask/custom.rsi/meta.json @@ -0,0 +1,19 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "ADT Team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "l_arm", + "directions": 4 + }, + { + "name": "r_arm", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Mobs/Drask/custom.rsi/r_arm.png b/Resources/Textures/ADT/Mobs/Drask/custom.rsi/r_arm.png new file mode 100644 index 00000000000..fdc1220e42d Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/custom.rsi/r_arm.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/organs.rsi/eyes.png b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/eyes.png new file mode 100644 index 00000000000..c976b9b9d38 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/eyes.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/organs.rsi/heart_on.png b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/heart_on.png new file mode 100644 index 00000000000..89b2dba9157 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/heart_on.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/organs.rsi/innards.png b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/innards.png new file mode 100644 index 00000000000..894a29e4b8a Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/innards.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/organs.rsi/kidneys.png b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/kidneys.png new file mode 100644 index 00000000000..793f341da9e Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/kidneys.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/organs.rsi/lungs.png b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/lungs.png new file mode 100644 index 00000000000..512f2b74484 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/lungs.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/organs.rsi/meta.json b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/meta.json new file mode 100644 index 00000000000..9997297c35c --- /dev/null +++ b/Resources/Textures/ADT/Mobs/Drask/organs.rsi/meta.json @@ -0,0 +1,33 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "ADT Team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "eyes" + }, + { + "name": "kidneys" + }, + { + "name": "innards" + }, + { + "name": "lungs" + }, + { + "name": "heart_on", + "delays": [ + [ + 0.6, + 0.1, + 0.1 + ] + ] + } + ] +} diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/eyes.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/eyes.png new file mode 100644 index 00000000000..75928b1c77d Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/eyes.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/full.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/full.png new file mode 100644 index 00000000000..33f6f187dc5 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/full.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/head_f.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/head_f.png new file mode 100644 index 00000000000..756ebb9ffba Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/head_f.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/head_m.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/head_m.png new file mode 100644 index 00000000000..267f0540e5d Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/head_m.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_arm.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_arm.png new file mode 100644 index 00000000000..7b411c4d1cf Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_arm.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_foot.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_foot.png new file mode 100644 index 00000000000..4fbef47ded9 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_foot.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_hand.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_hand.png new file mode 100644 index 00000000000..9a89e6bb8f3 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_hand.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_leg.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_leg.png new file mode 100644 index 00000000000..975fa51edba Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/l_leg.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/meta.json b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/meta.json new file mode 100644 index 00000000000..1c9ef4963ad --- /dev/null +++ b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/meta.json @@ -0,0 +1,66 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "ADT Team", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "full" + }, + { + "name": "eyes", + "directions": 4 + }, + { + "name": "head_f", + "directions": 4 + }, + { + "name": "head_m", + "directions": 4 + }, + { + "name": "l_arm", + "directions": 4 + }, + { + "name": "l_foot", + "directions": 4 + }, + { + "name": "l_hand", + "directions": 4 + }, + { + "name": "l_leg", + "directions": 4 + }, + { + "name": "r_arm", + "directions": 4 + }, + { + "name": "r_foot", + "directions": 4 + }, + { + "name": "r_hand", + "directions": 4 + }, + { + "name": "r_leg", + "directions": 4 + }, + { + "name": "torso_f", + "directions": 4 + }, + { + "name": "torso_m", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_arm.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_arm.png new file mode 100644 index 00000000000..6959b2c7f52 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_arm.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_foot.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_foot.png new file mode 100644 index 00000000000..ebaf3c833b5 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_foot.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_hand.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_hand.png new file mode 100644 index 00000000000..57140e922ec Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_hand.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_leg.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_leg.png new file mode 100644 index 00000000000..475e31b7d42 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/r_leg.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/torso_f.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/torso_f.png new file mode 100644 index 00000000000..75f8571969a Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/torso_f.png differ diff --git a/Resources/Textures/ADT/Mobs/Drask/parts.rsi/torso_m.png b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/torso_m.png new file mode 100644 index 00000000000..8f0186106f9 Binary files /dev/null and b/Resources/Textures/ADT/Mobs/Drask/parts.rsi/torso_m.png differ