diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm
index 4254b6335e5..505adf019ed 100644
--- a/code/datums/supplypacks.dm
+++ b/code/datums/supplypacks.dm
@@ -1061,9 +1061,9 @@ var/list/all_supply_groups = list(supply_emergency,supply_security,supply_engine
/datum/supply_packs/organic/hydroponics/exoticseeds
name = "Exotic Seeds Crate"
contains = list(/obj/item/seeds/nettle,
-// /obj/item/seeds/replicapod,
-// /obj/item/seeds/replicapod,
-// /obj/item/seeds/replicapod,
+ /obj/item/seeds/replicapod,
+ /obj/item/seeds/replicapod,
+ /obj/item/seeds/replicapod,
/obj/item/seeds/plump,
/obj/item/seeds/liberty,
/obj/item/seeds/amanita,
diff --git a/code/game/gamemodes/nuclear/nuclearbomb.dm b/code/game/gamemodes/nuclear/nuclearbomb.dm
index 060dd76cc66..d58fb0487ed 100644
--- a/code/game/gamemodes/nuclear/nuclearbomb.dm
+++ b/code/game/gamemodes/nuclear/nuclearbomb.dm
@@ -181,7 +181,7 @@ var/bomb_set
ui.open()
ui.set_auto_update(1)
-/obj/machinery/nuclearbomb/ui_data(mob/user, datum/topic_state/state)
+/obj/machinery/nuclearbomb/ui_data(mob/user, datum/topic_state/state)
var/data[0]
data["is_syndicate"] = is_syndicate
data["hacking"] = 0
@@ -392,10 +392,7 @@ var/bomb_set
/obj/item/weapon/disk/nuclear
name = "nuclear authentication disk"
desc = "Better keep this safe."
- icon = 'icons/obj/items.dmi'
icon_state = "nucleardisk"
- item_state = "card-id"
- w_class = 1
/obj/item/weapon/disk/nuclear/New()
..()
diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm
index c131652a69a..8ba7558d69b 100644
--- a/code/game/machinery/cloning.dm
+++ b/code/game/machinery/cloning.dm
@@ -103,10 +103,7 @@
//TO-DO: Make the genetics machine accept them.
/obj/item/weapon/disk/data
name = "Cloning Data Disk"
- icon = 'icons/obj/cloning.dmi'
icon_state = "datadisk0" //Gosh I hope syndies don't mistake them for the nuke disk.
- item_state = "card-id"
- w_class = 1
var/datum/dna2/record/buf=null
var/read_only = 0 //Well,it's still a floppy disk
diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm
index d155855638c..7668ce4fd26 100644
--- a/code/game/machinery/vending.dm
+++ b/code/game/machinery/vending.dm
@@ -972,7 +972,7 @@
/obj/item/seeds/chili = 3,/obj/item/seeds/cocoapod = 3,/obj/item/seeds/coffee = 3,/obj/item/seeds/corn = 3,
/obj/item/seeds/eggplant = 3,/obj/item/seeds/grape = 3,/obj/item/seeds/grass = 3,/obj/item/seeds/lemon = 3,
/obj/item/seeds/lime = 3,/obj/item/seeds/orange = 3,/obj/item/seeds/potato = 3,/obj/item/seeds/poppy = 3,
- /obj/item/seeds/pumpkin = 3, /*/obj/item/seeds/replicapod = 3,*/ /obj/item/seeds/wheat/rice = 3,/obj/item/seeds/soya = 3,/obj/item/seeds/sunflower = 3,
+ /obj/item/seeds/pumpkin = 3,/obj/item/seeds/replicapod = 3,/obj/item/seeds/wheat/rice = 3,/obj/item/seeds/soya = 3,/obj/item/seeds/sunflower = 3,
/obj/item/seeds/tea = 3,/obj/item/seeds/tobacco = 3,/obj/item/seeds/tomato = 3,
/obj/item/seeds/tower = 3,/obj/item/seeds/watermelon = 3,/obj/item/seeds/wheat = 3,/obj/item/seeds/whitebeet = 3)
contraband = list(/obj/item/seeds/amanita = 2,/obj/item/seeds/glowshroom = 2,/obj/item/seeds/liberty = 2,/obj/item/seeds/nettle = 2,
diff --git a/code/game/objects/items/robot/ai_upgrades.dm b/code/game/objects/items/robot/ai_upgrades.dm
index a27cfe68476..589e1ba87e0 100644
--- a/code/game/objects/items/robot/ai_upgrades.dm
+++ b/code/game/objects/items/robot/ai_upgrades.dm
@@ -5,7 +5,7 @@
/obj/item/device/malf_upgrade
name = "combat software upgrade"
desc = "A highly illegal, highly dangerous upgrade for artificial intelligence units, granting them a variety of powers as well as the ability to hack APCs."
- icon = 'icons/obj/cloning.dmi'
+ icon = 'icons/obj/module.dmi'
icon_state = "datadisk3"
@@ -26,7 +26,7 @@
/obj/item/device/surveillance_upgrade
name = "surveillance software upgrade"
desc = "A software package that will allow an artificial intelligence to 'hear' from its cameras via lip reading."
- icon = 'icons/obj/cloning.dmi'
+ icon = 'icons/obj/module.dmi'
icon_state = "datadisk3"
/obj/item/device/surveillance_upgrade/afterattack(mob/living/silicon/ai/AI, mob/user)
diff --git a/code/game/objects/items/weapons/disks.dm b/code/game/objects/items/weapons/disks.dm
index 1458dab9945..2c3f71f5cf3 100644
--- a/code/game/objects/items/weapons/disks.dm
+++ b/code/game/objects/items/weapons/disks.dm
@@ -1,3 +1,5 @@
/obj/item/weapon/disk
- name = "disk"
- icon = 'icons/obj/items.dmi'
+ icon = 'icons/obj/module.dmi'
+ w_class = 1
+ item_state = "card-id"
+ icon_state = "datadisk0"
diff --git a/code/modules/computer3/program_disks.dm b/code/modules/computer3/program_disks.dm
index 201fff39392..64b592b06be 100644
--- a/code/modules/computer3/program_disks.dm
+++ b/code/modules/computer3/program_disks.dm
@@ -1,44 +1,30 @@
-
-
/obj/item/weapon/disk/file/arcade
name = "Arcade game grab pack"
desc = "A program install disk."
- icon = 'icons/obj/stock_parts.dmi'
- icon_state = "datadisk_arcade"
spawn_files = list(/datum/file/program/arcade,/datum/file/program/arcade,/datum/file/program/arcade,/datum/file/program/arcade)
/*/obj/item/weapon/disk/file/aifixer
name = "AI System Integrity Restorer"
desc = "A program install disk."
- icon = 'icons/obj/stock_parts.dmi'
- icon_state = "datadisk_arcade"
spawn_files = list(/datum/file/program/aifixer)*/
/obj/item/weapon/disk/file/atmos_alert
name = "Atmospheric Alert Notifier"
desc = "A program install disk."
- icon = 'icons/obj/stock_parts.dmi'
- icon_state = "datadisk_arcade"
spawn_files = list(/datum/file/program/atmos_alert)
/obj/item/weapon/disk/file/cameras
name = "Camera Viewer"
desc = "A program install disk."
- icon = 'icons/obj/stock_parts.dmi'
- icon_state = "datadisk_arcade"
spawn_files = list(/datum/file/program/security)
/obj/item/weapon/disk/file/card
name = "ID Card Modifier"
desc = "A program install disk."
- icon = 'icons/obj/stock_parts.dmi'
- icon_state = "datadisk_arcade"
spawn_files = list(/datum/file/program/card_comp)
/*
/obj/item/weapon/disk/file/genetics
name = "Genetics & Cloning"
desc = "A program install disk."
- icon = 'icons/obj/stock_parts.dmi'
- icon_state = "datadisk_arcade"
spawn_files = list(/datum/file/program/cloning,/datum/file/program/dnascanner)
*/
diff --git a/code/modules/computer3/storage.dm b/code/modules/computer3/storage.dm
index 9ff8cab497b..acb569d3072 100644
--- a/code/modules/computer3/storage.dm
+++ b/code/modules/computer3/storage.dm
@@ -163,6 +163,7 @@
//parent_type = /obj/item/part/computer/storage // todon't: do this
name = "Data Disk"
desc = "A device that can be inserted and removed into computers easily as a form of portable data storage. This one stores 1 Megabyte"
+ icon_state = "datadisk_arcade"
var/list/files
var/list/spawn_files = list()
var/writeprotect = 0
diff --git a/code/modules/hydroponics/beekeeping/beebox.dm b/code/modules/hydroponics/beekeeping/beebox.dm
index c8810b3078e..804d9576951 100644
--- a/code/modules/hydroponics/beekeeping/beebox.dm
+++ b/code/modules/hydroponics/beekeeping/beebox.dm
@@ -82,7 +82,7 @@
honey_frames += HF
for(var/i in 1 to get_max_bees())
- var/mob/living/simple_animal/hostile/poison/bees/B = new(src)
+ var/mob/living/simple_animal/hostile/poison/bees/worker/B = new(src)
bees += B
B.beehome = src
B.assign_reagent(R)
@@ -109,7 +109,7 @@
if((bee_resources >= BEE_RESOURCE_NEW_BEE_COST && prob(BEE_PROB_NEW_BEE)) || freebee)
if(!freebee)
bee_resources = max(bee_resources - BEE_RESOURCE_NEW_BEE_COST, 0)
- var/mob/living/simple_animal/hostile/poison/bees/B = new(src)
+ var/mob/living/simple_animal/hostile/poison/bees/worker/B = new(src)
B.beehome = src
B.assign_reagent(queen_bee.beegent)
bees += B
@@ -154,7 +154,7 @@
if(honey_frames.len < BEEBOX_MAX_FRAMES)
visible_message("[user] adds a frame to the apiary.")
user.unEquip(HF)
- HF.loc = src
+ HF.forceMove(src)
honey_frames += HF
else
to_chat(user, "There's no room for anymore frames in the apiary!")
@@ -171,7 +171,7 @@
var/obj/item/queen_bee/qb = I
user.unEquip(qb)
- qb.queen.loc = src
+ qb.queen.forceMove(src)
bees += qb.queen
queen_bee = qb.queen
qb.queen = null
@@ -180,12 +180,12 @@
visible_message("[user] sets [qb] down inside the apiary, making it their new home.")
var/relocated = 0
for(var/b in bees)
- var/mob/living/simple_animal/hostile/poison/bees/B = b
+ var/mob/living/simple_animal/hostile/poison/bees/worker/B = b
if(B.reagent_incompatible(queen_bee))
bees -= B
B.beehome = null
if(B.loc == src)
- B.loc = get_turf(src)
+ B.forceMove(get_turf(src))
relocated++
if(relocated)
to_chat(user, "This queen has a different reagent to some of the bees who live here, those bees will not return to this apiary!")
@@ -197,57 +197,58 @@
/obj/structure/beebox/attack_hand(mob/user)
- if(!user.bee_friendly())
- //Time to get stung!
- var/bees = FALSE
- for(var/b in bees) //everyone who's ever lived here now instantly hates you, suck it assistant!
- var/mob/living/simple_animal/hostile/poison/bees/B = b
- if(B.isqueen)
- continue
- if(B.loc == src)
- B.loc = get_turf(src)
- B.target = user
- bees = TRUE
- if(bees)
- visible_message("[user] disturbs the bees!")
- else
- var/option = alert(user, "What Action do you wish to perform?","Apiary","Remove a Honey Frame","Remove the Queen Bee")
- if(!Adjacent(user))
- return
- switch(option)
- if("Remove a Honey Frame")
- if(!honey_frames.len)
- to_chat(user, "There are no honey frames to remove!")
- return
+ if(ishuman(user))
+ if(!user.bee_friendly())
+ //Time to get stung!
+ var/bees = FALSE
+ for(var/b in bees) //everyone who's ever lived here now instantly hates you, suck it assistant!
+ var/mob/living/simple_animal/hostile/poison/bees/B = b
+ if(B.isqueen)
+ continue
+ if(B.loc == src)
+ B.loc = get_turf(src)
+ B.target = user
+ bees = TRUE
+ if(bees)
+ visible_message("[user] disturbs the bees!")
+ else
+ var/option = alert(user, "What Action do you wish to perform?","Apiary","Remove a Honey Frame","Remove the Queen Bee")
+ if(!Adjacent(user))
+ return
+ switch(option)
+ if("Remove a Honey Frame")
+ if(!honey_frames.len)
+ to_chat(user, "There are no honey frames to remove!")
+ return
- var/obj/item/honey_frame/HF = pick_n_take(honey_frames)
- if(HF)
- if(!user.put_in_active_hand(HF))
- HF.loc = get_turf(src)
- visible_message("[user] removes a frame from the apiary.")
+ var/obj/item/honey_frame/HF = pick_n_take(honey_frames)
+ if(HF)
+ if(!user.put_in_active_hand(HF))
+ HF.loc = get_turf(src)
+ visible_message("[user] removes a frame from the apiary.")
- var/amtH = HF.honeycomb_capacity
- var/fallen = 0
- while(honeycombs.len && amtH) //let's pretend you always grab the frame with the most honeycomb on it
- var/obj/item/weapon/reagent_containers/honeycomb/HC = pick_n_take(honeycombs)
- if(HC)
- HC.loc = get_turf(user)
- amtH--
- fallen++
- if(fallen)
- var/multiple = fallen > 1
- visible_message("[user] scrapes [multiple ? "[fallen]" : "a"] honeycomb[multiple ? "s" : ""] off of the frame.")
+ var/amtH = HF.honeycomb_capacity
+ var/fallen = 0
+ while(honeycombs.len && amtH) //let's pretend you always grab the frame with the most honeycomb on it
+ var/obj/item/weapon/reagent_containers/honeycomb/HC = pick_n_take(honeycombs)
+ if(HC)
+ HC.loc = get_turf(user)
+ amtH--
+ fallen++
+ if(fallen)
+ var/multiple = fallen > 1
+ visible_message("[user] scrapes [multiple ? "[fallen]" : "a"] honeycomb[multiple ? "s" : ""] off of the frame.")
- if("Remove the Queen Bee")
- if(!queen_bee || queen_bee.loc != src)
- to_chat(user, "There is no queen bee to remove!")
- return
- var/obj/item/queen_bee/QB = new()
- queen_bee.loc = QB
- bees -= queen_bee
- QB.queen = queen_bee
- QB.name = queen_bee.name
- if(!user.put_in_active_hand(QB))
- QB.loc = get_turf(src)
- visible_message("[user] removes the queen from the apiary.")
- queen_bee = null
+ if("Remove the Queen Bee")
+ if(!queen_bee || queen_bee.loc != src)
+ to_chat(user, "There is no queen bee to remove!")
+ return
+ var/obj/item/queen_bee/QB = new()
+ queen_bee.loc = QB
+ bees -= queen_bee
+ QB.queen = queen_bee
+ QB.name = queen_bee.name
+ if(!user.put_in_active_hand(QB))
+ QB.loc = get_turf(src)
+ visible_message("[user] removes the queen from the apiary.")
+ queen_bee = null
diff --git a/code/modules/hydroponics/beekeeping/beekeeper_suit.dm b/code/modules/hydroponics/beekeeping/beekeeper_suit.dm
index 4c7c13d02a2..640d022c9e3 100644
--- a/code/modules/hydroponics/beekeeping/beekeeper_suit.dm
+++ b/code/modules/hydroponics/beekeeping/beekeeper_suit.dm
@@ -1,7 +1,7 @@
/obj/item/clothing/head/beekeeper_head
name = "beekeeper hat"
- desc = "Keeps the lil buzzing buggers out of your eyes."
+ desc = "Keeps the li'l buzzing buggers out of your eyes."
icon_state = "beekeeper"
item_state = "beekeeper"
flags = THICKMATERIAL
@@ -9,8 +9,9 @@
/obj/item/clothing/suit/beekeeper_suit
name = "beekeeper suit"
- desc = "Keeps the lil buzzing buggers away from your squishy bits."
+ desc = "Keeps the li'l buzzing buggers away from your squishy bits."
icon_state = "beekeeper"
item_state = "beekeeper"
flags = THICKMATERIAL
+ allowed = list (/obj/item/weapon/reagent_containers/spray,/obj/item/device/plant_analyzer,/obj/item/seeds,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/cultivator)
diff --git a/code/modules/hydroponics/grown/peanut.dm b/code/modules/hydroponics/grown/peanut.dm
index 888c9380970..28642135010 100644
--- a/code/modules/hydroponics/grown/peanut.dm
+++ b/code/modules/hydroponics/grown/peanut.dm
@@ -2,7 +2,7 @@
/obj/item/seeds/peanuts
name = "pack of peanut seeds"
desc = "These seeds grow into peanuts."
- icon_state = "seed-peanut"
+ icon_state = "seed-potato"
species = "potato"
plantname = "Peanut Vines"
product = /obj/item/weapon/reagent_containers/food/snacks/grown/peanuts
diff --git a/code/modules/research/research.dm b/code/modules/research/research.dm
index bda0e946292..d7ca9ef883d 100644
--- a/code/modules/research/research.dm
+++ b/code/modules/research/research.dm
@@ -326,10 +326,7 @@ datum/tech/robotics
/obj/item/weapon/disk/tech_disk
name = "\improper Technology Disk"
desc = "A disk for storing technology data for further research."
- icon = 'icons/obj/cloning.dmi'
icon_state = "datadisk2"
- item_state = "card-id"
- w_class = 1
materials = list(MAT_METAL=30, MAT_GLASS=10)
var/datum/tech/stored
var/default_name = "\improper Technology Disk"
@@ -354,10 +351,7 @@ datum/tech/robotics
/obj/item/weapon/disk/design_disk
name = "\improper Component Design Disk"
desc = "A disk for storing device design data for construction in lathes."
- icon = 'icons/obj/cloning.dmi'
icon_state = "datadisk2"
- item_state = "card-id"
- w_class = 1
materials = list(MAT_METAL=30, MAT_GLASS=10)
var/datum/design/blueprint
// I'm doing this so that disk paths with pre-loaded designs don't get weird names
diff --git a/icons/mob/animal.dmi b/icons/mob/animal.dmi
index 4b839a4bf66..11cfc6df017 100644
Binary files a/icons/mob/animal.dmi and b/icons/mob/animal.dmi differ
diff --git a/icons/obj/apiary_bees.dmi b/icons/obj/apiary_bees.dmi
deleted file mode 100644
index df4cb0a0ac3..00000000000
Binary files a/icons/obj/apiary_bees.dmi and /dev/null differ
diff --git a/icons/obj/biogenerator.dmi b/icons/obj/biogenerator.dmi
index 471b99acfa6..02cf868a31f 100644
Binary files a/icons/obj/biogenerator.dmi and b/icons/obj/biogenerator.dmi differ
diff --git a/icons/obj/cloning.dmi b/icons/obj/cloning.dmi
index 8699f6edca8..69abac9ee4f 100644
Binary files a/icons/obj/cloning.dmi and b/icons/obj/cloning.dmi differ
diff --git a/icons/obj/food/food.dmi b/icons/obj/food/food.dmi
index 4e6e07de79a..91549c1fb5c 100644
Binary files a/icons/obj/food/food.dmi and b/icons/obj/food/food.dmi differ
diff --git a/icons/obj/harvest.dmi b/icons/obj/harvest.dmi
deleted file mode 100644
index 0b7045cc64c..00000000000
Binary files a/icons/obj/harvest.dmi and /dev/null differ
diff --git a/icons/obj/hydroponics/harvest.dmi b/icons/obj/hydroponics/harvest.dmi
index ba9a0b49294..0adedb879e9 100644
Binary files a/icons/obj/hydroponics/harvest.dmi and b/icons/obj/hydroponics/harvest.dmi differ
diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi
index 0d503c324e3..dc64a49dab9 100644
Binary files a/icons/obj/items.dmi and b/icons/obj/items.dmi differ
diff --git a/icons/obj/lighting.dmi b/icons/obj/lighting.dmi
index 779903709c9..b0a35a3f35b 100644
Binary files a/icons/obj/lighting.dmi and b/icons/obj/lighting.dmi differ
diff --git a/icons/obj/module.dmi b/icons/obj/module.dmi
index 6d5a5b70d41..a9dfb12339d 100644
Binary files a/icons/obj/module.dmi and b/icons/obj/module.dmi differ
diff --git a/icons/obj/seeds.dmi b/icons/obj/seeds.dmi
deleted file mode 100644
index 2a8bac86a9d..00000000000
Binary files a/icons/obj/seeds.dmi and /dev/null differ
diff --git a/icons/obj/seeds_OLD.dmi b/icons/obj/seeds_OLD.dmi
deleted file mode 100644
index b090ba6cbe9..00000000000
Binary files a/icons/obj/seeds_OLD.dmi and /dev/null differ
diff --git a/icons/obj/stock_parts.dmi b/icons/obj/stock_parts.dmi
index 47600bcfba3..8fe85835d64 100644
Binary files a/icons/obj/stock_parts.dmi and b/icons/obj/stock_parts.dmi differ