diff --git a/code/modules/cargo/randomstock.dm b/code/modules/cargo/randomstock.dm
index 52fdc37101f..cb7c0c947e1 100644
--- a/code/modules/cargo/randomstock.dm
+++ b/code/modules/cargo/randomstock.dm
@@ -1351,11 +1351,19 @@ var/list/global/random_stock_large = list(
var/list/equips = list(
"/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp" = 1,
"/obj/item/mecha_parts/mecha_equipment/tool/drill" = 1,
+ "/obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill" = 0.7,
"/obj/item/mecha_parts/mecha_equipment/tool/extinguisher" = 1,
+ "/obj/item/mecha_parts/mecha_equipment/tool/rcd" = 0.08,
+ "/obj/item/mecha_parts/mecha_equipment/teleporter" = 0.3,
+ "/obj/item/mecha_parts/mecha_equipment/wormhole_generator" = 0.5,
"/obj/item/mecha_parts/mecha_equipment/gravcatapult" = 0.8,
- "/obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster" = 1,
- "/obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster" = 0.9,
+ "/obj/item/mecha_parts/mecha_equipment/armor_booster/anticcw_armor_booster" = 1,
+ "/obj/item/mecha_parts/mecha_equipment/armor_booster/antiproj_armor_booster" = 0.9,
+ "/obj/item/mecha_parts/mecha_equipment/repair_droid" = 0.7,
+ "/obj/item/mecha_parts/mecha_equipment/tesla_energy_relay" = 0.4,
"/obj/item/mecha_parts/mecha_equipment/generator" = 1.5,
+ "/obj/item/mecha_parts/mecha_equipment/generator/nuclear" = 0.8,
+ "/obj/item/mecha_parts/mecha_equipment/tool/safety_clamp" = 0.2,
"/obj/item/mecha_parts/mecha_equipment/tool/passenger" = 1,
"/obj/item/mecha_parts/mecha_equipment/tool/sleeper" = 0.9,
"/obj/item/mecha_parts/mecha_equipment/tool/cable_layer" = 1.2,
@@ -1534,8 +1542,8 @@ var/list/global/random_stock_large = list(
"/obj/item/mecha_parts/mecha_equipment/teleporter" = 0.3,
"/obj/item/mecha_parts/mecha_equipment/wormhole_generator" = 0.5,
"/obj/item/mecha_parts/mecha_equipment/gravcatapult" = 0.8,
- "/obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster" = 1,
- "/obj/item/mecha_parts/mecha_equipment/antiproj_armor_booster" = 0.9,
+ "/obj/item/mecha_parts/mecha_equipment/armor_booster/anticcw_armor_booster" = 1,
+ "/obj/item/mecha_parts/mecha_equipment/armor_booster/antiproj_armor_booster" = 0.9,
"/obj/item/mecha_parts/mecha_equipment/repair_droid" = 0.7,
"/obj/item/mecha_parts/mecha_equipment/tesla_energy_relay" = 0.4,
"/obj/item/mecha_parts/mecha_equipment/generator" = 1.5,
@@ -1547,6 +1555,7 @@ var/list/global/random_stock_large = list(
"/obj/item/mecha_parts/mecha_equipment/tool/syringe_gun" = 1
)
+
var/number = rand(2,5)
while (number > 0)
var/type = pickweight(equips)
diff --git a/code/modules/events/event_container.dm b/code/modules/events/event_container.dm
index ef52f1d8012..be63c13e7bd 100644
--- a/code/modules/events/event_container.dm
+++ b/code/modules/events/event_container.dm
@@ -142,7 +142,7 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Trivial News", /datum/event/trivial_news, 400),
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Vermin Infestation",/datum/event/infestation, 60, list(ASSIGNMENT_JANITOR = 20, ASSIGNMENT_SECURITY = 10)),
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Wallrot", /datum/event/wallrot, 75, list(ASSIGNMENT_ENGINEER = 5, ASSIGNMENT_GARDENER = 20)),
- new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Clogged Vents", /datum/event/vent_clog, 85),
+ new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Clogged Vents", /datum/event/vent_clog, 70),
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "False Alarm", /datum/event/false_alarm, 100),
new /datum/event_meta(EVENT_LEVEL_MUNDANE, "Supply Drop", /datum/event/supply_drop, 80),
@@ -173,13 +173,13 @@ var/global/list/severity_to_string = list(EVENT_LEVEL_MUNDANE = "Mundane", EVENT
/datum/event_container/major
severity = EVENT_LEVEL_MAJOR
available_events = list(
- new /datum/event_meta(EVENT_LEVEL_MAJOR, "Nothing", /datum/event/nothing, 90),
+ new /datum/event_meta(EVENT_LEVEL_MAJOR, "Nothing", /datum/event/nothing, 105),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Blob", /datum/event/blob, 50, list(ASSIGNMENT_ENGINEER = 5,ASSIGNMENT_SECURITY = 5), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Carp Migration", /datum/event/carp_migration, 60, list(ASSIGNMENT_SECURITY = 10), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 40, list(ASSIGNMENT_ENGINEER = 10),1),
- new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 60, list(ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_GARDENER = 20), 1),
- new /datum/event_meta(EVENT_LEVEL_MAJOR, "Viral Infection", /datum/event/viral_infection, 20, list(ASSIGNMENT_MEDICAL = 13), 1),
- new /datum/event_meta(EVENT_LEVEL_MAJOR, "Bluespace Bears", /datum/event/bear_attack, 50, list(ASSIGNMENT_SECURITY = 10), 1)
+ new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 75, list(ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_GARDENER = 20), 1),
+ new /datum/event_meta(EVENT_LEVEL_MAJOR, "Viral Infection", /datum/event/viral_infection, 20, list(ASSIGNMENT_MEDICAL = 15), 1),
+ new /datum/event_meta(EVENT_LEVEL_MAJOR, "Bluespace Bears", /datum/event/bear_attack, 35, list(ASSIGNMENT_SECURITY = 10), 1)
)
//NOTE: Re added nothing option, but with fairly low weight
diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm
index 5fd4f819561..6b1baa2574d 100644
--- a/code/modules/mob/holder.dm
+++ b/code/modules/mob/holder.dm
@@ -28,6 +28,8 @@ var/list/holder_mob_icon_cache = list()
/obj/item/weapon/holder/Destroy()
processing_objects.Remove(src)
+ if (contained)
+ release_mob()
..()
/obj/item/weapon/holder/examine(mob/user)
@@ -120,6 +122,7 @@ var/list/holder_mob_icon_cache = list()
M.reset_view()
M.Released()
+ contained = null
var/mob/L = get_holding_mob()
if (L)
L.drop_from_inventory(src)
@@ -241,15 +244,31 @@ var/list/holder_mob_icon_cache = list()
else
H.isalive = 1//We note that the mob is alive when picked up. If it dies later, we can know that its death happened while held, and play its deathmessage for it
- if (user == src)
- grabber << "[src.name] climbs up onto you."
- src << "You climb up onto [grabber]."
+
+
+
+ var/success = 0
+ if (src == user)
+ success = grabber.put_in_any_hand_if_possible(H, 0,1,1)
else
- grabber << "You scoop up [src]."
- src << "[grabber] scoops you up."
- grabber.status_flags |= PASSEMOTES
- H.attack_hand(grabber)//We put this last to prevent some race conditions
- return
+ H.attack_hand(grabber)//We put this last to prevent some race conditions
+ if (H.loc == grabber)
+ success = 1
+
+ if (success)
+ if (user == src)
+ grabber << "[src.name] climbs up onto you."
+ src << "You climb up onto [grabber]."
+ else
+ grabber << "You scoop up [src]."
+ src << "[grabber] scoops you up."
+
+ else
+ user << "Failed, try again!"
+ //If the scooping up failed something must have gone wrong
+ H.release_mob()
+
+ return success
/mob/living/proc/get_holder_location()
diff --git a/html/changelogs/Nanako-Fixes.yml b/html/changelogs/Nanako-Fixes.yml
new file mode 100644
index 00000000000..332f353c1f7
--- /dev/null
+++ b/html/changelogs/Nanako-Fixes.yml
@@ -0,0 +1,37 @@
+################################
+# Example Changelog File
+#
+# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
+#
+# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
+# When it is, any changes listed below will disappear.
+#
+# Valid Prefixes:
+# bugfix
+# wip (For works in progress)
+# tweak
+# soundadd
+# sounddel
+# rscadd (general adding of nice things)
+# rscdel (general deleting of nice things)
+# imageadd
+# imagedel
+# maptweak
+# spellcheck (typo fixes)
+# experiment
+#################################
+
+# Your name.
+author: Nanako
+
+# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
+delete-after: True
+
+# Any changes you've made. See valid prefix list above.
+# INDENT WITH TWO SPACES. NOT TABS. SPACES.
+# SCREW THIS UP AND IT WON'T WORK.
+# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
+# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
+changes:
+ - bugfix: "Hopefully fixed a bug where picked up animals would instantly die."
+ - tweak: "Adjusted several event probabilities for better variety, and a little less major events."
diff --git a/tools/Event Probabilities/Event Probabilities.xls b/tools/Event Probabilities/Event Probabilities.xls
deleted file mode 100644
index 3d6132045bb..00000000000
Binary files a/tools/Event Probabilities/Event Probabilities.xls and /dev/null differ
diff --git a/tools/Event Probabilities/Event Probabilities.xlsx b/tools/Event Probabilities/Event Probabilities.xlsx
new file mode 100644
index 00000000000..4ceeb393a07
Binary files /dev/null and b/tools/Event Probabilities/Event Probabilities.xlsx differ