Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add IPCs #305

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
161 changes: 161 additions & 0 deletions Resources/Locale/en-US/_CD/markings/ipc.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
marking-IPCScreenStatic = Static
marking-IPCScreenStatic-static = Screen

marking-IPCScreenBlue = Blue
marking-IPCScreenBlue-blue = Screen

marking-IPCScreenBreakout = Breakout
marking-IPCScreenBreakout-breakout = Screen

marking-IPCScreenEight = Eight
marking-IPCScreenEight-eight = Screen

marking-IPCScreenGoggles = Goggles
marking-IPCScreenGoggles-goggles = Screen

marking-IPCScreenExcla = Excla
marking-IPCScreenExcla-excla = Screen

marking-IPCScreenHeart = Heart
marking-IPCScreenHeart-heart = Screen

marking-IPCScreenMonoeye = Monoeye
marking-IPCScreenMonoeye-monoeye = Screen

marking-IPCScreenNature = Nature
marking-IPCScreenNature-nature = Screen

marking-IPCScreenOrange = Orange
marking-IPCScreenOrange-orange = Screen

marking-IPCScreenPink = Pink
marking-IPCScreenPink-pink = Screen

marking-IPCScreenQuestion = Question
marking-IPCScreenQuestion-question = Screen

marking-IPCScreenShower = Shower
marking-IPCScreenShower-shower = Screen

marking-IPCScreenYellow = Yellow
marking-IPCScreenYellow-yellow = Screen

marking-IPCScreenScroll = Scroll
marking-IPCScreenScroll-scroll = Screen

marking-IPCScreenConsole = Console
marking-IPCScreenConsole-console = Screen

marking-IPCScreenRgb = Rgb
marking-IPCScreenRgb-rgb = Screen

marking-IPCScreenGlider = Glider
marking-IPCScreenGlider-glider = Screen

marking-IPCScreenRainbow = Rainbow
marking-IPCScreenRainbow-rainbow = Screen

marking-IPCScreenBsod = BSOD
marking-IPCScreenBsod-bsod = Screen

marking-IPCScreenRedtext = Redtext
marking-IPCScreenRedtext-redtext = Screen

marking-IPCScreenSinewave = Sinewave
marking-IPCScreenSinewave-sinewave = Screen

marking-IPCScreenScreenwave = Screenwave
marking-IPCScreenScreenwave-screenwave = Screen

marking-IPCScreenEcgwave = Ecgwave
marking-IPCScreenEcgwave-ecgwave = Screen

marking-IPCScreenEyes = Eyes
marking-IPCScreenEyes-eyes = Screen

marking-IPCScreenEyesstall = Eyesstall
marking-IPCScreenEyesstall-eyesstall = Screen

marking-IPCScreenEyesangry = Eyesangry
marking-IPCScreenEyesangry-eyesangry = Screen

marking-IPCScreenLoading = Loading
marking-IPCScreenLoading-loading = Screen

marking-IPCScreenWindowsxp = Windowsxp
marking-IPCScreenWindowsxp-windowsxp = Screen

marking-IPCScreenTetris = Tetris
marking-IPCScreenTetris-tetris = Screen

marking-IPCScreenTv = TV
marking-IPCScreenTv-tv = Screen

marking-IPCScreenTextdrop = Textdrop
marking-IPCScreenTextdrop-textdrop = Screen

marking-IPCScreenStars = Stars
marking-IPCScreenStars-stars = Screen

marking-IPCScreenRainbowdiag = Rainbowdiag
marking-IPCScreenRainbowdiag-rainbowdiag = Screen

marking-IPCScreenBlank = Blank
marking-IPCScreenBlank-blank = Screen

marking-IPCScreenSmile = Smile
marking-IPCScreenSmile-smile = Screen

marking-IPCScreenSad = Sad
marking-IPCScreenSad-sad = Screen

marking-IPCScreenRing = Ring
marking-IPCScreenRing-ring = Screen

marking-IPCScreenL = L
marking-IPCScreenL-l = Screen

marking-IPCScreenTvantenna = Tvantenna
marking-IPCScreenTvantenna-tvantenna = Screen

marking-IPCScreenTesla = Tesla
marking-IPCScreenTesla-tesla = Screen

marking-IPCScreenCyberheadantenna = Cyberhead Antenna
marking-IPCScreenCyberheadantenna-cyberheadantenna = Screen

marking-IPCScreenSidelights = Sidelights
marking-IPCScreenSidelights-sidelights = Screen

marking-IPCScreenAntlers = Antlers
marking-IPCScreenAntlers-antlers = Screen

