mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-18 19:39:42 +01:00
Shells and Periphery (#1327)
Adds Shells. Adds tags. Adds IPC subspecies. Adds HK-47's. Does not add IPC construction. Beyond the obvious review of shells, the exact stats of the IPC subspecies need review. They were largely an afterthought, and quickly overshadowed by the shell project.
This commit is contained in:
@@ -932,8 +932,6 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
if(company)
|
||||
model = company
|
||||
var/datum/robolimb/R = all_robolimbs[company]
|
||||
if(species && (species.name in R.species_cannot_use))
|
||||
R = basic_robolimb
|
||||
if(R)
|
||||
force_icon = R.icon
|
||||
name = "[R.company] [initial(name)]"
|
||||
|
||||
@@ -16,7 +16,7 @@ var/global/list/limb_icon_cache = list()
|
||||
s_tone = null
|
||||
s_col = null
|
||||
h_col = null
|
||||
if(status & ORGAN_ROBOT)
|
||||
if(status & ORGAN_ROBOT && !(isipc(human)))
|
||||
return
|
||||
if(species && human.species && species.name != human.species.name)
|
||||
return
|
||||
|
||||
@@ -15,7 +15,7 @@ var/global/datum/robolimb/basic_robolimb
|
||||
var/desc = "A generic unbranded robotic prosthesis." // Seen when examining a limb.
|
||||
var/icon = 'icons/mob/human_races/robotic.dmi' // Icon base to draw from.
|
||||
var/unavailable_at_chargen // If set, not available at chargen.
|
||||
var/list/species_cannot_use = list("Resomi")
|
||||
var/list/species_can_use = list("Human","Skrell","Tajara","Zhan-Khaza","M'sai","Unathi","Vaurca Worker","Vaurca Warrior","Baseline Frame")
|
||||
|
||||
/datum/robolimb/bishop
|
||||
company = "Bishop Cybernetics"
|
||||
@@ -42,3 +42,45 @@ var/global/datum/robolimb/basic_robolimb
|
||||
desc = "This limb is simple and functional; no effort has been made to make it look human."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/ipc.dmi'
|
||||
unavailable_at_chargen = 1
|
||||
|
||||
/datum/robolimb/industrial
|
||||
company = "Hephaestus Industrial Limb"
|
||||
desc = "This limb is more robust than the standard Hephaestus Integrated Limb, and is better suited for industrial machinery."
|
||||
icon = 'icons/mob/human_races/r_industrial.dmi'
|
||||
unavailable_at_chargen = 1
|
||||
|
||||
/datum/robolimb/terminator
|
||||
company = "Hephaestus Vulcanite Limb"
|
||||
desc = "A ludicrously expensive and EMP shielded component, these types of limbs are best suited for highly specialized cyborgs."
|
||||
icon = 'icons/mob/human_races/r_terminator.dmi'
|
||||
unavailable_at_chargen = 1
|
||||
|
||||
/datum/robolimb/human
|
||||
company = "Human Synthskin"
|
||||
desc = "This limb is designed to mimic the Human form. It does so with moderate success."
|
||||
icon = 'icons/mob/human_races/r_human.dmi'
|
||||
species_can_use = list("Human")
|
||||
|
||||
/datum/robolimb/unathi
|
||||
company = "Unathi Synthskin"
|
||||
desc = "This limb is designed to mimic the Unathi form. It does so with moderate success."
|
||||
icon = 'icons/mob/human_races/r_lizard.dmi'
|
||||
species_can_use = list("Unathi")
|
||||
|
||||
/datum/robolimb/tajara
|
||||
company = "Tajara Synthskin"
|
||||
desc = "This limb is designed to mimic the Tajaran form. It does so with moderate success."
|
||||
icon = 'icons/mob/human_races/r_tajaran.dmi'
|
||||
species_can_use = list("Tajara","Zhan-Khaza","M'sai")
|
||||
|
||||
/datum/robolimb/skrell
|
||||
company = "Skrell Synthskin"
|
||||
desc = "This limb is designed to mimic the Skrellian form. It does so with moderate success."
|
||||
icon = 'icons/mob/human_races/r_skrell.dmi'
|
||||
species_can_use = list("Skrell")
|
||||
|
||||
/datum/robolimb/vaurca
|
||||
company = "Vaurca Synthskin"
|
||||
desc = "This limb is designed to mimic the Vaurcae form. It does so with moderate success."
|
||||
icon = 'icons/mob/human_races/r_vaurca.dmi'
|
||||
species_can_use = list("Vaurca Worker","Vaurca Warrior")
|
||||
@@ -6,7 +6,7 @@
|
||||
max_damage = 50 //made same as arm, since it is not vital
|
||||
min_broken_damage = 30
|
||||
encased = null
|
||||
|
||||
|
||||
/obj/item/organ/external/head/ipc/New()
|
||||
robotize("Hephaestus Integrated Limb")
|
||||
..()
|
||||
@@ -104,6 +104,18 @@
|
||||
robotize()
|
||||
..()
|
||||
|
||||
/obj/item/organ/ipc_tag
|
||||
name = "identification tag"
|
||||
organ_tag = "ipc tag"
|
||||
parent_organ = "groin"
|
||||
icon = 'icons/obj/telescience.dmi'
|
||||
icon_state = "gps-c"
|
||||
dead_icon = "gps-c"
|
||||
|
||||
/obj/item/organ/ipc_tag/New()
|
||||
robotize()
|
||||
..()
|
||||
|
||||
// Used for an MMI or posibrain being installed into a human.
|
||||
/obj/item/organ/mmi_holder
|
||||
name = "brain"
|
||||
@@ -155,3 +167,183 @@
|
||||
else
|
||||
stored_mmi.loc = get_turf(src)
|
||||
qdel(src)
|
||||
|
||||
|
||||
//terminator organs
|
||||
|
||||
/obj/item/organ/mmi_holder/posibrain/terminator
|
||||
name = "brain"
|
||||
organ_tag = "brain"
|
||||
parent_organ = "chest"
|
||||
vital = 1
|
||||
|
||||
/obj/item/organ/data
|
||||
name = "data core"
|
||||
organ_tag = "data core"
|
||||
parent_organ = "groin"
|
||||
icon = 'icons/obj/cloning.dmi'
|
||||
icon_state = "harddisk"
|
||||
vital = 0
|
||||
|
||||
/obj/item/organ/data/New()
|
||||
robotize()
|
||||
..()
|
||||
|
||||
/obj/item/organ/cell/terminator
|
||||
name = "shielded microbattery"
|
||||
desc = "A small, powerful cell for use in fully prosthetic bodies. Equipped with a Faraday shield."
|
||||
icon = 'icons/obj/power.dmi'
|
||||
icon_state = "scell"
|
||||
organ_tag = "shielded cell"
|
||||
parent_organ = "chest"
|
||||
vital = 1
|
||||
|
||||
/obj/item/organ/cell/New()
|
||||
mechassist()
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/head/terminator
|
||||
dislocated = -1
|
||||
can_intake_reagents = 0
|
||||
vital = 0
|
||||
max_damage = 50 //made same as arm, since it is not vital
|
||||
min_broken_damage = 30
|
||||
encased = null
|
||||
|
||||
/obj/item/organ/external/head/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/chest/terminator
|
||||
dislocated = -1
|
||||
encased = null
|
||||
/obj/item/organ/external/chest/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/groin/terminator
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/groin/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/arm/terminator
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/arm/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/arm/right/terminator
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/arm/right/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/leg/terminator
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/leg/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/leg/right/terminator
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/leg/right/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/foot/terminator
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/foot/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/foot/right/terminator
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/foot/right/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/hand/terminator
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/hand/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/hand/right/terminator
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/hand/right/terminator/New()
|
||||
mechassist("Hephaestus Vulcanite Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/head/industrial
|
||||
dislocated = -1
|
||||
can_intake_reagents = 0
|
||||
vital = 0
|
||||
max_damage = 50 //made same as arm, since it is not vital
|
||||
min_broken_damage = 30
|
||||
encased = null
|
||||
|
||||
/obj/item/organ/external/head/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/chest/industrial
|
||||
dislocated = -1
|
||||
encased = null
|
||||
/obj/item/organ/external/chest/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/groin/industrial
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/groin/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/arm/industrial
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/arm/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/arm/right/industrial
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/arm/right/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/leg/industrial
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/leg/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/leg/right/industrial
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/leg/right/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/foot/industrial
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/foot/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/foot/right/industrial
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/foot/right/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/hand/industrial
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/hand/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/hand/right/industrial
|
||||
dislocated = -1
|
||||
/obj/item/organ/external/hand/right/industrial/New()
|
||||
robotize("Hephaestus Industrial Limb")
|
||||
..()
|
||||
Reference in New Issue
Block a user