From 884fb45516b904d11e1542d1e6e0a87982a44f0f Mon Sep 17 00:00:00 2001 From: Poojawa Date: Fri, 14 Apr 2017 19:39:08 -0500 Subject: [PATCH] Fixes compile issues with vore code (#362) * Fixes compile issues with vore code * Update voreconstants.dm * Update resize_vr.dm * Update tgstation.dme * Update parrot.dm * Update pet.dm * Update fox.dm * Update mouse.dm * Update farm_animals.dm * Update dog.dm * Update cat.dm * Update monkey.dm * Update alien.dm * Update vore_vr.dm * Update vorepanel_vr.dm * Update bellymodes_vr.dm * Update belly_vr.dm * Update living_vr.dm * Update voreconstants.dm * Update fox.dm --- code/__DEFINES/voreconstants.dm | 25 ++-- code/game/sound.dm | 12 ++ code/modules/mob/living/carbon/alien/alien.dm | 1 + .../mob/living/carbon/monkey/monkey.dm | 1 + .../mob/living/simple_animal/friendly/cat.dm | 1 + .../mob/living/simple_animal/friendly/dog.dm | 1 + .../simple_animal/friendly/farm_animals.dm | 4 + .../mob/living/simple_animal/friendly/fox.dm | 40 ++++++ .../living/simple_animal/friendly/mouse.dm | 1 + .../mob/living/simple_animal/friendly/pet.dm | 1 + .../mob/living/simple_animal/parrot.dm | 1 + code/modules/vore/eating/belly_vr.dm | 34 ++--- code/modules/vore/eating/bellymodes_vr.dm | 49 +------- code/modules/vore/eating/living_vr.dm | 18 +-- code/modules/vore/eating/vore_vr.dm | 24 ++-- code/modules/vore/eating/vorepanel_vr.dm | 118 +++++++++--------- code/modules/vore/resizing/resize_vr.dm | 25 ++-- tgstation.dme | 2 - 18 files changed, 187 insertions(+), 171 deletions(-) diff --git a/code/__DEFINES/voreconstants.dm b/code/__DEFINES/voreconstants.dm index cd4204514c..72609a8828 100644 --- a/code/__DEFINES/voreconstants.dm +++ b/code/__DEFINES/voreconstants.dm @@ -2,18 +2,17 @@ #define DM_HOLD "Hold" #define DM_DIGEST "Digest" #define DM_HEAL "Heal" -#define DM_DIGESTF "Fast Digest" #define VORE_STRUGGLE_EMOTE_CHANCE 40 // Stance for hostile mobs to be in while devouring someone. #define HOSTILE_STANCE_EATING 99 +/* // removing sizeplay again +GLOBAL_LIST_INIT(player_sizes_list, list("Macro" = SIZESCALE_HUGE, "Big" = SIZESCALE_BIG, "Normal" = SIZESCALE_NORMAL, "Small" = SIZESCALE_SMALL, "Tiny" = SIZESCALE_TINY)) + // moved to sound.dm // Edited to make the new travis check go away -var/global/list/player_sizes_list = list("Macro" = SIZESCALE_HUGE, "Big" = SIZESCALE_BIG, "Normal" = SIZESCALE_NORMAL, "Small" = SIZESCALE_SMALL, "Tiny" = SIZESCALE_TINY) -/* // moved to sound.dm - -var/global/list/digestion_sounds = list( +GLOBAL_LIST_INIT(digestion_sounds = list( 'sound/vore/digest1.ogg', 'sound/vore/digest2.ogg', 'sound/vore/digest3.ogg', @@ -27,7 +26,7 @@ var/global/list/digestion_sounds = list( 'sound/vore/digest11.ogg', 'sound/vore/digest12.ogg') -var/global/list/death_sounds = list( +GLOBAL_LIST_INIT(death_sounds = list( 'sound/vore/death1.ogg', 'sound/vore/death2.ogg', 'sound/vore/death3.ogg', @@ -39,7 +38,7 @@ var/global/list/death_sounds = list( 'sound/vore/death9.ogg', 'sound/vore/death10.ogg') */ -var/global/list/vore_sounds = list( +GLOBAL_LIST_INIT(vore_sounds, list( "Gulp" = 'sound/vore/gulp.ogg', "Insert" = 'sound/vore/insert.ogg', "Insertion1" = 'sound/vore/insertion1.ogg', @@ -49,13 +48,15 @@ var/global/list/vore_sounds = list( "Squish1" = 'sound/vore/squish1.ogg', "Squish2" = 'sound/vore/squish2.ogg', "Squish3" = 'sound/vore/squish3.ogg', - "Squish4" = 'sound/vore/squish4.ogg') -/* also moved to sound.dmi -var/global/list/struggle_sounds = list( + "Squish4" = 'sound/vore/squish4.ogg')) + +GLOBAL_LIST_INIT(struggle_sounds, list( "Squish1" = 'sound/vore/squish1.ogg', "Squish2" = 'sound/vore/squish2.ogg', "Squish3" = 'sound/vore/squish3.ogg', - "Squish4" = 'sound/vore/squish4.ogg') + "Squish4" = 'sound/vore/squish4.ogg')) + +/* also moved to sound.dmi /proc/log_debug(text) if (config.log_debug) @@ -63,4 +64,4 @@ var/global/list/struggle_sounds = list( for(var/client/C in admins) if(C.prefs.toggles & CHAT_DEBUGLOGS) - C << "DEBUG: [text]" */ \ No newline at end of file + C << "DEBUG: [text]" */ diff --git a/code/game/sound.dm b/code/game/sound.dm index 8d0c20d63d..d6ed179aba 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -134,6 +134,18 @@ soundin = pick('sound/machines/terminal_button01.ogg', 'sound/machines/terminal_button02.ogg', 'sound/machines/terminal_button03.ogg', \ 'sound/machines/terminal_button04.ogg', 'sound/machines/terminal_button05.ogg', 'sound/machines/terminal_button06.ogg', \ 'sound/machines/terminal_button07.ogg', 'sound/machines/terminal_button08.ogg') + //Vore sounds + if ("digestion_sounds") + soundin = pick('sound/vore/digest1.ogg', 'sound/vore/digest2.ogg', 'sound/vore/digest3.ogg', \ + 'sound/vore/digest4.ogg', 'sound/vore/digest5.ogg', 'sound/vore/digest6.ogg', \ + 'sound/vore/digest7.ogg', 'sound/vore/digest8.ogg', 'sound/vore/digest9.ogg', \ + 'sound/vore/digest10.ogg','sound/vore/digest11.ogg', 'sound/vore/digest12.ogg') + if ("death_gurgles") + soundin = pick('sound/vore/death1.ogg', 'sound/vore/death2.ogg', 'sound/vore/death3.ogg', \ + 'sound/vore/death4.ogg', 'sound/vore/death5.ogg', 'sound/vore/death6.ogg', \ + 'sound/vore/death7.ogg', 'sound/vore/death8.ogg', 'sound/vore/death9.ogg', 'sound/vore/death10.ogg') + if ("struggle_sounds") + soundin = pick('sound/vore/squish1.ogg', 'sound/vore/squish2.ogg', 'sound/vore/squish3.ogg', 'sound/vore/squish4.ogg') return soundin /proc/playsound_global(file, repeat=0, wait, channel, volume) diff --git a/code/modules/mob/living/carbon/alien/alien.dm b/code/modules/mob/living/carbon/alien/alien.dm index d4eebe34d9..78c3e4e1df 100644 --- a/code/modules/mob/living/carbon/alien/alien.dm +++ b/code/modules/mob/living/carbon/alien/alien.dm @@ -29,6 +29,7 @@ var/leaping = 0 gib_type = /obj/effect/decal/cleanable/xenoblood/xgibs unique_name = 1 + devourable = TRUE var/static/regex/alien_name_regex = new("alien (larva|sentinel|drone|hunter|praetorian|queen)( \\(\\d+\\))?") diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index 4921fe48c6..e5af3d5904 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -14,6 +14,7 @@ unique_name = 1 bodyparts = list(/obj/item/bodypart/chest/monkey, /obj/item/bodypart/head/monkey, /obj/item/bodypart/l_arm/monkey, /obj/item/bodypart/r_arm/monkey, /obj/item/bodypart/r_leg/monkey, /obj/item/bodypart/l_leg/monkey) + devourable = TRUE diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index a915836356..89dedede13 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -29,6 +29,7 @@ var/turns_since_scan = 0 var/mob/living/simple_animal/mouse/movement_target gold_core_spawnable = 2 + devourable = TRUE /mob/living/simple_animal/pet/cat/Initialize() ..() diff --git a/code/modules/mob/living/simple_animal/friendly/dog.dm b/code/modules/mob/living/simple_animal/friendly/dog.dm index bcc8e1d90e..f09c0ba9ae 100644 --- a/code/modules/mob/living/simple_animal/friendly/dog.dm +++ b/code/modules/mob/living/simple_animal/friendly/dog.dm @@ -12,6 +12,7 @@ see_in_dark = 5 speak_chance = 1 turns_per_move = 10 + devourable = TRUE //Corgis and pugs are now under one dog subtype diff --git a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm index ff045182b3..50711f25ea 100644 --- a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm +++ b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm @@ -28,6 +28,7 @@ stop_automated_movement_when_pulled = 1 blood_volume = BLOOD_VOLUME_NORMAL var/obj/item/udder/udder = null + devourable = TRUE /mob/living/simple_animal/hostile/retaliate/goat/Initialize() udder = new() @@ -105,6 +106,7 @@ var/obj/item/udder/udder = null gold_core_spawnable = 2 blood_volume = BLOOD_VOLUME_NORMAL + devourable = TRUE /mob/living/simple_animal/cow/Initialize() udder = new() @@ -180,6 +182,7 @@ pass_flags = PASSTABLE | PASSGRILLE | PASSMOB mob_size = MOB_SIZE_TINY gold_core_spawnable = 2 + devourable = TRUE /mob/living/simple_animal/chick/Initialize() ..() @@ -235,6 +238,7 @@ var/list/validColors = list("brown","black","white") gold_core_spawnable = 2 var/static/chicken_count = 0 + devourable = TRUE /mob/living/simple_animal/chicken/Initialize() ..() diff --git a/code/modules/mob/living/simple_animal/friendly/fox.dm b/code/modules/mob/living/simple_animal/friendly/fox.dm index 86b4fbf5a8..3f9648c4bc 100644 --- a/code/modules/mob/living/simple_animal/friendly/fox.dm +++ b/code/modules/mob/living/simple_animal/friendly/fox.dm @@ -18,6 +18,46 @@ response_disarm = "gently pushes aside" response_harm = "kicks" gold_core_spawnable = 2 + devourable = TRUE + var/mob/living/simple_animal/mouse/movement_target + var/turns_since_scan = 0 + +/mob/living/simple_animal/pet/fox/Life() + //MICE! + if((src.loc) && isturf(src.loc)) + if(!stat && !resting && !buckled) + for(var/mob/living/simple_animal/mouse/M in view(1,src)) + if(!M.stat && Adjacent(M)) + emote("me", 1, "splats \the [M]!") + M.splat() + movement_target = null + stop_automated_movement = 0 + break + for(var/obj/item/toy/cattoy/T in view(1,src)) + if (T.cooldown < (world.time - 400)) + emote("me", 1, "bats \the [T] around with its paw!") + T.cooldown = world.time + + ..() + + if(!stat && !resting && !buckled) + turns_since_scan++ + if(turns_since_scan > 5) + walk_to(src,0) + turns_since_scan = 0 + if((movement_target) && !(isturf(movement_target.loc) || ishuman(movement_target.loc) )) + movement_target = null + stop_automated_movement = 0 + if( !movement_target || !(movement_target.loc in oview(src, 3)) ) + movement_target = null + stop_automated_movement = 0 + for(var/mob/living/simple_animal/mouse/snack in oview(src,3)) + if(isturf(snack.loc) && !snack.stat) + movement_target = snack + break + if(movement_target) + stop_automated_movement = 1 + walk_to(src,movement_target,0,3) //Captain fox /mob/living/simple_animal/pet/fox/Renault diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm index 1189273adb..7d45923833 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm @@ -24,6 +24,7 @@ var/body_color //brown, gray and white, leave blank for random gold_core_spawnable = 2 var/chew_probability = 1 + devourable = TRUE /mob/living/simple_animal/mouse/Initialize() ..() diff --git a/code/modules/mob/living/simple_animal/friendly/pet.dm b/code/modules/mob/living/simple_animal/friendly/pet.dm index baad2da95c..cb62ccb070 100644 --- a/code/modules/mob/living/simple_animal/friendly/pet.dm +++ b/code/modules/mob/living/simple_animal/friendly/pet.dm @@ -5,6 +5,7 @@ var/image/collar = null var/image/pettag = null blood_volume = BLOOD_VOLUME_NORMAL + devourable = TRUE /mob/living/simple_animal/pet/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/clothing/neck/petcollar) && !pcollar) diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index ac5709fd22..df096f2306 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -59,6 +59,7 @@ mob_size = MOB_SIZE_SMALL movement_type = FLYING gold_core_spawnable = 2 + devourable = TRUE var/parrot_damage_upper = 10 var/parrot_state = PARROT_WANDER //Hunt for a perch when created diff --git a/code/modules/vore/eating/belly_vr.dm b/code/modules/vore/eating/belly_vr.dm index c3f8130564..0c5150f4ea 100644 --- a/code/modules/vore/eating/belly_vr.dm +++ b/code/modules/vore/eating/belly_vr.dm @@ -16,15 +16,15 @@ var/human_prey_swallow_time = 100 // Time in deciseconds to swallow /mob/living/carbon/human var/nonhuman_prey_swallow_time = 60 // Time in deciseconds to swallow anything else var/emoteTime = 300 // How long between stomach emotes at prey - var/digest_brute = 1 // Brute damage per tick in digestion mode - var/digest_burn = 3 // Burn damage per tick in digestion mode + var/digest_brute = 0 // Brute damage per tick in digestion mode + var/digest_burn = 1 // Burn damage per tick in digestion mode var/digest_tickrate = 9 // Modulus this of air controller tick number to iterate gurgles on var/immutable = FALSE // Prevents this belly from being deleted var/escapable = TRUE // Belly can be resisted out of at any time var/escapetime = 200 // Deciseconds, how long to escape this belly var/escapechance = 45 // % Chance of prey beginning to escape if prey struggles. var/tmp/digest_mode = DM_HOLD // Whether or not to digest. Default to not digest. - var/tmp/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_HEAL,DM_DIGESTF) // Possible digest modes + var/tmp/list/digest_modes = list(DM_HOLD,DM_DIGEST,DM_HEAL) // Possible digest modes var/tmp/mob/living/owner // The mob whose belly this is. var/tmp/list/internal_contents = list() // People/Things you've eaten into this belly! var/tmp/is_full // Flag for if digested remeans are present. (for disposal messages) @@ -232,7 +232,7 @@ for (var/mob/subprey in belly.internal_contents) subprey.loc = owner internal_contents.Add(subprey) - subprey << "As [M] melts away around you, you find yourself in [owner]'s [name]" + to_chat(subprey, "As [M] melts away around you, you find yourself in [owner]'s [name]") //Drop all items into the belly. for(var/obj/item/W in M) @@ -254,8 +254,8 @@ R.setClickCooldown(50) if(owner.stat) //If owner is stat (dead, KO) we can actually escape - R << "You attempt to climb out of \the [name]. (This will take around [escapetime/10] seconds.)" - owner << "Someone is attempting to climb out of your [name]!" + to_chat(R, "You attempt to climb out of \the [name]. (This will take around [escapetime/10] seconds.)") + to_chat(owner, "Someone is attempting to climb out of your [name]!") if(do_after(R, escapetime, owner)) if((owner.stat || escapable) && (R in internal_contents)) //Can still escape? @@ -264,8 +264,8 @@ else if(!(R in internal_contents)) //Aren't even in the belly. Quietly fail. return else //Belly became inescapable or mob revived - R << "Your attempt to escape [name] has failed!" - owner << "The attempt to escape from your [name] has failed!" + to_chat(R, "Your attempt to escape [name] has failed!") + to_chat(owner, "The attempt to escape from your [name] has failed!") return return var/struggle_outer_message = pick(struggle_messages_outside) @@ -288,27 +288,27 @@ playsound(R.loc, "struggle_sounds", 50, 0, -5) if(escapable && R.a_intent != "help") //If the stomach has escapable enabled and the person is actually trying to kick out - R << "You attempt to climb out of \the [name]." - owner << "Someone is attempting to climb out of your [name]!" + to_chat(R, "You attempt to climb out of \the [name].") + to_chat(owner, "Someone is attempting to climb out of your [name]!") if(prob(escapechance)) //Let's have it check to see if the prey escapes first. if(do_after(R, escapetime)) if((escapable) && (R in internal_contents)) //Does the owner still have escapable enabled? release_specific_contents(R) - R << "You climb out of \the [name]." - owner << "[R] climbs out of your [name]!" + to_chat(R, "You climb out of \the [name].") + to_chat(owner, "[R] climbs out of your [name]!") for(var/mob/M in hearers(4, owner)) M.visible_message("[R] climbs out of [owner]'s [name]!", 2) return else if(!(R in internal_contents)) //Aren't even in the belly. Quietly fail. return else //Belly became inescapable. - R << "Your attempt to escape [name] has failed!" - owner << "The attempt to escape from your [name] has failed!" + to_chat(R, "Your attempt to escape [name] has failed!") + to_chat(owner, "The attempt to escape from your [name] has failed!/span>") return else //Nothing interesting happened. - R << "But make no progress in escaping [owner]'s [name]." - owner << "But appears to be unable to make any progress in escaping your [name]." + to_chat(R, "But make no progress in escaping [owner]'s [name].") + to_chat(owner, "But appears to be unable to make any progress in escaping your [name].") return else return @@ -366,4 +366,4 @@ for(var/I in emote_lists[K]) dupe.emote_lists[K] += I - return dupe \ No newline at end of file + return dupe diff --git a/code/modules/vore/eating/bellymodes_vr.dm b/code/modules/vore/eating/bellymodes_vr.dm index 559388f542..ff6636c4e6 100644 --- a/code/modules/vore/eating/bellymodes_vr.dm +++ b/code/modules/vore/eating/bellymodes_vr.dm @@ -42,8 +42,8 @@ digest_alert_prey = replacetext(digest_alert_prey,"%belly",lowertext(name)) //Send messages - owner << "" + digest_alert_owner + "" - M << "" + digest_alert_prey + "" + to_chat(owner, "[digest_alert_owner]") + M.visible_message("You watch as [owner]'s form loses its additions.", "[digest_alert_prey]") owner.nutrition += 400 // so eating dead mobs gives you *something*. playsound(owner.loc, "death_gurgles", 50, 0, -5) @@ -58,49 +58,6 @@ owner.nutrition += 1 return -//////////////////////////// DM_DIGESTF //////////////////////////// - if(digest_mode == DM_DIGESTF) - - if(prob(50)) - playsound(owner.loc, "digestion_sounds", 55, 0, -3) //slightly louder 'cuz heavier gurgles - - for (var/mob/living/M in internal_contents) - //Pref protection! - if (!M.digestable) - continue - - //Person just died in guts! - if(M.stat == DEAD) - var/digest_alert_owner = pick(digest_messages_owner) - var/digest_alert_prey = pick(digest_messages_prey) - - //Replace placeholder vars - digest_alert_owner = replacetext(digest_alert_owner,"%pred",owner) - digest_alert_owner = replacetext(digest_alert_owner,"%prey",M) - digest_alert_owner = replacetext(digest_alert_owner,"%belly",lowertext(name)) - - digest_alert_prey = replacetext(digest_alert_prey,"%pred",owner) - digest_alert_prey = replacetext(digest_alert_prey,"%prey",M) - digest_alert_prey = replacetext(digest_alert_prey,"%belly",lowertext(name)) - - //Send messages - owner << "" + digest_alert_owner + "" - M << "" + digest_alert_prey + "" - M.visible_message("[digest_alert_owner]", "[digest_alert_prey]", - "You watch as [owner]'s form lose its additions.") - owner.nutrition += 400 // so eating dead mobs gives you *something*. - playsound(owner.loc, "death_gurgles", 50, 0, -5) - digestion_death(M) - owner.update_icons() - continue - - // Deal digestion damage (and feed the pred) - if(!(M.status_flags & GODMODE)) - M.adjustBruteLoss(2) - M.adjustFireLoss(3) - owner.nutrition += 1 - return - ///////////////////////////// DM_HEAL ///////////////////////////// if(digest_mode == DM_HEAL) if(prob(50)) @@ -112,4 +69,4 @@ M.adjustBruteLoss(-1) M.adjustFireLoss(-1) owner.nutrition -= 10 - return \ No newline at end of file + return diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 9a7dbd6708..68f0ca775b 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -1,10 +1,10 @@ ///////////////////// Mob Living ///////////////////// /mob/living - var/digestable = 1 // Can the mob be digested inside a belly? + var/digestable = TRUE // Can the mob be digested inside a belly? var/datum/belly/vore_selected // Default to no vore capability. var/list/vore_organs = list() // List of vore containers inside a mob - var/devourable = 0 // Can the mob be vored at all? -// var/feeding = 0 // Are we going to feed someone else? + var/devourable = FALSE // Can the mob be vored at all? +// var/feeding = FALSE // Are we going to feed someone else? // @@ -73,13 +73,13 @@ // if(!feeding(src)) // return if(!is_vore_predator(prey)) - user << "They aren't voracious enough." + to_chat(user, "They aren't voracious enough.") return feed_self_to_grabbed(user, src) if(user == src) //you click yourself if(!is_vore_predator(src)) - user << "You aren't voracious enough." + to_chat(user, "You aren't voracious enough.") return user.feed_grabbed_to_self(src, prey) @@ -87,7 +87,7 @@ // if(!feeding(src)) // return if(!is_vore_predator(src)) - user << "They aren't voracious enough." + to_chat(user, "They aren't voracious enough.") return feed_grabbed_to_other(user, prey, src) // @@ -123,7 +123,7 @@ if(!user || !prey || !pred || !belly || !(belly in pred.vore_organs)) return if (!prey.devourable) - user << "This can't be eaten!" + to_chat(user, "This can't be eaten!") return // The belly selected at the time of noms var/datum/belly/belly_target = pred.vore_organs[belly] @@ -267,7 +267,7 @@ pred.update_icons() else - src << "You aren't inside anything, you clod." + to_chat(src, "You aren't inside anything, you clod.") // // Verb for saving vore preferences to save file @@ -323,4 +323,4 @@ var/datum/belly/Bp = P.belly_prefs[I] src.vore_organs[Bp.name] = Bp.copy(src) - return TRUE \ No newline at end of file + return TRUE diff --git a/code/modules/vore/eating/vore_vr.dm b/code/modules/vore/eating/vore_vr.dm index f647a78fb0..1111a7d418 100644 --- a/code/modules/vore/eating/vore_vr.dm +++ b/code/modules/vore/eating/vore_vr.dm @@ -38,8 +38,8 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE /datum/vore_preferences //Actual preferences - var/digestable = 1 - var/devourable = 0 + var/digestable = TRUE + var/devourable = FALSE var/list/belly_prefs = list() //Mechanically required @@ -82,19 +82,19 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE // Save/Load Vore Preferences // /datum/vore_preferences/proc/load_vore() - if(!client || !client_ckey) return 0 //No client, how can we save? + if(!client || !client_ckey) return FALSE //No client, how can we save? slot = client.prefs.default_slot path = client.prefs.path - if(!path) return 0 //Path couldn't be set? + if(!path) return FALSE //Path couldn't be set? if(!fexists(path)) //Never saved before save_vore() //Make the file first return TRUE var/savefile/S = new /savefile(path) - if(!S) return 0 //Savefile object couldn't be created? + if(!S) return FALSE //Savefile object couldn't be created? S.cd = "/character[slot]" @@ -103,23 +103,23 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE S["belly_prefs"] >> belly_prefs if(isnull(digestable)) - digestable = 1 + digestable = TRUE if(isnull(devourable)) - devourable = 0 + devourable = FALSE if(isnull(belly_prefs)) belly_prefs = list() - return 1 + return TRUE /datum/vore_preferences/proc/save_vore() - if(!path) return 0 - if(!slot) return 0 + if(!path) return FALSE + if(!slot) return FALSE var/savefile/S = new /savefile(path) - if(!S) return 0 + if(!S) return FALSE S.cd = "/character[slot]" S["digestable"] << digestable S["devourable"] << devourable S["belly_prefs"] << belly_prefs - return 1 \ No newline at end of file + return TRUE diff --git a/code/modules/vore/eating/vorepanel_vr.dm b/code/modules/vore/eating/vorepanel_vr.dm index e6d00991c8..2c58fb12ca 100644 --- a/code/modules/vore/eating/vorepanel_vr.dm +++ b/code/modules/vore/eating/vorepanel_vr.dm @@ -74,8 +74,6 @@ spanstyle = "" if(DM_DIGEST) spanstyle = "color:red;" - if(DM_DIGESTF) - spanstyle = "color:purple;" if(DM_HEAL) spanstyle = "color:green;" @@ -134,16 +132,16 @@ dat += "Refresh" switch(user.digestable) - if(1) - dat += "Toggle Digestable" - if(0) - dat += "Toggle Digestable" + if(TRUE) + dat += "Toggle Digestable (Currently: ON)" + if(FALSE) + dat += "Toggle Digestable (Currently: OFF)" switch(user.devourable) - if(1) - dat += "Toggle Devourable" - if(0) - dat += "Toggle Devourable" + if(TRUE) + dat += "Toggle Devourable (Currently: ON)" + if(FALSE) + dat += "Toggle Devourable (Currently: OFF)" //Returns the dat html to the vore_look return dat @@ -169,34 +167,34 @@ M.examine(user) if("Help Out") //Help the inside-mob out - user << "You begin to push [M] to freedom!" - M << "[usr] begins to push you to freedom!" + to_chat(user, "You begin to push [M] to freedom!") + to_chat(M, "[usr] begins to push you to freedom!") M.loc << "Someone is trying to escape from inside you!" sleep(50) if(prob(33)) OB.release_specific_contents(M) - usr << "You manage to help [M] to safety!" - M << "[user] pushes you free!" + to_chat(usr, "You manage to help [M] to safety!") + to_chat(M, "[user] pushes you free!") M.loc << "[M] forces free of the confines of your body!" else - user << "[M] slips back down inside despite your efforts." - M << " Even with [user]'s help, you slip back inside again." + to_chat(user, "[M] slips back down inside despite your efforts.") + to_chat(M, " Even with [user]'s help, you slip back inside again.") M.loc << "Your body efficiently shoves [M] back where they belong." if("Devour") //Eat the inside mob if(!user.vore_selected) - user << "Pick a belly on yourself first!" - return 1 + to_chat(user, "Pick a belly on yourself first!") + return TRUE var/datum/belly/TB = user.vore_organs[user.vore_selected] - user << "You begin to [lowertext(TB.vore_verb)] [M] into your [lowertext(TB.name)]!" - M << "[user] begins to [lowertext(TB.vore_verb)] you into their [lowertext(TB.name)]!" + to_chat(user, "You begin to [lowertext(TB.vore_verb)] [M] into your [lowertext(TB.name)]!") + to_chat(M, "[user] begins to [lowertext(TB.vore_verb)] you into their [lowertext(TB.name)]!") M.loc << "Someone inside you is eating someone else!" sleep(TB.nonhuman_prey_swallow_time) if((user in OB.internal_contents) && (M in OB.internal_contents)) - user << "You manage to [lowertext(TB.vore_verb)] [M] into your [lowertext(TB.name)]!" - M << "[user] manages to [lowertext(TB.vore_verb)] you into their [lowertext(TB.name)]!" + to_chat(user, "You manage to [lowertext(TB.vore_verb)] [M] into your [lowertext(TB.name)]!") + to_chat(M, "[user] manages to [lowertext(TB.vore_verb)] you into their [lowertext(TB.name)]!") M.loc << "Someone inside you has eaten someone else!" M.loc = user TB.nom_mob(M) @@ -211,8 +209,8 @@ if("Use Hand") if(user.stat) - user << "You can't do that in your state!" - return 1 + to_chat(user, "You can't do that in your state!") + return TRUE user.ClickOn(T) sleep(5) //Seems to exit too fast for the panel to update @@ -229,8 +227,8 @@ if("Eject all") if(user.stat) - user << "You can't do that in your state!" - return 1 + to_chat(user, "You can't do that in your state!") + return TRUE selected.release_all_contents() playsound(user, 'sound/effects/splat.ogg', 50, 1) @@ -238,24 +236,24 @@ if("Move all") if(user.stat) - user << "You can't do that in your state!" - return 1 + to_chat(user, "You can't do that in your state!") + return TRUE var/choice = input("Move all where?","Select Belly") in user.vore_organs + "Cancel - Don't Move" if(choice == "Cancel - Don't Move") - return 1 + return TRUE else var/datum/belly/B = user.vore_organs[choice] for(var/atom/movable/tgt in selected.internal_contents) selected.internal_contents -= tgt B.internal_contents += tgt - tgt << "You're squished from [user]'s [selected] to their [B]!" + to_chat(tgt, "You're squished from [user]'s [selected] to their [B]!") for(var/mob/hearer in range(1,user)) hearer << sound('sound/vore/squish2.ogg',volume=80) - return 1 + return TRUE var/atom/movable/tgt = locate(href_list["insidepick"]) @@ -267,8 +265,8 @@ if("Eject") if(user.stat) - user << "You can't do that in your state!" - return 1 + to_chat(user, "You can't do that in your state!") + return TRUE selected.release_specific_contents(tgt) playsound(user, 'sound/effects/splat.ogg', 50, 1) @@ -276,34 +274,34 @@ if("Move") if(user.stat) - user << "You can't do that in your state!" - return 1 + to_chat(user, "You can't do that in your state!") + return TRUE var/choice = input("Move [tgt] where?","Select Belly") in user.vore_organs + "Cancel - Don't Move" if(choice == "Cancel - Don't Move") - return 1 + return TRUE else var/datum/belly/B = user.vore_organs[choice] selected.internal_contents -= tgt B.internal_contents += tgt - tgt << "You're squished from [user]'s [lowertext(selected.name)] to their [lowertext(B.name)]!" + to_chat(tgt, "You're squished from [user]'s [lowertext(selected.name)] to their [lowertext(B.name)]!") for(var/mob/hearer in range(1,user)) hearer << sound('sound/vore/squish2.ogg',volume=80) if(href_list["newbelly"]) if(user.vore_organs.len >= 10) - return 1 + return TRUE var/new_name = html_encode(input(usr,"New belly's name:","New Belly") as text|null) if(length(new_name) > 12 || length(new_name) < 2) - usr << "Entered belly name is too long." - return 0 + to_chat(usr, "Entered belly name is too long.") + return FALSE if(new_name in user.vore_organs) - usr << "No duplicate belly names, please." - return 0 + to_chat(usr, "No duplicate belly names, please.") + return FALSE var/datum/belly/NB = new(user) NB.name = new_name @@ -319,11 +317,11 @@ var/new_name = html_encode(input(usr,"Belly's new name:","New Name") as text|null) if(length(new_name) > 12 || length(new_name) < 2) - usr << "Entered belly name length invalid (must be longer than 2, shorter than 12)." - return 0 + to_chat(usr, "Entered belly name length invalid (must be longer than 2, shorter than 12).") + return FALSE if(new_name in user.vore_organs) - usr << "No duplicate belly names, please." - return 0 + to_chat(usr, "No duplicate belly names, please.") + return FALSE user.vore_organs[new_name] = selected user.vore_organs -= selected.name @@ -349,7 +347,7 @@ new_desc = readd_quotes(new_desc) if(length(new_desc) > 1024) - usr << "Entered belly desc too long. 1024 character limit." + to_chat(usr, "Entered belly desc too long. 1024 character limit.") return FALSE selected.inside_flavor = new_desc @@ -404,35 +402,35 @@ selected.struggle_messages_inside = initial(selected.struggle_messages_inside) if("Cancel - No Changes") - return 1 + return TRUE if(href_list["b_verb"]) var/new_verb = html_encode(input(usr,"New verb when eating (infinitive tense, e.g. nom or swallow):","New Verb") as text|null) if(length(new_verb) > 12 || length(new_verb) < 2) - usr << "Entered verb length invalid (must be longer than 2, shorter than 12)." + to_chat(usr, "Entered verb length invalid (must be longer than 2, shorter than 12).") return FALSE selected.vore_verb = new_verb if(href_list["b_sound"]) - var/choice = input(user,"Currently set to [selected.vore_sound]","Select Sound") in vore_sounds + "Cancel - No Changes" + var/choice = input(user,"Currently set to [selected.vore_sound]","Select Sound") in GLOB.vore_sounds + "Cancel - No Changes" if(choice == "Cancel") return 1 - selected.vore_sound = vore_sounds[choice] + selected.vore_sound = GLOB.vore_sounds[choice] if(href_list["b_soundtest"]) user << selected.vore_sound if(href_list["b_del"]) if(selected.internal_contents.len) - usr << "Can't delete bellies with contents!" + to_chat(usr, "Can't delete bellies with contents!") else if(selected.immutable) - usr << "This belly is marked as undeletable." + to_chat(usr, "This belly is marked as undeletable.") else if(user.vore_organs.len == 1) - usr << "You must have at least one belly." + to_chat(usr, "You must have at least one belly.") else var/alert = alert("Are you sure you want to delete [selected]?","Confirmation","Delete","Cancel") if(alert == "Delete" && !selected.internal_contents.len) @@ -443,10 +441,10 @@ if(href_list["saveprefs"]) if(user.save_vore_prefs()) - user << "Belly Preferences saved!" + to_chat(user, "Belly Preferences saved!") else - user << "ERROR: Belly Preferences were not saved!" + to_chat(user, "ERROR: Belly Preferences were not saved!") log_admin("Could not save vore prefs on USER: [user].") @@ -456,9 +454,9 @@ if("Cancel") return 1 if("Allow Digestion") - user.digestable = 1 + user.digestable = TRUE if("Prevent Digestion") - user.digestable = 0 + user.digestable = FALSE if(user.client.prefs_vr) user.client.prefs_vr.digestable = user.digestable @@ -469,9 +467,9 @@ if("Cancel") return 1 if("Allow Devourment") - user.devourable = 1 + user.devourable = TRUE if("Prevent Devourment") - user.devourable = 0 + user.devourable = FALSE if(user.client.prefs_vr) user.client.prefs_vr.devourable = user.devourable diff --git a/code/modules/vore/resizing/resize_vr.dm b/code/modules/vore/resizing/resize_vr.dm index 06b3b1b2e8..a5e611ee4d 100644 --- a/code/modules/vore/resizing/resize_vr.dm +++ b/code/modules/vore/resizing/resize_vr.dm @@ -1,17 +1,16 @@ - +/* //these aren't defines so they can stay in this file -var/const/SIZESCALE_HUGE = 2 -var/const/SIZESCALE_BIG = 1.5 -var/const/SIZESCALE_NORMAL = 1 -var/const/SIZESCALE_SMALL = 0.85 -var/const/SIZESCALE_TINY = 0.60 - -//average -var/const/SIZESCALE_A_HUGEBIG = (SIZESCALE_HUGE + SIZESCALE_BIG) / 2 -var/const/SIZESCALE_A_BIGNORMAL = (SIZESCALE_BIG + SIZESCALE_NORMAL) / 2 -var/const/SIZESCALE_A_NORMALSMALL = (SIZESCALE_NORMAL + SIZESCALE_SMALL) / 2 -var/const/SIZESCALE_A_SMALLTINY = (SIZESCALE_SMALL + SIZESCALE_TINY) / 2 +GLOBAL_VAR_CONST(SIZESCALE_HUGE, 2) +GLOBAL_VAR_CONST(SIZESCALE_BIG, 1.5) +GLOBAL_VAR_CONST(SIZESCALE_NORMAL, 1) +GLOBAL_VAR_CONST(SIZESCALE_SMALL, 0.85) +GLOBAL_VAR_CONST(SIZESCALE_TINY, 0.60) +GLOBAL_VAR_CONST(SIZESCALE_A_HUGEBIG, (GLOB.SIZESCALE_HUGE + GLOB.SIZESCALE_BIG) / 2) +GLOBAL_VAR_CONST(SIZESCALE_A_BIGNORMAL, (GLOB.SIZESCALE_BIG + GLOB.SIZESCALE_NORMAL) / 2) +GLOBAL_VAR_CONST(SIZESCALE_A_NORMALSMALL,(GLOB.SIZESCALE_NORMAL + GLOB.SIZESCALE_SMALL) / 2) +GLOBAL_VAR_CONST(SIZESCALE_A_SMALLTINY,(GLOB.SIZESCALE_SMALL + GLOB.SIZESCALE_TINY) / 2) +*/ // Adding needed defines to /mob/living // Note: Polaris had this on /mob/living/carbon/human We need it higher up for animals and stuff. /mob/living @@ -205,4 +204,4 @@ var/const/SIZESCALE_A_SMALLTINY = (SIZESCALE_SMALL + SIZESCALE_TINY) / 2 src << "You pin [tmob] beneath your foot!" tmob << "[src] pins you beneath their foot!" return 1 -*/ \ No newline at end of file +*/ diff --git a/tgstation.dme b/tgstation.dme index f5f66b6bd4..171e998234 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -2140,8 +2140,6 @@ #include "code\modules\vore\eating\simple_animal_vr.dm" #include "code\modules\vore\eating\vore_vr.dm" #include "code\modules\vore\eating\vorepanel_vr.dm" -#include "code\modules\vore\resizing\resize_vr.dm" -#include "code\modules\vore\resizing\sizegun_vr.dm" #include "code\modules\VR\vr_human.dm" #include "code\modules\VR\vr_sleeper.dm" #include "code\modules\zombie\items.dm"