marking-IPCScreenDrone = Drone
marking-IPCScreenDrone-drone = Screen

marking-IPCScreenCrowned = Crowned
marking-IPCScreenCrowned-crowned = Screen

marking-IPCScreenAntennae = Antennae
marking-IPCScreenAntennae-antennae = Screen

marking-IPCTopTVAntenna = TV Antenna
marking-IPCTopTVAntenna-antennae = Screen

marking-IPCScreenTesla = Tesla
marking-IPCScreenTesla-tesla = Screen

marking-IPCTopCyberheadAntenna = Cyberhead Antenna
marking-IPCScreenCyberheadantenna-cyberheadantenna = Screen

marking-IPCSidelights = Sidelights
marking-IPCSidelights-sidelights = Screen

marking-IPCTopAntlers = Antlers
marking-IPCTopAntlers-antlers = Screen

marking-IPCTopCrowned = Crowned
marking-IPCTopCrowned-crowned = Screen

marking-IPCTopAntenna = Antennae
marking-IPCTopAntenna-antennae = Screen
9 changes: 9 additions & 0 deletions Resources/Prototypes/_CD/Body/Organs/ipc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
- type: entity
id: IPCCPU
parent: [BaseItem, OrganHumanBrain]
name: ipc cpu gen4
description: Glorb glorbp boop beep # TODO replace whenim not having a headache
components:
- type: Sprite
sprite: _CD/Mobs/Species/IPC/organs.rsi
state: cpu
141 changes: 141 additions & 0 deletions Resources/Prototypes/_CD/Body/Parts/ipc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
#Limbs that spawn when gibbed should get descriptions.
- type: entity
id: PartIPC
parent: [BaseItem, BasePart]
name: ipc body part
abstract: true
components:
- type: Damageable
damageContainer: Inorganic

- type: entity
id: TorsoIPC
name: IPC torso
parent: [PartIPC, BaseTorso]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "torso_m"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "torso_m"

- type: entity
id: HeadIPC
name: IPC head
parent: [PartIPC, BaseHead]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "head_m"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "head_m"
- type: InputMover
- type: GhostOnMove

- type: entity
id: LeftArmIPC
name: left IPC arm
parent: [PartIPC, BaseLeftArm]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "l_arm"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "l_arm"

- type: entity
id: RightArmIPC
name: right IPC arm
parent: [PartIPC, BaseRightArm]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "r_arm"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "r_arm"

- type: entity
id: LeftHandIPC
name: left IPC hand
parent: [PartIPC, BaseLeftHand]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "l_hand"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "l_hand"

- type: entity
id: RightHandIPC
name: right IPC hand
parent: [PartIPC, BaseRightHand]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "r_hand"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "r_hand"

- type: entity
id: LeftLegIPC
name: left IPC leg
parent: [PartIPC, BaseLeftLeg]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "l_leg"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "l_leg"

- type: entity
id: RightLegIPC
name: right IPC leg
parent: [PartIPC, BaseRightLeg]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "r_leg"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "r_leg"

- type: entity
id: LeftFootIPC
name: left IPC foot
parent: [PartIPC, BaseLeftFoot]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "l_foot"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "l_foot"

- type: entity
id: RightFootIPC
name: right IPC foot
parent: [PartIPC, BaseRightFoot]
components:
- type: Sprite
netsync: false
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "r_foot"
- type: Icon
sprite: _CD/Mobs/Species/IPC/parts.rsi
state: "r_foot"
42 changes: 42 additions & 0 deletions Resources/Prototypes/_CD/Body/Prototypes/ipc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
- type: body
id: IPC
name: "ipc"
root: torso
slots:
head:
part: HeadIPC
connections:
- torso
torso:
part: TorsoIPC
connections:
- right_arm
- left_arm
- right_leg
- left_leg
organs:
brain: IPCCPU
right_arm:
part: RightArmIPC
connections:
- right_hand
left_arm:
part: LeftArmIPC
connections:
- left_hand
right_hand:
part: RightHandIPC
left_hand:
part: LeftHandIPC
right_leg:
part: RightLegIPC
connections:
- right_foot
left_leg:
part: LeftLegIPC
connections:
- left_foot
right_foot:
part: RightFootIPC
left_foot:
part: LeftFootIPC
10 changes: 10 additions & 0 deletions Resources/Prototypes/_CD/Damage/modifier_sets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,13 @@
id: Vulpkanin
coefficients:
Heat: 1.15

# electronic damset but slightly evened mods
- type: damageModifierSet
id: IPC
coefficients:
Blunt: 0.75
Slash: 0.75
Piercing: 0.95
Shock: 1.25
Heat: 1.25
Loading
Loading