From c9c1de29f622b7ae86950f1283fa8fd4611cb344 Mon Sep 17 00:00:00 2001 From: HanSolo1519 <72716882+HanSolo1519@users.noreply.github.com> Date: Sat, 24 Aug 2024 07:17:08 -0400 Subject: [PATCH] Adds NobleRow's New Bishop Headsprites (#19808) Adds new headtypes made by NobleRow. Copies most of MattAtlas' code from #18800 ![image](https://github.com/user-attachments/assets/b88fe7be-a250-4f54-acf0-80b926fe342f) Selen, Sienna and Siseyo heads (and markings) --- code/__DEFINES/mobs.dm | 3 + .../abstract/new_player/sprite_accessories.dm | 35 +++++++++++ code/modules/organs/robolimbs.dm | 24 ++++++++ html/changelogs/ipcheads.yml | 58 ++++++++++++++++++ icons/mob/human_races/ipc/selen.dmi | Bin 0 -> 426 bytes icons/mob/human_races/ipc/sienna.dmi | Bin 0 -> 427 bytes icons/mob/human_races/ipc/siseyo.dmi | Bin 0 -> 440 bytes icons/mob/human_races/markings_bishop.dmi | Bin 1414 -> 1914 bytes 8 files changed, 120 insertions(+) create mode 100644 html/changelogs/ipcheads.yml create mode 100644 icons/mob/human_races/ipc/selen.dmi create mode 100644 icons/mob/human_races/ipc/sienna.dmi create mode 100644 icons/mob/human_races/ipc/siseyo.dmi diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index c9f0bc0b282..8ceccc7c55e 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -430,6 +430,9 @@ #define PROSTHETIC_HOPLAN "Hoplan Head" #define PROSTHETIC_RAXUS "Raxus Head" #define PROSTHETIC_INDRICUS "Indricus Head" +#define PROSTHETIC_SELEN "Selen Head" +#define PROSTHETIC_SIENNA "Sienna Head" +#define PROSTHETIC_SISEYO "Siseyo Head" //Prosthetics that aren't restricted by species #define PROSTHETICS_UNRESTRICTED list(PROSTHETIC_BC, PROSTHETIC_HI, PROSTHETIC_XMG, PROSTHETIC_UNBRANDED, PROSTHETIC_ZH) diff --git a/code/modules/mob/abstract/new_player/sprite_accessories.dm b/code/modules/mob/abstract/new_player/sprite_accessories.dm index e819f1cfa8e..667a8486d75 100644 --- a/code/modules/mob/abstract/new_player/sprite_accessories.dm +++ b/code/modules/mob/abstract/new_player/sprite_accessories.dm @@ -6315,6 +6315,41 @@ Follow by example and make good judgement based on length which list to include name = "Bishop - Triangular Face Mask" icon_state = "bishop_triangular_mask" + +/datum/sprite_accessory/marking/bishop_lights/selen + name = "Bishop - Selen Primary Colors" + icon_state = "selen_primary" + body_parts = list(BP_HEAD) + robotize_type_required = list(PROSTHETIC_SELEN) + +/datum/sprite_accessory/marking/bishop_lights/bishop_mask/selen/lights + name = "Bishop - Selen Lights" + icon_state = "selen_lights" + body_parts = list(BP_HEAD) + +/datum/sprite_accessory/marking/bishop_lights/bishop_mask/sienna + name = "Bishop - Sienna Primary Colors" + icon_state = "sienna_primary" + body_parts = list(BP_HEAD) + robotize_type_required = list(PROSTHETIC_SIENNA) + +/datum/sprite_accessory/marking/bishop_lights/sienna/lights + name = "Bishop - Sienna Lights" + icon_state = "sienna_lights" + body_parts = list(BP_HEAD) + +/datum/sprite_accessory/marking/bishop_lights/siseyo + name = "Bishop - Siseyo Primary Colors" + icon_state = "siseyo_primary" + body_parts = list(BP_HEAD) + robotize_type_required = list(PROSTHETIC_SISEYO) + +/datum/sprite_accessory/marking/bishop_lights/sienna/lights + name = "Bishop - Siseyo Lights" + icon_state = "siseyo_lights" + body_parts = list(BP_HEAD) + + /datum/sprite_accessory/marking/bishop_lights/bishop_panels name = "Bishop - Full Body Panel Colors" icon_state = "bishop_panels" diff --git a/code/modules/organs/robolimbs.dm b/code/modules/organs/robolimbs.dm index b7c61952af6..756dc15bfe8 100644 --- a/code/modules/organs/robolimbs.dm +++ b/code/modules/organs/robolimbs.dm @@ -228,3 +228,27 @@ GLOBAL_DATUM(basic_robolimb, /datum/robolimb) linked_frame = SPECIES_IPC icon = 'icons/mob/human_races/ipc/raxus.dmi' allowed_external_organs = list(BP_HEAD) + +/datum/robolimb/selen + company = PROSTHETIC_SELEN + desc = "A seamless white monoplane covers the majority of the head, concealing various optic sensors." + species_can_use = list(SPECIES_IPC_BISHOP) + linked_frame = SPECIES_IPC_BISHOP + icon = 'icons/mob/human_races/ipc/selen.dmi' + allowed_external_organs = list(BP_HEAD) + +/datum/robolimb/sienna + company = PROSTHETIC_SIENNA + desc = "A delicate-looking head covered in eight state-of-the-art optic sensors." + species_can_use = list(SPECIES_IPC_BISHOP) + linked_frame = SPECIES_IPC_BISHOP + icon = 'icons/mob/human_races/ipc/sienna.dmi' + allowed_external_organs = list(BP_HEAD) + +/datum/robolimb/siseyo + company = PROSTHETIC_SISEYO + desc = "A sleek vertical gap in the head opens up to allow various optical sensors, running lights and slots for additional modules." + species_can_use = list(SPECIES_IPC_BISHOP) + linked_frame = SPECIES_IPC_BISHOP + icon = 'icons/mob/human_races/ipc/siseyo.dmi' + allowed_external_organs = list(BP_HEAD) diff --git a/html/changelogs/ipcheads.yml b/html/changelogs/ipcheads.yml new file mode 100644 index 00000000000..3537ca205c3 --- /dev/null +++ b/html/changelogs/ipcheads.yml @@ -0,0 +1,58 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# - (fixes bugs) +# wip +# - (work in progress) +# qol +# - (quality of life) +# soundadd +# - (adds a sound) +# sounddel +# - (removes a sound) +# rscadd +# - (adds a feature) +# rscdel +# - (removes a feature) +# imageadd +# - (adds an image or sprite) +# imagedel +# - (removes an image or sprite) +# spellcheck +# - (fixes spelling or grammar) +# experiment +# - (experimental change) +# balance +# - (balance changes) +# code_imp +# - (misc internal code change) +# refactor +# - (refactors code) +# config +# - (makes a change to the config files) +# admin +# - (makes changes to administrator tools) +# server +# - (miscellaneous changes to server) +################################# + +# Your name. +author: HanSolo1519 + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit. +# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Codes in new IPC heads, the Selen, Sienna and Siseyo series heads. (Thanks NobleRow for making them!)" diff --git a/icons/mob/human_races/ipc/selen.dmi b/icons/mob/human_races/ipc/selen.dmi new file mode 100644 index 0000000000000000000000000000000000000000..8f787c8a8d117070d25be0ea75925469cefbbeff GIT binary patch literal 426 zcmV;b0agBqP)z`%fjfL~u<0RR6XAt9-s&IJGf00DGTPE!Ct=GbNc004M;R9JLG zWpiV4X>fFDZ*Bkpc$`yKaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDainGjE%TB zGg33tGfE(w;*!LYR3K9+BQ-Haw>UK?HBX6)GbOXA7^IVnGp#5wHxw8{#lak5fGzzx?YnEQY0q+7rd`&zGYrU@4mXA#2CjA%zR}l@00Uxm zd8V!MEessVSiwSVV1bxRjlIMcgNEN=;vk5Kh<=Fo0q+AMBBFP^4|pFC5z&{t08Y<7 U@&W)OS^xk507*qoM6N<$f@YAiE&u=k literal 0 HcmV?d00001 diff --git a/icons/mob/human_races/ipc/sienna.dmi b/icons/mob/human_races/ipc/sienna.dmi new file mode 100644 index 0000000000000000000000000000000000000000..e3b8586c0569f0e4caf605960a2b03340c3c1495 GIT binary patch literal 427 zcmV;c0aX5pP)fFDZ*Bkpc$`yKaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDainGjE%TB zGg33tGfE(w;*!LYR3K9+BQ-Haw>UF3FE3Gvi!&v&s2HS`i!-e#F*g;&HpHqnK9?lb zX}DA?E4cc(fE^A1m{vEKM?piW0002CNklr=x|P}R%8 z0BbL>vh5zwlh)w|n;t$O#!_SZ8?>lBZs2P{L`3vMybpLE5D^g#@jl>vKtx1e@&;j{ VQ+k(^$&~;A002ovPDHLkV1o4$u?_$L literal 0 HcmV?d00001 diff --git a/icons/mob/human_races/ipc/siseyo.dmi b/icons/mob/human_races/ipc/siseyo.dmi new file mode 100644 index 0000000000000000000000000000000000000000..18a24f288ed823e2255fcf64595ebaec0a77b299 GIT binary patch literal 440 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 Au>b%7 literal 1414 zcmV;11$p|3P)#>U3M!NI(|y!rY0fPjEsUthq$!0QYczyJUM0d!JMQvg8b*k%9#0M~j{ zSad{Xb7OL8aCB*JZU6vyoSl@-4uUWcgwOOT8aQkGyLvGa!$DqwtWs!WX-Ql4^`%NU zm~a?wyV?1&nRc=nKjoLAsWYCJ z=kI~~0BD(WCXCeOcK`qcFiAu~RCt{2+)HxeFc1b{Bc)=^jw7gGkt`{)2un7T6XXCa zasb!(0xr1t*wkcDw4o@A1nMdQG9}1uHHH z0RVm&)E@yNL;dhO!e2@N00000_&I*>b7wH_;r%^#3U}_I|0&zsK6eHH000000QYO? zAG8Naq(k3+TK$J((0>SUdk+UQdfc;@gY~<}>-R%%X7q8OuZHV)ao4{GtUkBruZHS( zao6uXewfkQfxR58-v!p+2iHINBLDyZ00000fNySo{VuMbP```o2KBqhP``tyn#qHC zsEuoMmpY9Rdh#H+SaYcZCb{KbQx9<8Y zBt}CWD;2leu{~CUf1=@^Xt_8^$Mv+jbrAcHRrJ4^! z<@%z5jpaQC0mjvi?=6)!2L)TEX_9`*^hvRqQd4 zPWrn0b;pp>(Gv0b?Dw12j(7|&a%1?q@q&vqI69&RKostFD4<|XL4I9n`gR< zj;~}o@u^K+-`s4*W3eWCbhFiw6Jk0|-$EYuyO8WroxDKIn`Ao{vrAVin9|8Ii4{eKe_-+Ps}|8Iiw`v0iR{eKe_e+&W`4Su!tpC>Z+|D97X z8vN{jK=l8?Y<%9@6T9nL^K&&j3g@mLBH8tzWcQ_l&uf!3qq*x}O|X-*NExH02C;}x&}t&+aWdZ_nlf83uqc>Rx`S|SV8|Abxt z)6tXqZ`e0O{m<NzE^1^*Ov U$sBdR#sB~S07*qoM6N<$g6L+u82|tP