Merge branch 'master' of https://github.com/VOREStation/Polaris into sync-09272018

# Conflicts:
#	code/__defines/holomap.dm
#	code/__defines/mobs.dm
#	code/_helpers/icons.dm
#	code/_helpers/unsorted.dm
#	code/_onclick/hud/hud.dm
#	code/_onclick/item_attack.dm
#	code/controllers/Processes/supply.dm
#	code/controllers/subsystems/planets.dm
#	code/datums/supplypacks/munitions.dm
#	code/datums/supplypacks/science.dm
#	code/datums/supplypacks/security.dm
#	code/datums/supplypacks/supply.dm
#	code/game/area/Space Station 13 areas.dm
#	code/game/atoms_movable.dm
#	code/game/machinery/autolathe.dm
#	code/game/machinery/doors/door.dm
#	code/game/machinery/jukebox.dm
#	code/game/machinery/recharger.dm
#	code/game/machinery/vending.dm
#	code/game/mecha/equipment/tools/medical_tools.dm
#	code/game/mecha/equipment/weapons/weapons.dm
#	code/game/objects/items/devices/PDA/PDA.dm
#	code/game/objects/items/devices/megaphone.dm
#	code/game/objects/items/poi_items.dm
#	code/game/objects/items/weapons/implants/implantlanguage.dm
#	code/game/objects/items/weapons/storage/firstaid.dm
#	code/game/objects/items/weapons/tools/weldingtool.dm
#	code/game/objects/structures/flora/trees.dm
#	code/game/objects/structures/plasticflaps.dm
#	code/game/supplyshuttle.dm
#	code/game/turfs/simulated/wall_attacks.dm
#	code/modules/admin/admin_verbs.dm
#	code/modules/assembly/infrared.dm
#	code/modules/client/client procs.dm
#	code/modules/client/preference_setup/loadout/loadout_utility.dm
#	code/modules/client/preferences.dm
#	code/modules/clothing/suits/miscellaneous.dm
#	code/modules/holomap/holomap_datum.dm
#	code/modules/holomap/station_holomap.dm
#	code/modules/integrated_electronics/core/printer.dm
#	code/modules/mining/machine_processing.dm
#	code/modules/mob/living/carbon/human/human_defense.dm
#	code/modules/mob/living/carbon/human/species/virtual_reality/avatar.dm
#	code/modules/mob/living/death.dm
#	code/modules/mob/living/silicon/ai/ai.dm
#	code/modules/mob/living/silicon/pai/pai.dm
#	code/modules/mob/living/silicon/robot/robot.dm
#	code/modules/mob/living/simple_animal/animals/parrot.dm
#	code/modules/mob/mob_movement.dm
#	code/modules/organs/organ_external.dm
#	code/modules/organs/organ_icon.dm
#	code/modules/organs/subtypes/standard.dm
#	code/modules/planet/weather.dm
#	code/modules/power/cable.dm
#	code/modules/power/fusion/core/core_control.dm
#	code/modules/power/fusion/fuel_assembly/fuel_control.dm
#	code/modules/power/fusion/gyrotron/gyrotron_control.dm
#	code/modules/projectiles/gun.dm
#	code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Food-Drinks.dm
#	config/names/first_name_skrell.txt
#	config/names/last_name_skrell.txt
#	icons/mob/head.dmi
#	icons/mob/robots.dmi
#	icons/mob/species/tajaran/helmet.dmi
#	icons/obj/ammo.dmi
#	icons/obj/gun.dmi
#	icons/obj/mining.dmi
#	icons/obj/projectiles.dmi
#	icons/obj/rig_modules.dmi
#	icons/obj/surgery.dmi
#	icons/turf/walls.dmi
#	maps/southern_cross/southern_cross-1.dmm
#	maps/southern_cross/southern_cross-3.dmm
#	maps/southern_cross/southern_cross-6.dmm
#	maps/southern_cross/southern_cross-8.dmm
#	maps/submaps/surface_submaps/mountains/backup/IceCave1.dmm
#	maps/submaps/surface_submaps/mountains/backup/IceCave1A.dmm
#	maps/submaps/surface_submaps/mountains/backup/IceCave1B.dmm
#	maps/submaps/surface_submaps/mountains/backup/IceCave1C.dmm
#	maps/submaps/surface_submaps/mountains/crashedcontainmentshuttle.dmm
#	maps/submaps/surface_submaps/mountains/deadspy.dmm
#	maps/submaps/surface_submaps/mountains/mountains_areas.dm
#	maps/submaps/surface_submaps/plains/Thiefc.dmm
#	maps/~map_system/maps.dm
#	vorestation.dme
This commit is contained in:
Arokha Sieyes
2018-09-27 18:01:09 -04:00
1318 changed files with 19791 additions and 86128 deletions

