This fixes a bunch of things so here's each file change and why:

global_lists_vr.dm - Removes generic 'suit' which included basically any outerwear, and the invisible magical storage/internal
storage/internal.dm - Don't name the storage inside suits the same as the suit. It causes weird name-alignment problems where if you delete the suit it might just delete the internal storage, or the other way around.
Dreaming.dm - Added some vorish stuff I made up.
belly_vr.dm - Fixes for digesting items and how that works, and how to prevent them from showing up on the HUD. Also fixes IDs falling onto the floor (among other things).
living_vr.dm - Just in case, adds null-entry cleanup to belly cleanup proc.
bellymodes_vr.dm - Removes previous null-item hotfix.
vorepanel_vr.dm - Adds zero-width space to make items in belly wrap and not look horrible.
skim.dmf - Adds Y hotkey for whisper, and 6 hotkey for subtle.

Closes #455
Closes #443
Closes #239
This commit is contained in:
Arokha Sieyes
2016-10-20 16:34:34 -04:00
parent 6b1a32a12f
commit 95a3c14925
8 changed files with 35 additions and 23 deletions

View File

@@ -23,17 +23,13 @@ var/global/list/important_items = list(
/obj/item/device/paicard,
/obj/item/weapon/gun,
/obj/item/weapon/pinpointer,
/obj/item/clothing/suit,
///obj/item/clothing/suit,
/obj/item/clothing/shoes/magboots,
/obj/item/blueprints,
/obj/item/clothing/head/helmet/space,
/obj/item/weapon/storage/internal,
///obj/item/weapon/storage/internal, //You can't just preserve magical objects like this...
/obj/item/weapon/disk/nuclear)
/* TODOPOLARIS - Depends on porting object
///obj/item/weapon/card/id/digested)
*/
var/global/list/digestion_sounds = list(
'sound/vore/digest1.ogg',
'sound/vore/digest2.ogg',

View File

@@ -6,7 +6,7 @@
/obj/item/weapon/storage/internal/New(obj/item/MI)
master_item = MI
loc = master_item
name = master_item.name
//name = master_item.name //VOREStation Removal
verbs -= /obj/item/verb/verb_pickup //make sure this is never picked up.
..()

View File

@@ -12,6 +12,10 @@ var/list/dreams = list(
"the virologist","the roboticist","the chef","the bartender","the chaplain","the librarian","a mouse","an ert member",
"a beach","the holodeck","a smokey room","a voice","the cold","a mouse","an operating table","the bar","the rain","a skrell",
"an unathi","a tajaran","the ai core","the mining station","the research station","a beaker of strange liquid",
//VOREStation Additions after this
"slimey surroundings","a sexy squirrel","licking their lips","a gaping maw","an unlikely predator","sinking inside",
"vulpine assets","more dakka","churning guts","pools of fluid","an exceptional grip","mawing in faces","gaping throat",
"swallowed whole","a fox","a wolf","a cat","a tiger","a dog","a taur","a xenochimera"
)
mob/living/carbon/proc/dream()

View File

@@ -250,17 +250,17 @@
for (var/bellytype in M.vore_organs)
var/datum/belly/belly = M.vore_organs[bellytype]
for (var/obj/thing in belly.internal_contents)
thing.forceMove(owner)
thing.loc = owner
internal_contents += thing
for (var/mob/subprey in belly.internal_contents)
subprey.forceMove(owner)
subprey.loc = owner
internal_contents += subprey
subprey << "As [M] melts away around you, you find yourself in [owner]'s [name]"
//Drop all items into the belly.
if (config.items_survive_digestion)
for (var/obj/item/W in M)
_handle_digested_item(W)
_handle_digested_item(W,M)
//Reagent transfer
if(M.reagents && istype(M.reagents,/datum/reagents))
@@ -271,7 +271,11 @@
qdel(M)
// Recursive method - To recursively scan thru someone's inventory for digestable/indigestable.
/datum/belly/proc/_handle_digested_item(var/obj/item/W)
/datum/belly/proc/_handle_digested_item(var/obj/item/W,var/mob/M)
// SOME mob has to use some procs. If somehow they're gone, then the pred can handle it.
if(!M)
M = owner
// IDs are handled specially to 'digest' them
if(istype(W,/obj/item/weapon/card/id))
var/obj/item/weapon/card/id/ID = W
@@ -279,27 +283,28 @@
ID.icon = 'icons/obj/card_vr.dmi'
ID.icon_state = "digested"
ID.access = list() // No access
ID.forceMove(owner)
internal_contents += W
M.remove_from_mob(ID,owner)
internal_contents += ID
// Posibrains have to be pulled 'out' of their organ version.
else if(istype(W,/obj/item/organ/internal/mmi_holder))
var/obj/item/organ/internal/mmi_holder/MMI = W
var/atom/movable/brain = MMI.removed()
if(brain)
M.remove_from_mob(brain,owner)
brain.forceMove(owner)
internal_contents += brain
else
if(!_is_digestable(W))
W.forceMove(owner)
M.remove_from_mob(W,owner)
internal_contents += W
else
for (var/obj/item/SubItem in W)
_handle_digested_item(SubItem)
_handle_digested_item(SubItem,M)
/datum/belly/proc/_is_digestable(var/obj/item/I)
if(I.type in important_items)
if(is_type_in_list(I,important_items))
return 0
return 1

View File

@@ -12,10 +12,6 @@
M << "<span class='notice'>[pick(EL)]</span>"
src.emotePend = 0
for (var/V in internal_contents)
if (isnull(V))
internal_contents -= V
//////////////////////// Absorbed Handling ////////////////////////
for(var/mob/living/M in internal_contents)
if(M.absorbed)

View File

@@ -179,6 +179,7 @@
for (var/I in vore_organs)
var/datum/belly/B = vore_organs[I]
if(B.internal_contents.len)
listclearnulls(B.internal_contents)
for(var/atom/movable/M in B.internal_contents)
if(M.loc != src)
B.internal_contents -= M

View File

@@ -64,7 +64,10 @@
continue
//Anything else
dat += "<a href='?src=\ref[src];outsidepick=\ref[O];outsidebelly=\ref[inside_belly]'>[O]</a>"
dat += "<a href='?src=\ref[src];outsidepick=\ref[O];outsidebelly=\ref[inside_belly]'>[O]&#8203;</a>"
//Zero-width space, for wrapping
dat += "&#8203;"
else
dat += "You aren't inside anyone."
@@ -136,6 +139,9 @@
//Anything else
dat += "<a href='?src=\ref[src];insidepick=\ref[O]'>[O]</a>"
//Zero-width space, for wrapping
dat += "&#8203;"
//If there's more than one thing, add an [All] button
if(selected.internal_contents.len > 1)
dat += "<a href='?src=\ref[src];insidepick=1;pickall=1'>\[All\]</a>"

View File

@@ -575,6 +575,10 @@ macro "hotkeymode"
name = "5"
command = ".me"
is-disabled = false
elem
name = "6"
command = "subtle"
is-disabled = false
elem
name = "A+REP"
command = ".west"
@@ -677,11 +681,11 @@ macro "hotkeymode"
is-disabled = false
elem
name = "Y"
command = "Activate-Held-Object"
command = "whisper"
is-disabled = false
elem
name = "CTRL+Y"
command = "Activate-Held-Object"
command = "whisper"
is-disabled = false
elem
name = "Z"