mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-01-02 21:44:17 +00:00
More fixes
This commit is contained in:
@@ -56,6 +56,9 @@
|
||||
shock_resist = 1
|
||||
nameset = 1
|
||||
holder_type = /obj/item/weapon/holder/protoblob
|
||||
var/hiding = 0
|
||||
vore_icons = 1
|
||||
vore_active = 1
|
||||
|
||||
/datum/say_list/protean_blob
|
||||
speak = list("Blrb?","Sqrsh.","Glrsh!")
|
||||
@@ -321,20 +324,30 @@
|
||||
healing = null
|
||||
|
||||
/mob/living/simple_mob/protean_blob/lay_down()
|
||||
..()
|
||||
var/obj/item/weapon/rig/rig = src.get_rig()
|
||||
if(rig)
|
||||
rig.force_rest(src)
|
||||
return
|
||||
if(resting)
|
||||
..()
|
||||
|
||||
/mob/living/simple_mob/protean_blob/verb/prot_hide()
|
||||
set name = "Hide Self"
|
||||
set desc = "Disperses your mass into a thin viel, making a trap to snatch prey with, or simply hide."
|
||||
set category = "Abilities"
|
||||
|
||||
if(!hiding)
|
||||
icon_state = "hide"
|
||||
sleep(7)
|
||||
mouse_opacity = 0
|
||||
plane = ABOVE_OBJ_PLANE
|
||||
hiding = 1
|
||||
else
|
||||
mouse_opacity = 1
|
||||
icon_state = "wake"
|
||||
plane = MOB_PLANE
|
||||
sleep(7)
|
||||
update_icon()
|
||||
hiding = 0
|
||||
//Potential glob noms
|
||||
if(can_be_drop_pred) //Toggleable in vore panel
|
||||
var/list/potentials = living_mobs(0)
|
||||
@@ -345,6 +358,15 @@
|
||||
target.buckled.unbuckle_mob(target, force = TRUE)
|
||||
target.forceMove(vore_selected)
|
||||
to_chat(target,"<span class='warning'>\The [src] quickly engulfs you, [vore_selected.vore_verb]ing you into their [vore_selected.name]!</span>")
|
||||
update_canmove()
|
||||
|
||||
/mob/living/simple_mob/protean_blob/update_canmove()
|
||||
if(hiding)
|
||||
canmove = 0
|
||||
return canmove
|
||||
else
|
||||
..()
|
||||
|
||||
|
||||
/* Don't need this block anymore since our Prots have hands
|
||||
/mob/living/simple_mob/protean_blob/attack_target(var/atom/A)
|
||||
@@ -484,6 +506,7 @@
|
||||
var/datum/species/protean/S = src.species
|
||||
blob.icon_living = S.blob_appearance
|
||||
blob.item_state = S.blob_appearance
|
||||
blob.icon_rest = S.blob_appearance + "_rest"
|
||||
blob.update_icon()
|
||||
|
||||
//Flip them to the protean panel
|
||||
|
||||
@@ -268,9 +268,11 @@
|
||||
var/mob/living/simple_mob/protean_blob/P = temporary_form
|
||||
if(S.OurRig) //Do we even have a RIG?
|
||||
if(P.loc == S.OurRig) //we're inside our own RIG
|
||||
if(ismob(S.OurRig.loc))
|
||||
var/mob/m = S.OurRig.loc
|
||||
m.drop_from_inventory(S.OurRig)
|
||||
if(S.OurRig.wearer) //We're being worn. Engulf em', if prefs align.. otherwise just drop off.
|
||||
var/mob/living/carbon/human/victim = S.OurRig.wearer
|
||||
victim.drop_from_inventory(S.OurRig)
|
||||
if(P.can_be_drop_pred && victim.devourable && victim.can_be_drop_prey)
|
||||
if(P.vore_selected)
|
||||
perform_the_nom(P,victim,P,P.vore_selected,1)
|
||||
@@ -309,7 +311,7 @@
|
||||
var/mob/living/caller = src
|
||||
if(temporary_form)
|
||||
caller = temporary_form
|
||||
var/blobstyle = input(caller, "Which blob style would you like?") in list("Red and Blue Stars", "Blue Star", "Plain")
|
||||
var/blobstyle = input(caller, "Which blob style would you like?") in list("Red and Blue Stars", "Blue Star", "Plain", "Catslug", "Pai Cat")
|
||||
switch(blobstyle)
|
||||
if("Red and Blue Stars")
|
||||
S.blob_appearance = "puddle2"
|
||||
@@ -317,10 +319,15 @@
|
||||
S.blob_appearance = "puddle1"
|
||||
if("Plain")
|
||||
S.blob_appearance = "puddle0"
|
||||
if("Catslug")
|
||||
S.blob_appearance = "catslug"
|
||||
if("Pai Cat")
|
||||
S.blob_appearance = "pai-cat"
|
||||
if(temporary_form)
|
||||
if(blobstyle)
|
||||
temporary_form.icon_living = S.blob_appearance
|
||||
temporary_form.item_state = S.blob_appearance
|
||||
temporary_form.icon_rest = S.blob_appearance + "_rest"
|
||||
temporary_form.update_icon()
|
||||
if(istype(temporary_form.loc, /obj/item/weapon/holder/protoblob))
|
||||
var/obj/item/weapon/holder/protoblob/PB = temporary_form.loc
|
||||
@@ -361,7 +368,7 @@
|
||||
target.drop_from_inventory(target.back)
|
||||
caller.visible_message("<span class='danger'>[caller] latched onto [target]!</span>", "<span class='danger'>You latch yourself onto [target]!</span>")
|
||||
target.Weaken(3)
|
||||
nano_rig_transform()
|
||||
nano_rig_transform(1)
|
||||
spawn(2) //Have to give time for the above proc to resolve
|
||||
S.OurRig.forceMove(target)
|
||||
target.equip_to_slot_if_possible(S.OurRig, slot_back)
|
||||
|
||||
@@ -95,17 +95,125 @@
|
||||
desc = "A helmet-shaped clump of nanomachines."
|
||||
light_overlay = "should not use a light overlay"
|
||||
species_restricted = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_TAJ, SPECIES_UNATHI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_PROMETHEAN, SPECIES_XENOHYBRID, SPECIES_VOX, SPECIES_TESHARI, SPECIES_VASILISSAN)
|
||||
sprite_sheets = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/species/tajaran/helmet_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/species/skrell/helmet_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/species/unathi/helmet_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/species/unathi/helmet_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/species/akula/helmet_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/species/sergal/helmet_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/species/sergal/helmet_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/species/vulpkanin/helmet_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/species/fox/helmet_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/species/vulpkanin/helmet_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/species/skrell/helmet_ch.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/species/teshari/helmet_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/species/skrell/helmet_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/species/vox/head_ch.dmi'
|
||||
)
|
||||
|
||||
sprite_sheets_obj = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/head_ch.dmi'
|
||||
)
|
||||
icon = 'modular_chomp/icons/mob/head_ch.dmi'
|
||||
|
||||
/obj/item/clothing/gloves/gauntlets/rig/protean
|
||||
name = "mass"
|
||||
desc = "Glove-shaped clusters of nanomachines."
|
||||
siemens_coefficient= 0
|
||||
species_restricted = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_TAJ, SPECIES_UNATHI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_PROMETHEAN, SPECIES_XENOHYBRID, SPECIES_VOX, SPECIES_TESHARI, SPECIES_VASILISSAN)
|
||||
sprite_sheets = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/species/teshari/hands_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/species/vox/gloves_ch.dmi'
|
||||
)
|
||||
|
||||
sprite_sheets_obj = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/hands_ch.dmi'
|
||||
)
|
||||
icon = 'modular_chomp/icons/mob/hands_ch.dmi'
|
||||
|
||||
/obj/item/clothing/shoes/magboots/rig/protean
|
||||
name = "mass"
|
||||
desc = "Boot-shaped clusters of nanomachines."
|
||||
species_restricted = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_TAJ, SPECIES_UNATHI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_PROMETHEAN, SPECIES_XENOHYBRID, SPECIES_VOX, SPECIES_TESHARI, SPECIES_VASILISSAN)
|
||||
sprite_sheets = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/species/teshari/feet_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/species/vox/shoes_ch.dmi'
|
||||
)
|
||||
|
||||
sprite_sheets_obj = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/feet_ch.dmi'
|
||||
)
|
||||
icon = 'modular_chomp/icons/mob/feet_ch.dmi'
|
||||
|
||||
/obj/item/clothing/suit/space/rig/protean
|
||||
name = "mass"
|
||||
@@ -120,49 +228,6 @@
|
||||
/obj/item/weapon/melee/baton,
|
||||
/obj/item/weapon/storage/backpack,
|
||||
)
|
||||
|
||||
|
||||
|
||||
|
||||
//Backend stuff to make the sprites work. Copied and pasted from rig_pieces_vr.dm, but added ch to everything. Only reason for this to be touched is to add or remove species. This might just need to go in a new file named rig_pieces_ch.dm.
|
||||
/obj/item/clothing/head/helmet/space/rig/protean
|
||||
sprite_sheets = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/head_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/species/tajaran/helmet_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/species/skrell/helmet_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/species/unathi/helmet_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/species/unathi/helmet_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/species/akula/helmet_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/species/sergal/helmet_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/species/sergal/helmet_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/species/vulpkanin/helmet_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/species/fox/helmet_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/species/vulpkanin/helmet_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/species/skrell/helmet_ch.dmi',
|
||||
SPECIES_TESHARI = 'icons/inventory/head/mob_ch_teshari.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/species/skrell/helmet_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/species/vox/head_ch.dmi'
|
||||
)
|
||||
|
||||
sprite_sheets_obj = list(
|
||||
SPECIES_HUMAN = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_TAJ = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_SKRELL = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_UNATHI = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_AKULA = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_SERGAL = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_NEVREAN = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_FENNEC = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_TESHARI = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'icons/obj/clothing/hats_ch.dmi',
|
||||
SPECIES_VOX = 'icons/obj/clothing/hats_ch.dmi'
|
||||
)
|
||||
|
||||
/obj/item/clothing/suit/space/rig/protean
|
||||
sprite_sheets = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/species/tajaran/suit_ch.dmi',
|
||||
@@ -176,102 +241,29 @@
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/species/fox/suit_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/species/vulpkanin/suit_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/species/skrell/suit_ch.dmi',
|
||||
SPECIES_TESHARI = 'icons/inventory/suit/mob_ch_teshari.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/species/teshari/suit_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/species/skrell/suit_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/species/vox/suit_ch.dmi'
|
||||
)
|
||||
|
||||
sprite_sheets_obj = list(
|
||||
SPECIES_HUMAN = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_TAJ = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_SKRELL = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_UNATHI = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_AKULA = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_SERGAL = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_NEVREAN = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_FENNEC = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_TESHARI = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'icons/obj/clothing/spacesuits_ch.dmi',
|
||||
SPECIES_VOX = 'icons/obj/clothing/spacesuits_ch.dmi'
|
||||
)
|
||||
|
||||
/obj/item/clothing/gloves/gauntlets/rig/protean
|
||||
sprite_sheets = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/hands_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/species/vox/gloves_ch.dmi'
|
||||
)
|
||||
|
||||
sprite_sheets_obj = list(
|
||||
SPECIES_HUMAN = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_TAJ = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_SKRELL = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_UNATHI = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_AKULA = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_SERGAL = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_NEVREAN = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_FENNEC = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_TESHARI = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'icons/obj/clothing/gloves_ch.dmi',
|
||||
SPECIES_VOX = 'icons/obj/clothing/gloves_ch.dmi'
|
||||
)
|
||||
|
||||
/obj/item/clothing/shoes/magboots/rig/protean
|
||||
sprite_sheets = list(
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/feet_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/species/vox/shoes_ch.dmi'
|
||||
)
|
||||
|
||||
sprite_sheets_obj = list(
|
||||
SPECIES_HUMAN = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_TAJ = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_SKRELL = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_UNATHI = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_AKULA = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_SERGAL = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_NEVREAN = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_FENNEC = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_TESHARI = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'icons/obj/clothing/shoes_ch.dmi',
|
||||
SPECIES_VOX = 'icons/obj/clothing/shoes_ch.dmi'
|
||||
SPECIES_HUMAN = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_TAJ = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_SKRELL = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_UNATHI = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_XENOHYBRID = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_AKULA = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_SERGAL = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_NEVREAN = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_VULPKANIN = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_ZORREN_HIGH = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_FENNEC = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_PROMETHEAN = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_TESHARI = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_VASILISSAN = 'modular_chomp/icons/mob/spacesuit_ch.dmi',
|
||||
SPECIES_VOX = 'modular_chomp/icons/mob/spacesuit_ch.dmi'
|
||||
)
|
||||
icon = 'modular_chomp/icons/mob/spacesuit_ch.dmi'
|
||||
|
||||
//Copy pasted most of this proc from base because I don't feel like rewriting the base proc with a shit load of exceptions
|
||||
/obj/item/weapon/rig/protean/attackby(obj/item/W as obj, mob/living/user as mob)
|
||||
@@ -536,28 +528,34 @@
|
||||
to_chat(user, "You assimilate the [R] into the [src]. Mimicking its stats and appearance.")
|
||||
for(var/obj/item/piece in list(gloves,helmet,boots,chest))
|
||||
piece.armor = R.armor.Copy()
|
||||
piece.max_pressure_protection = R.max_pressure_protection
|
||||
piece.max_heat_protection_temperature = R.max_heat_protection_temperature
|
||||
//I dislike this piece of code, but not every rig has the full set of parts
|
||||
if(R.gloves)
|
||||
gloves.sprite_sheets = R.gloves.sprite_sheets.Copy()
|
||||
gloves.sprite_sheets_obj = R.gloves.sprite_sheets.Copy()
|
||||
gloves.icon = R.gloves.icon
|
||||
gloves.icon_state = R.gloves.icon_state
|
||||
if(R.helmet)
|
||||
helmet.sprite_sheets = R.helmet.sprite_sheets.Copy()
|
||||
helmet.sprite_sheets_obj = R.helmet.sprite_sheets.Copy()
|
||||
helmet.icon = R.helmet.icon
|
||||
helmet.icon_state = R.helmet.icon_state
|
||||
if(R.boots)
|
||||
boots.sprite_sheets = R.boots.sprite_sheets.Copy()
|
||||
boots.sprite_sheets_obj = R.boots.sprite_sheets.Copy()
|
||||
boots.icon = R.boots.icon
|
||||
boots.icon_state = R.boots.icon_state
|
||||
if(R.chest)
|
||||
chest.sprite_sheets = R.chest.sprite_sheets.Copy()
|
||||
chest.sprite_sheets_obj = R.chest.sprite_sheets.Copy()
|
||||
chest.icon = R.chest.icon
|
||||
chest.icon_state = R.chest.icon_state
|
||||
suit_state = R.suit_state
|
||||
user.drop_item(R)
|
||||
contents += R
|
||||
assimilated_rig = R
|
||||
slowdown = (R.slowdown *0.5)
|
||||
slowdown = (initial(R.slowdown) *0.5)
|
||||
offline_slowdown = slowdown
|
||||
|
||||
/obj/item/weapon/rig/protean/verb/RemoveRig()
|
||||
@@ -567,7 +565,10 @@
|
||||
if(assimilated_rig)
|
||||
for(var/obj/item/piece in list(gloves,helmet,boots,chest))
|
||||
piece.armor = armor.Copy()
|
||||
piece.max_pressure_protection = initial(piece.max_pressure_protection)
|
||||
piece.max_heat_protection_temperature = initial(piece.max_heat_protection_temperature)
|
||||
piece.icon_state = initial(piece.icon_state)
|
||||
piece.icon = initial(piece.icon)
|
||||
|
||||
//Byond at this time does not support initial() on lists
|
||||
//So we have to create a new rig, just so we can copy the lists we're after
|
||||
@@ -589,3 +590,33 @@
|
||||
qdel(tempRig)
|
||||
else
|
||||
to_chat(usr, "[src] has not assimilated a RIG. Use one on it to assimilate.")
|
||||
|
||||
/obj/item/weapon/rig/protean/MouseDrop(obj/over_object as obj)
|
||||
if(!canremove)
|
||||
return
|
||||
|
||||
if (isliving(usr) || isobserver(usr))
|
||||
|
||||
if (istype(usr.loc,/obj/mecha)) // stops inventory actions in a mech. why?
|
||||
return
|
||||
|
||||
if (!( istype(over_object, /obj/screen) ))
|
||||
return ..()
|
||||
|
||||
if (!(src.loc == usr) || (src.loc && src.loc.loc == usr))
|
||||
return
|
||||
|
||||
if (( usr.restrained() ) || ( usr.stat ))
|
||||
return
|
||||
|
||||
if ((src.loc == usr) && !(istype(over_object, /obj/screen)) && !usr.unEquip(src))
|
||||
return
|
||||
|
||||
switch(over_object.name)
|
||||
if("r_hand")
|
||||
usr.unEquip(src)
|
||||
usr.put_in_r_hand(src)
|
||||
if("l_hand")
|
||||
usr.unEquip(src)
|
||||
usr.put_in_l_hand(src)
|
||||
src.add_fingerprint(usr)
|
||||
Reference in New Issue
Block a user