View File

@@ -32,16 +32,16 @@
/obj/machinery/slime/extractor/attackby(var/obj/item/W, var/mob/user)
//Let's try to deconstruct first.
if(istype(W, /obj/item/weapon/screwdriver) && !inuse)
if(W.is_screwdriver() && !inuse)
default_deconstruction_screwdriver(user, W)
return
if(istype(W, /obj/item/weapon/crowbar))
if(W.is_crowbar())
default_deconstruction_crowbar(user, W)
return
if(panel_open)
user << "<span class='warning'>Close the panel first!</span>"
to_chat(user, "<span class='warning'>Close the panel first!</span>")
var/obj/item/weapon/grab/G = W
@@ -49,7 +49,7 @@
return ..()
if(G.state < 2)
user << "<span class='danger'>You need a better grip to do that!</span>"
to_chat(user, "<span class='danger'>You need a better grip to do that!</span>")
return
move_into_extractor(user,G.affecting)
@@ -62,20 +62,20 @@
/obj/machinery/slime/extractor/proc/move_into_extractor(var/mob/user,var/mob/living/victim)
if(src.occupant)
user << "<span class='danger'>The core extractor is full, empty it first!</span>"
to_chat(user, "<span class='danger'>The core extractor is full, empty it first!</span>")
return
if(inuse)
user << "<span class='danger'>The core extractor is locked and running, wait for it to finish.</span>"
to_chat(user, "<span class='danger'>The core extractor is locked and running, wait for it to finish.</span>")
return
if(!(istype(victim, /mob/living/simple_animal/xeno/slime)) )
user << "<span class='danger'>This is not a suitable subject for the core extractor!</span>"
if(!(istype(victim, /mob/living/simple_animal/xeno/slime)))
to_chat(user, "<span class='danger'>This is not a suitable subject for the core extractor!</span>")
return
var/mob/living/simple_animal/xeno/slime/S = victim
if(S.is_child)
user << "<span class='danger'>This subject is not developed enough for the core extractor!</span>"
to_chat(user, "<span class='danger'>This subject is not developed enough for the core extractor!</span>")
return
user.visible_message("<span class='danger'>[user] starts to put [victim] into the core extractor!</span>")

View File

