diff --git a/modular_zubbers/code/modules/bow_adjustments/arrow.dm b/modular_zubbers/code/modules/bow_adjustments/arrow.dm new file mode 100644 index 0000000000000..05ae67a79fdf3 --- /dev/null +++ b/modular_zubbers/code/modules/bow_adjustments/arrow.dm @@ -0,0 +1,61 @@ +#define BOW_EMBED_STATS list( \ + embed_chance = 100, \ + fall_chance = 0, \ + jostle_chance = 0, \ + ignore_throwspeed_threshold = TRUE, \ + pain_stam_pct = 0.5, \ + pain_mult = 1, \ + jostle_pain_mult = 1, \ + rip_time = 1 SECONDS \ + ) + +/obj/projectile/bullet/arrow + damage = 20 + weak_against_armour = TRUE + wound_bonus = CANT_WOUND + range = 16 + embedding = BOW_EMBED_STATS + var/tribal_damage_bonus = 20 //If you're an icemoon dweller, or an ashwalker. + faction_bonus_force = 10 //Bonus force dealt against certain factions + nemesis_paths = list( + /mob/living/simple_animal/hostile/asteroid, + /mob/living/basic/mining, + /mob/living/basic/wumborian_fugu, + ) + +/obj/projectile/bullet/arrow/prehit_pierce(mob/living/target, mob/living/carbon/human/user) + + if(isnull(target)) + return ..() + + if(user?.mind?.special_role == ROLE_LAVALAND) + damage += tribal_damage_bonus + weak_against_armour = FALSE + + return ..() + +/obj/projectile/bullet/arrow/holy + damage = 25 // Increase from 20 + embedding = BOW_EMBED_STATS + +/obj/projectile/bullet/arrow/ash + damage = 20 + armour_penetration = 20 // Buff from 0 + faction_bonus_force = 20 // Nerf from 60 + embedding = BOW_EMBED_STATS + +/obj/projectile/bullet/arrow/bone + damage = 25 + armour_penetration = 30 // Buff from 20 + wound_bonus = CANT_WOUND + faction_bonus_force = 30 // Nerf from 35 + embedding = BOW_EMBED_STATS + +/obj/projectile/bullet/arrow/bronze + damage = 30 + armour_penetration = 30 + wound_bonus = CANT_WOUND + faction_bonus_force = 90 + embedding = BOW_EMBED_STATS + +#undef BOW_EMBED_STATS diff --git a/modular_zubbers/code/modules/bow_nerf/bow.dm b/modular_zubbers/code/modules/bow_adjustments/bow.dm similarity index 100% rename from modular_zubbers/code/modules/bow_nerf/bow.dm rename to modular_zubbers/code/modules/bow_adjustments/bow.dm diff --git a/modular_zubbers/code/modules/bow_nerf/arrow.dm b/modular_zubbers/code/modules/bow_nerf/arrow.dm deleted file mode 100644 index c057f88478d08..0000000000000 --- a/modular_zubbers/code/modules/bow_nerf/arrow.dm +++ /dev/null @@ -1,110 +0,0 @@ -/obj/projectile/bullet/arrow - damage = 20 - armour_penetration = 0 - weak_against_armour = TRUE - wound_bonus = CANT_WOUND - bare_wound_bonus = 0 - range = 16 - dismemberment = 0 - catastropic_dismemberment = 0 - embedding = list( - embed_chance = 100, - fall_chance = 0, - jostle_chance = 0, - ignore_throwspeed_threshold = TRUE, - pain_stam_pct = 0.5, - pain_mult = 1, - jostle_pain_mult = 1, - rip_time = 1 SECONDS - ) - sharpness = SHARP_POINTY - var/tribal_damage_bonus = 20 //If you're an icemoon dweller, or an ashwalker. - faction_bonus_force = 10 //Bonus force dealt against certain factions - nemesis_paths = list( - /mob/living/simple_animal/hostile/asteroid, - /mob/living/basic/mining, - /mob/living/basic/wumborian_fugu, - ) - -/obj/projectile/bullet/arrow/prehit_pierce(mob/living/target, mob/living/carbon/human/user) - - if(isnull(target)) - return ..() - - if(user?.mind?.special_role == ROLE_LAVALAND) - damage += tribal_damage_bonus - weak_against_armour = FALSE - - return ..() - -/obj/projectile/bullet/arrow/holy - damage = 25 - armour_penetration = 0 - weak_against_armour = TRUE - wound_bonus = CANT_WOUND - bare_wound_bonus = 0 - faction_bonus_force = 10 - embedding = list( - embed_chance = 100, - fall_chance = 0, - jostle_chance = 0, - ignore_throwspeed_threshold = TRUE, - pain_stam_pct = 0.5, - pain_mult = 1, - jostle_pain_mult = 1, - rip_time = 1 SECONDS - ) - -/obj/projectile/bullet/arrow/ash - damage = 20 - armour_penetration = 20 - weak_against_armour = TRUE - wound_bonus = CANT_WOUND - bare_wound_bonus = 0 - faction_bonus_force = 20 - embedding = list( - embed_chance = 100, - fall_chance = 0, - jostle_chance = 0, - ignore_throwspeed_threshold = TRUE, - pain_stam_pct = 0.5, - pain_mult = 1, - jostle_pain_mult = 1, - rip_time = 1 SECONDS - ) - -/obj/projectile/bullet/arrow/bone - damage = 25 - armour_penetration = 30 - weak_against_armour = TRUE - wound_bonus = CANT_WOUND - bare_wound_bonus = 0 - faction_bonus_force = 30 - embedding = list( - embed_chance = 100, - fall_chance = 0, - jostle_chance = 0, - ignore_throwspeed_threshold = TRUE, - pain_stam_pct = 0.5, - pain_mult = 1, - jostle_pain_mult = 1, - rip_time = 1 SECONDS - ) - -/obj/projectile/bullet/arrow/bronze - damage = 30 - armour_penetration = 30 - weak_against_armour = FALSE - wound_bonus = CANT_WOUND - bare_wound_bonus = 0 - faction_bonus_force = 90 - embedding = list( - embed_chance = 100, - fall_chance = 0, - jostle_chance = 0, - ignore_throwspeed_threshold = TRUE, - pain_stam_pct = 0.5, - pain_mult = 1, - jostle_pain_mult = 1, - rip_time = 1 SECONDS - ) \ No newline at end of file diff --git a/modular_zubbers/code/modules/client/examine_tgui.dm b/modular_zubbers/code/modules/client/examine_tgui.dm index 8015d05278914..c87148833c06d 100644 --- a/modular_zubbers/code/modules/client/examine_tgui.dm +++ b/modular_zubbers/code/modules/client/examine_tgui.dm @@ -6,11 +6,11 @@ var/character_ad = "" var/emote_length = preferences?.read_preference(/datum/preference/choiced/emote_length) var/approach = preferences?.read_preference(/datum/preference/choiced/approach_pref) - var/furries = preferences?.read_preference(/datum/preference/choiced/furry_pref) - var/scalies = preferences?.read_preference(/datum/preference/choiced/scalie_pref) - var/others = preferences?.read_preference(/datum/preference/choiced/other_pref) - var/demihumans = preferences?.read_preference(/datum/preference/choiced/demihuman_pref) - var/humans = preferences?.read_preference(/datum/preference/choiced/human_pref) + var/furries = preferences?.read_preference(/datum/preference/choiced/directory_character_prefs/furry_pref) + var/scalies = preferences?.read_preference(/datum/preference/choiced/directory_character_prefs/scalie_pref) + var/others = preferences?.read_preference(/datum/preference/choiced/directory_character_prefs/other_pref) + var/demihumans = preferences?.read_preference(/datum/preference/choiced/directory_character_prefs/demihuman_pref) + var/humans = preferences?.read_preference(/datum/preference/choiced/directory_character_prefs/human_pref) var/show_nsfw_flavor_text = preferences?.read_preference(/datum/preference/choiced/show_nsfw_flavor_text) if(issilicon(holder) && !(show_nsfw_flavor_text == "Never")) flavor_text_nsfw = preferences?.read_preference(/datum/preference/text/flavor_text_nsfw/silicon) diff --git a/modular_zubbers/code/modules/client/verbs/character_directory.dm b/modular_zubbers/code/modules/client/verbs/character_directory.dm index 3e09e614d72f6..9e90850dae17d 100644 --- a/modular_zubbers/code/modules/client/verbs/character_directory.dm +++ b/modular_zubbers/code/modules/client/verbs/character_directory.dm @@ -80,76 +80,45 @@ GLOBAL_DATUM(character_directory, /datum/character_directory) /datum/preference/choiced/approach_pref/create_default_value() return "Unset" -/datum/preference/choiced/furry_pref - savefile_key = "furry_pref" - category = PREFERENCE_CATEGORY_GAME_PREFERENCES - savefile_identifier = PREFERENCE_PLAYER +/// Pref for all the things with the same "Yes", "No", "No ERP", "Check OOC", "Unset", "Maybe" setting +/// Saves us on copypaste code +/datum/preference/choiced/directory_character_prefs + savefile_key = "char_directory_char_prefs" // This is so unit checks don't scream -/datum/preference/choiced/furry_pref/init_possible_values() +/datum/preference/choiced/directory_character_prefs/init_possible_values() return list("Yes", "No", "No ERP", "Check OOC", "Unset", "Maybe") -/datum/preference/choiced/furry_pref/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) +/datum/preference/choiced/directory_character_prefs/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) return FALSE -/datum/preference/choiced/furry_pref/create_default_value() +/datum/preference/choiced/directory_character_prefs/create_default_value() return "Unset" -/datum/preference/choiced/scalie_pref - savefile_key = "scalie_pref" +/datum/preference/choiced/directory_character_prefs/furry_pref + savefile_key = "furry_pref" category = PREFERENCE_CATEGORY_GAME_PREFERENCES savefile_identifier = PREFERENCE_PLAYER -/datum/preference/choiced/scalie_pref/init_possible_values() - return list("Yes", "No", "No ERP", "Check OOC", "Maybe", "Unset") - -/datum/preference/choiced/scalie_pref/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) - return FALSE - -/datum/preference/choiced/scalie_pref/create_default_value() - return "Unset" +/datum/preference/choiced/directory_character_prefs/scalie_pref + savefile_key = "scalie_pref" + category = PREFERENCE_CATEGORY_GAME_PREFERENCES + savefile_identifier = PREFERENCE_PLAYER -/datum/preference/choiced/other_pref +/datum/preference/choiced/directory_character_prefs/other_pref savefile_key = "other_pref" category = PREFERENCE_CATEGORY_GAME_PREFERENCES savefile_identifier = PREFERENCE_PLAYER -/datum/preference/choiced/other_pref/init_possible_values() - return list("Yes", "No", "No ERP", "Check OOC", "Maybe", "Unset") - -/datum/preference/choiced/other_pref/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) - return FALSE - -/datum/preference/choiced/other_pref/create_default_value() - return "Unset" - -/datum/preference/choiced/demihuman_pref +/datum/preference/choiced/directory_character_prefs/demihuman_pref savefile_key = "demihuman_pref" category = PREFERENCE_CATEGORY_GAME_PREFERENCES savefile_identifier = PREFERENCE_PLAYER -/datum/preference/choiced/demihuman_pref/init_possible_values() - return list("Yes", "No", "No ERP", "Check OOC", "Unset", "Maybe") - -/datum/preference/choiced/demihuman_pref/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) - return FALSE - -/datum/preference/choiced/demihuman_pref/create_default_value() - return "Unset" - -/datum/preference/choiced/human_pref +/datum/preference/choiced/directory_character_prefs/human_pref savefile_key = "human_pref" category = PREFERENCE_CATEGORY_GAME_PREFERENCES savefile_identifier = PREFERENCE_PLAYER -/datum/preference/choiced/human_pref/init_possible_values() - return list("Yes", "No", "No ERP", "Check OOC", "Unset", "Maybe") - -/datum/preference/choiced/human_pref/apply_to_human(mob/living/carbon/human/target, value, datum/preferences/preferences) - return FALSE - -/datum/preference/choiced/human_pref/create_default_value() - return "Unset" - //CHARACTER DIRECTORY CODE START //Add a cooldown for the character directory to the client, primarily to stop server lag from refresh spam /client diff --git a/modular_zubbers/code/modules/height_scaling/icons.dm b/modular_zubbers/code/modules/customization/height_scaling/icons.dm similarity index 100% rename from modular_zubbers/code/modules/height_scaling/icons.dm rename to modular_zubbers/code/modules/customization/height_scaling/icons.dm diff --git a/modular_zubbers/code/modules/height_scaling/preferences.dm b/modular_zubbers/code/modules/customization/height_scaling/preferences.dm similarity index 100% rename from modular_zubbers/code/modules/height_scaling/preferences.dm rename to modular_zubbers/code/modules/customization/height_scaling/preferences.dm diff --git a/modular_zubbers/code/modules/synths/code/designs/exofab_designs.dm b/modular_zubbers/code/modules/customization/species/synths/code/designs/exofab_designs.dm similarity index 100% rename from modular_zubbers/code/modules/synths/code/designs/exofab_designs.dm rename to modular_zubbers/code/modules/customization/species/synths/code/designs/exofab_designs.dm diff --git a/modular_zubbers/code/modules/synths/code/synth_prefab.dm b/modular_zubbers/code/modules/customization/species/synths/code/synth_prefab.dm similarity index 100% rename from modular_zubbers/code/modules/synths/code/synth_prefab.dm rename to modular_zubbers/code/modules/customization/species/synths/code/synth_prefab.dm diff --git a/modular_zubbers/code/modules/synths/death_sound.dm b/modular_zubbers/code/modules/customization/species/synths/death_sound.dm similarity index 100% rename from modular_zubbers/code/modules/synths/death_sound.dm rename to modular_zubbers/code/modules/customization/species/synths/death_sound.dm diff --git a/modular_zubbers/code/modules/fluff/sex_barrier.dm b/modular_zubbers/code/modules/lewd_machinery/sex_barrier.dm similarity index 100% rename from modular_zubbers/code/modules/fluff/sex_barrier.dm rename to modular_zubbers/code/modules/lewd_machinery/sex_barrier.dm diff --git a/tgstation.dme b/tgstation.dme index 6a1176250717a..c9a36088b861b 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -8635,8 +8635,8 @@ #include "modular_zubbers\code\modules\borgs\code\robot_items.dm" #include "modular_zubbers\code\modules\borgs\code\robot_model.dm" #include "modular_zubbers\code\modules\borgs\code\robot_upgrade.dm" -#include "modular_zubbers\code\modules\bow_nerf\arrow.dm" -#include "modular_zubbers\code\modules\bow_nerf\bow.dm" +#include "modular_zubbers\code\modules\bow_adjustments\arrow.dm" +#include "modular_zubbers\code\modules\bow_adjustments\bow.dm" #include "modular_zubbers\code\modules\bsrpd\code\bsrpd.dm" #include "modular_zubbers\code\modules\bubber_tram\code\moonstation_tram.dm" #include "modular_zubbers\code\modules\cargo\expressconsole.dm" @@ -8693,6 +8693,11 @@ #include "modular_zubbers\code\modules\colony_fabricator\code\design_datums\fabricator_flag_additions\tools.dm" #include "modular_zubbers\code\modules\contractor\code\items\boxes.dm" #include "modular_zubbers\code\modules\credits\credits.dm" +#include "modular_zubbers\code\modules\customization\height_scaling\icons.dm" +#include "modular_zubbers\code\modules\customization\height_scaling\preferences.dm" +#include "modular_zubbers\code\modules\customization\species\synths\death_sound.dm" +#include "modular_zubbers\code\modules\customization\species\synths\code\synth_prefab.dm" +#include "modular_zubbers\code\modules\customization\species\synths\code\designs\exofab_designs.dm" #include "modular_zubbers\code\modules\customization\sprite_accessories\64_wings.dm" #include "modular_zubbers\code\modules\customization\sprite_accessories\ears.dm" #include "modular_zubbers\code\modules\customization\sprite_accessories\genitals.dm" @@ -8728,15 +8733,12 @@ #include "modular_zubbers\code\modules\experisci\experiment\handlers\experiment_handler.dm" #include "modular_zubbers\code\modules\experisci\experiment\types\scanning_fish.dm" #include "modular_zubbers\code\modules\fishing\fishing_minigame.dm" -#include "modular_zubbers\code\modules\fluff\sex_barrier.dm" #include "modular_zubbers\code\modules\fluff\flora\ash_flora.dm" #include "modular_zubbers\code\modules\food_and_drinks\machinery\stove.dm" #include "modular_zubbers\code\modules\food_and_drinks\recipes\tablecraft\recipes_seafood.dm" #include "modular_zubbers\code\modules\GAGS\greyscale_configs.dm" #include "modular_zubbers\code\modules\ghostcafe\hilbertshotel_silicon.dm" #include "modular_zubbers\code\modules\gladiator\code\game\objects\items\gladiator_items.dm" -#include "modular_zubbers\code\modules\height_scaling\icons.dm" -#include "modular_zubbers\code\modules\height_scaling\preferences.dm" #include "modular_zubbers\code\modules\hydroponics\gene_modder.dm" #include "modular_zubbers\code\modules\hydroponics\plant_genes.dm" #include "modular_zubbers\code\modules\hydroponics\code\grown\rocks.dm" @@ -8764,6 +8766,7 @@ #include "modular_zubbers\code\modules\languages\siikmaas.dm" #include "modular_zubbers\code\modules\languages\vampiric.dm" #include "modular_zubbers\code\modules\lewd_machinery\lustwish.dm" +#include "modular_zubbers\code\modules\lewd_machinery\sex_barrier.dm" #include "modular_zubbers\code\modules\liquids\height_floors.dm" #include "modular_zubbers\code\modules\loadout\categories\glasses.dm" #include "modular_zubbers\code\modules\loadout\categories\gloves.dm" @@ -8938,9 +8941,6 @@ #include "modular_zubbers\code\modules\surgery\bodyparts\species_parts\misc_bodyparts.dm" #include "modular_zubbers\code\modules\surgery\organs\internal\eyes\_eyes.dm" #include "modular_zubbers\code\modules\surgery\organs\internal\lungs\_lungs.dm" -#include "modular_zubbers\code\modules\synths\death_sound.dm" -#include "modular_zubbers\code\modules\synths\code\synth_prefab.dm" -#include "modular_zubbers\code\modules\synths\code\designs\exofab_designs.dm" #include "modular_zubbers\code\modules\title_screen\code\title_screen_subsystem.dm" #include "modular_zubbers\code\modules\traitor\goal_overrides.dm" #include "modular_zubbers\code\modules\uplink\uplink_items\bundle.dm"