mirror of
https://github.com/CHOMPstation/CHOMPstation.git
synced 2026-08-24 20:46:29 +01:00
Removes some changes, clarifies ID description
This commit is contained in:
@@ -2,13 +2,10 @@
|
||||
#define DM_HOLD "Hold"
|
||||
#define DM_DIGEST "Digest"
|
||||
#define DM_ITEMWEAK "Digest (Item Friendly)"
|
||||
#define DM_DIGEST_NUMB "Digest (Numbing)"
|
||||
#define DM_ITEMWEAK_NUMB "Digest (Numbing, Item Friendly)"
|
||||
#define DM_STRIPDIGEST "Strip Digest (Items Only)"
|
||||
#define DM_STRIP_ITEMWEAK "Strip Digest (Items Friendly)"
|
||||
#define DM_DIGEST_NUMB "Digest (Numbing)"
|
||||
#define DM_HEAL "Heal"
|
||||
#define DM_ABSORB "Absorb"
|
||||
#define DM_ABSORB_STRIP "Absorb Naked"
|
||||
#define DM_TRANSFORM_HAIR_AND_EYES "Transform (Hair and eyes)"
|
||||
#define DM_TRANSFORM_MALE "Transform (Male)"
|
||||
#define DM_TRANSFORM_FEMALE "Transform (Female)"
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
var/release_sound = TRUE // Boolean for now, maybe replace with something else later
|
||||
|
||||
//I don't think we've ever altered these lists. making them static until someone actually overrides them somewhere.
|
||||
var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ITEMWEAK,DM_DIGEST_NUMB,DM_ITEMWEAK_NUMB,DM_STRIPDIGEST,DM_STRIP_ITEMWEAK,DM_HEAL,DM_ABSORB,DM_ABSORB_STRIP,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL) // Possible digest modes
|
||||
var/tmp/static/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_ITEMWEAK,DM_STRIPDIGEST,DM_HEAL,DM_ABSORB,DM_DRAIN,DM_UNABSORB,DM_SHRINK,DM_GROW,DM_SIZE_STEAL,DM_DIGEST_NUMB) // Possible digest modes
|
||||
var/tmp/static/list/transform_modes = list(DM_TRANSFORM_MALE,DM_TRANSFORM_FEMALE,DM_TRANSFORM_KEEP_GENDER,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR,DM_TRANSFORM_CHANGE_SPECIES_AND_TAUR_EGG,DM_TRANSFORM_REPLICA,DM_TRANSFORM_REPLICA_EGG,DM_TRANSFORM_KEEP_GENDER_EGG,DM_TRANSFORM_MALE_EGG,DM_TRANSFORM_FEMALE_EGG, DM_EGG)
|
||||
var/tmp/static/list/slots = list(slot_back,slot_handcuffed,slot_l_store,slot_r_store,slot_wear_mask,slot_l_hand,slot_r_hand,slot_wear_id,slot_glasses,slot_gloves,slot_head,slot_shoes,slot_belt,slot_wear_suit,slot_w_uniform,slot_s_store,slot_l_ear,slot_r_ear)
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
var/list/EL = emote_lists[digest_mode]
|
||||
if(LAZYLEN(EL))
|
||||
for(var/mob/living/M in contents)
|
||||
if(M.digestable || !(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK || digest_mode == DM_ITEMWEAK_NUMB)) // don't give digesty messages to indigestible people
|
||||
if(M.digestable || !(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK)) // don't give digesty messages to indigestible people
|
||||
to_chat(M,"<span class='notice'>[pick(EL)]</span>")
|
||||
|
||||
/////////////////////////// Exit Early ////////////////////////////
|
||||
@@ -38,7 +38,7 @@
|
||||
return SSBELLIES_PROCESSED //Pretty boring, huh
|
||||
|
||||
//////////////////////////// DM_DIGEST ////////////////////////////
|
||||
else if(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK || digest_mode == DM_ITEMWEAK_NUMB)
|
||||
else if(digest_mode == DM_DIGEST || digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK)
|
||||
|
||||
if(prob(50)) //Was SO OFTEN. AAAA.
|
||||
play_sound = pick(digestion_sounds)
|
||||
@@ -71,7 +71,7 @@
|
||||
owner.update_icons()
|
||||
continue
|
||||
|
||||
if(digest_mode == DM_DIGEST_NUMB || digest_mode == DM_ITEMWEAK_NUMB && ishuman(M))
|
||||
if(digest_mode == DM_DIGEST_NUMB && ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(H.bloodstr.get_reagent_amount("numbenzyme") < 5)
|
||||
H.bloodstr.add_reagent("numbenzyme",10)
|
||||
@@ -94,7 +94,7 @@
|
||||
//Contaminate or gurgle items
|
||||
var/obj/item/T = pick(touchable_items)
|
||||
if(istype(T))
|
||||
if(digest_mode == DM_ITEMWEAK || digest_mode == DM_ITEMWEAK_NUMB)
|
||||
if(digest_mode == DM_ITEMWEAK)
|
||||
if(istype(T,/obj/item/weapon/reagent_containers/food) || istype(T,/obj/item/weapon/holder) || istype(T,/obj/item/organ))
|
||||
digest_item(T)
|
||||
else
|
||||
@@ -102,10 +102,11 @@
|
||||
items_preserved |= T
|
||||
else
|
||||
digest_item(T)
|
||||
owner.updateVRPanel()
|
||||
|
||||
owner.updateVRPanel()
|
||||
|
||||
//////////////////////////// DM_STRIPDIGEST ////////////////////////////
|
||||
else if(digest_mode == DM_STRIPDIGEST || digest_mode == DM_STRIP_ITEMWEAK) // Only gurgle the gear off your prey.
|
||||
else if(digest_mode == DM_STRIPDIGEST) // Only gurgle the gear off your prey.
|
||||
|
||||
if(prob(50))
|
||||
play_sound = pick(digestion_sounds)
|
||||
@@ -113,14 +114,7 @@
|
||||
// Handle loose items first.
|
||||
var/obj/item/T = pick(touchable_items)
|
||||
if(istype(T))
|
||||
if(digest_mode == DM_STRIP_ITEMWEAK)
|
||||
if(istype(T,/obj/item/weapon/reagent_containers/food) || istype(T,/obj/item/weapon/holder) || istype(T,/obj/item/organ))
|
||||
digest_item(T)
|
||||
else
|
||||
T.gurgle_contaminate(contents, owner)
|
||||
items_preserved |= T
|
||||
else
|
||||
digest_item(T)
|
||||
digest_item(T)
|
||||
|
||||
for(var/mob/living/carbon/human/M in contents)
|
||||
if (M.absorbed)
|
||||
@@ -129,20 +123,14 @@
|
||||
var/obj/item/thingy = M.get_equipped_item(slot = slot)
|
||||
if(thingy)
|
||||
M.unEquip(thingy,force = TRUE)
|
||||
if(digest_mode == DM_STRIP_ITEMWEAK)
|
||||
if(istype(thingy,/obj/item/weapon/reagent_containers/food) || istype(thingy,/obj/item/weapon/holder) || istype(thingy,/obj/item/organ))
|
||||
digest_item(thingy)
|
||||
else
|
||||
thingy.gurgle_contaminate(contents, owner)
|
||||
items_preserved |= thingy
|
||||
else
|
||||
digest_item(T)
|
||||
digest_item(thingy)
|
||||
break
|
||||
M.updateVRPanel()
|
||||
|
||||
owner.updateVRPanel()
|
||||
|
||||
//////////////////////////// DM_ABSORB ////////////////////////////
|
||||
else if(digest_mode == DM_ABSORB || digest_mode == DM_ABSORB_STRIP)
|
||||
else if(digest_mode == DM_ABSORB)
|
||||
|
||||
for (var/mob/living/M in contents)
|
||||
|
||||
@@ -153,17 +141,10 @@
|
||||
continue
|
||||
|
||||
if(M.nutrition >= 100) //Drain them until there's no nutrients left. Slowly "absorb" them.
|
||||
M.nutrition -= digest_brute+digest_burn
|
||||
owner.nutrition += digest_brute+digest_burn
|
||||
if(isrobot(owner))
|
||||
var/mob/living/silicon/robot/R = owner
|
||||
R.cell.charge += 10*(digest_brute+digest_burn)
|
||||
var/oldnutrition = (M.nutrition * 0.05)
|
||||
M.nutrition = (M.nutrition * 0.95)
|
||||
owner.nutrition += oldnutrition
|
||||
else if(M.nutrition < 100) //When they're finally drained.
|
||||
if(digest_mode == DM_ABSORB_STRIP)
|
||||
for(var/slot in slots)
|
||||
var/obj/item/thingy = M.get_equipped_item(slot = slot)
|
||||
if(thingy)
|
||||
M.unEquip(thingy,force = TRUE)
|
||||
absorb_living(M)
|
||||
|
||||
//////////////////////////// DM_UNABSORB ////////////////////////////
|
||||
@@ -185,11 +166,9 @@
|
||||
play_sound = pick(digestion_sounds)
|
||||
|
||||
if(M.nutrition >= 100) //Drain them until there's no nutrients left.
|
||||
M.nutrition -= digest_brute+digest_burn
|
||||
owner.nutrition += digest_brute+digest_burn
|
||||
if(isrobot(owner))
|
||||
var/mob/living/silicon/robot/R = owner
|
||||
R.cell.charge += 10*(digest_brute+digest_burn)
|
||||
var/oldnutrition = (M.nutrition * 0.05)
|
||||
M.nutrition = (M.nutrition * 0.95)
|
||||
owner.nutrition += oldnutrition
|
||||
|
||||
//////////////////////////// DM_SHRINK ////////////////////////////
|
||||
else if(digest_mode == DM_SHRINK)
|
||||
|
||||
@@ -93,9 +93,9 @@ var/image/gurgled_overlay = image('icons/effects/sludgeoverlay_vr.dmi')
|
||||
//////////////
|
||||
// Special handling of gurgle_contaminate
|
||||
//////////////
|
||||
/*/obj/item/weapon/card/id/gurgle_contaminate(var/atom/movable/item_storage = null)
|
||||
/obj/item/weapon/card/id/gurgle_contaminate(var/atom/movable/item_storage = null)
|
||||
digest_act(item_storage) //Digesting these anyway
|
||||
return TRUE*/
|
||||
return TRUE
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/gurgle_contaminate(var/atom/movable/item_storage = null)
|
||||
digest_act(item_storage)
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
. = ..()
|
||||
|
||||
/obj/item/weapon/card/id/digest_act(var/atom/movable/item_storage = null)
|
||||
desc = "A partially digested card that has seen better days. Much of it's data has been destroyed."
|
||||
desc = "A partially digested card that has seen better days. Much of it's data has been destroyed, but the card itself is still completely salvageable. Please recycle it at crew resources office."
|
||||
icon = 'icons/obj/card_vr.dmi'
|
||||
icon_state = "digested"
|
||||
access = list() // No access
|
||||
@@ -82,7 +82,7 @@
|
||||
/obj/item/weapon/storage/digest_act(var/atom/movable/item_storage = null)
|
||||
for(var/obj/item/I in contents)
|
||||
I.screen_loc = null
|
||||
|
||||
|
||||
. = ..()
|
||||
|
||||
/////////////
|
||||
|
||||
@@ -118,8 +118,6 @@
|
||||
spanstyle = "color:green;"
|
||||
if(DM_ABSORB)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_ABSORB_STRIP)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_DRAIN)
|
||||
spanstyle = "color:purple;"
|
||||
if(DM_SHRINK)
|
||||
|
||||
Reference in New Issue
Block a user