@@ -24,7 +24,7 @@
if(genes.len)
var/choice = alert(user, "Are you sure you want to wipe the disk?", "Xenobiological Data", "No", "Yes")
if(src && user && genes && choice && choice == "Yes" && user.Adjacent(get_turf(src)))
user << "You wipe the disk data."
to_chat(user, "You wipe the disk data.")
name = initial(name)
desc = initial(name)
genes = list()
@@ -67,24 +67,24 @@
return
if(istype(W,/obj/item/weapon/disk/xenobio))
if(loaded_disk)
user << "There is already a data disk loaded."
to_chat(user, "There is already a data disk loaded.")
return
else
var/obj/item/weapon/disk/xenobio/B = W
if(B.genes && B.genes.len)
if(!disk_needs_genes)
user << "That disk already has gene data loaded."
to_chat(user, "That disk already has gene data loaded.")
return
else
if(disk_needs_genes)
user << "That disk does not have any gene data loaded."
to_chat(user, "That disk does not have any gene data loaded.")
return
user.drop_from_inventory(W)
W.forceMove(src)
loaded_disk = W
user << "You load [W] into [src]."
to_chat(user, "You load [W] into [src].")
return
..()
@@ -137,14 +137,14 @@
/obj/machinery/xenobio/extractor/attackby(obj/item/weapon/W as obj, mob/user as mob)
if(istype(W,/obj/item/xenoproduct))
if(product)
user << "There is already a xenobiological product loaded."
to_chat(user, "There is already a xenobiological product loaded.")
return
else
var/obj/item/xenoproduct/B = W
user.drop_from_inventory(B)
B.forceMove(src)
product = B
user << "You load [B] into [src]."
to_chat(user, "You load [B] into [src].")
return
..()
@@ -180,7 +180,7 @@
data["hasGenetics"] = 0
data["sourceName"] = 0
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
ui = GLOB.nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
if (!ui)
ui = new(user, src, ui_key, "xenobio_isolator.tmpl", "B.P.D. Analyzer UI", 470, 450)
ui.set_initial_data(data)
@@ -280,7 +280,7 @@
if(istype(W,/obj/item/weapon/grab))
var/obj/item/weapon/grab/G = W
if(occupant)
user << "There is already an organism loaded."
to_chat(user, "There is already an organism loaded.")
return
else
if(isxeno(G.affecting))
@@ -289,9 +289,9 @@
user.drop_from_inventory(G)
X.forceMove(src)
occupant = X
user << "You load [X] into [src]."
to_chat(user, "You load [X] into [src]."
else
user << "<span class='danger'>This specimen is incompatible with the machinery!</span>"
to_chat(user, "<span class='danger'>This specimen is incompatible with the machinery!</span>")
return
..()
@@ -329,7 +329,7 @@
else
data["loaded"] = 0
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
ui = GLOB.nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
if (!ui)
ui = new(user, src, ui_key, "xenobio_editor.tmpl", "biological genetic bombarder UI", 470, 450)
ui.set_initial_data(data)
@@ -374,15 +374,15 @@
/obj/machinery/xenobio/editor/proc/move_into_editor(var/mob/user,var/mob/living/victim)
if(src.occupant)
user << "<span class='danger'>The [src] is full, empty it first!</span>"
to_chat(user, "<span class='danger'>The [src] is full, empty it first!</span>")
return
if(in_use)
user << "<span class='danger'>The [src] is locked and running, wait for it to finish.</span>"
to_chat(user, "<span class='danger'>The [src] is locked and running, wait for it to finish.</span>")
return
if(!(istype(victim, /mob/living/simple_animal/xeno/slime)) )
user << "<span class='danger'>This is not a suitable subject for the [src]!</span>"
to_chat(user, "<span class='danger'>This is not a suitable subject for the [src]!</span>")
return
user.visible_message("<span class='danger'>[user] starts to put [victim] into the [src]!</span>")

View File

@@ -93,11 +93,11 @@
/obj/machinery/xenobio2/manualinjector/attackby(var/obj/item/W, var/mob/user)
//Let's try to deconstruct first.
if(istype(W, /obj/item/weapon/screwdriver))
if(W.is_screwdriver())
default_deconstruction_screwdriver(user, W)
return
if(istype(W, /obj/item/weapon/crowbar) && !occupant)
if(W.is_crowbar() && !occupant)
default_deconstruction_crowbar(user, W)
return

View File

@@ -81,7 +81,7 @@
data["occupantHealth"] = null
data["occupantHealthMax"] = null
ui = nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
ui = GLOB.nanomanager.try_update_ui(user, src, ui_key, ui, data, force_open)
if (!ui)
ui = new(user, src, ui_key, "xenobio_computer.tmpl", "Injector Control Console UI", 470, 450)
ui.set_initial_data(data)

View File

@@ -30,11 +30,11 @@
/obj/machinery/slime/replicator/attackby(var/obj/item/W, var/mob/user)
//Let's try to deconstruct first.
if(istype(W, /obj/item/weapon/screwdriver) && !inuse)
if(W.is_screwdriver() && !inuse)
default_deconstruction_screwdriver(user, W)
return
if(istype(W, /obj/item/weapon/crowbar))
if(W.is_crowbar())
default_deconstruction_crowbar(user, W)
return