mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
FUCKING REVERSIONS
This commit is contained in:
@@ -25,6 +25,8 @@
|
||||
var/frequency = 0
|
||||
var/id_tag = null
|
||||
var/datum/radio_frequency/radio_connection
|
||||
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/atmospherics/binary/dp_vent_pump/high_volume
|
||||
name = "Large Dual Port Air Vent"
|
||||
@@ -218,9 +220,6 @@
|
||||
update_icon()
|
||||
|
||||
/obj/machinery/atmospherics/binary/dp_vent_pump/attackby(var/obj/item/W as obj, var/mob/user as mob)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
interact(user)
|
||||
return 1
|
||||
return ..()
|
||||
|
||||
/obj/machinery/atmospherics/binary/dp_vent_pump/interact(var/mob/user)
|
||||
|
||||
@@ -116,6 +116,8 @@
|
||||
var/frequency = 0
|
||||
var/id_tag = null
|
||||
var/datum/radio_frequency/radio_connection
|
||||
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/atmospherics/binary/valve/digital/attack_ai(mob/user as mob)
|
||||
src.add_hiddenprint(user)
|
||||
@@ -214,9 +216,6 @@
|
||||
|
||||
// Just for digital valves.
|
||||
/obj/machinery/atmospherics/binary/valve/digital/attackby(var/obj/item/W as obj, var/mob/user as mob)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
if(src.frequency && istype(W, /obj/item/weapon/wrench))
|
||||
user << "<span class='warning'>You cannot unwrench this [src], it's digitally connected to another device.</span>"
|
||||
return 1
|
||||
|
||||
@@ -17,6 +17,8 @@
|
||||
var/datum/radio_frequency/radio_connection
|
||||
|
||||
level = 1
|
||||
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/atmospherics/unary/outlet_injector/update_icon()
|
||||
if(node)
|
||||
@@ -158,9 +160,6 @@
|
||||
"}
|
||||
|
||||
/obj/machinery/atmospherics/unary/outlet_injector/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
interact(user)
|
||||
return 1
|
||||
if (!istype(W, /obj/item/weapon/wrench))
|
||||
return ..()
|
||||
if (!(stat & NOPOWER) && on)
|
||||
|
||||
@@ -29,18 +29,20 @@
|
||||
|
||||
var/radio_filter_out
|
||||
var/radio_filter_in
|
||||
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
on
|
||||
on = 1
|
||||
icon_state = "out"
|
||||
/obj/machinery/atmospherics/unary/vent_pump/on
|
||||
on = 1
|
||||
icon_state = "out"
|
||||
|
||||
siphon
|
||||
pump_direction = 0
|
||||
icon_state = "off"
|
||||
/obj/machinery/atmospherics/unary/vent_pump/siphon
|
||||
pump_direction = 0
|
||||
icon_state = "off"
|
||||
|
||||
on
|
||||
on = 1
|
||||
icon_state = "in"
|
||||
/obj/machinery/atmospherics/unary/vent_pump/siphon/on
|
||||
on = 1
|
||||
icon_state = "in"
|
||||
|
||||
/obj/machinery/atmospherics/unary/vent_pump/New()
|
||||
..()
|
||||
@@ -337,9 +339,6 @@
|
||||
else
|
||||
user << "<span class='notice'>You need more welding fuel to complete this task.</span>"
|
||||
return 1
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
if (!istype(W, /obj/item/weapon/wrench))
|
||||
return ..()
|
||||
if (!(stat & NOPOWER) && on)
|
||||
|
||||
@@ -27,6 +27,8 @@
|
||||
var/area_uid
|
||||
var/radio_filter_out
|
||||
var/radio_filter_in
|
||||
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/atmospherics/unary/vent_scrubber/New()
|
||||
..()
|
||||
@@ -289,9 +291,6 @@
|
||||
return !welded
|
||||
|
||||
/obj/machinery/atmospherics/unary/vent_scrubber/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
if(istype(W, /obj/item/weapon/weldingtool))
|
||||
var/obj/item/weapon/weldingtool/WT = W
|
||||
if (WT.remove_fuel(0,user))
|
||||
|
||||
@@ -9,7 +9,9 @@
|
||||
usr << "<span class='warning'>Missing equipment or weapons.</span>"
|
||||
my_atom.verbs -= /obj/item/device/spacepod_equipment/weaponry/proc/fire_weapon_system
|
||||
return
|
||||
my_atom.battery.use(shot_cost)
|
||||
if(!my_atom.battery.use(shot_cost))
|
||||
usr << "<span class='warning'>\The [my_atom]'s cell is too low on charge!</span>"
|
||||
return
|
||||
var/olddir
|
||||
dir = my_atom.dir
|
||||
for(var/i = 0; i < shots_per; i++)
|
||||
@@ -90,8 +92,9 @@
|
||||
name = "\improper burst taser system"
|
||||
desc = "A weak taser system for space pods, this one fires 3 at a time."
|
||||
icon_state = "pod_b_taser"
|
||||
shot_cost = 20
|
||||
shot_cost = 35
|
||||
shots_per = 3
|
||||
fire_delay = 20
|
||||
verb_name = "Fire Burst Taser System"
|
||||
verb_desc = "Fire ze tasers!"
|
||||
|
||||
@@ -100,9 +103,9 @@
|
||||
desc = "A weak laser system for space pods, fires concentrated bursts of energy"
|
||||
icon_state = "pod_w_laser"
|
||||
projectile_type = /obj/item/projectile/beam
|
||||
shot_cost = 15
|
||||
shot_cost = 150
|
||||
fire_sound = 'sound/weapons/Laser.ogg'
|
||||
fire_delay = 25
|
||||
fire_delay = 15
|
||||
verb_name = "Fire Laser System"
|
||||
verb_desc = "Fire ze lasers!"
|
||||
|
||||
|
||||
@@ -86,12 +86,12 @@
|
||||
spawn(0)
|
||||
if(occupant)
|
||||
occupant << "<big><span class='warning'>Critical damage to the vessel detected, core explosion imminent!</span></big>"
|
||||
for(var/i = 10, i >= 0; --i)
|
||||
if(occupant)
|
||||
occupant << "<span class='warning'>[i]</span>"
|
||||
if(i == 0)
|
||||
explosion(loc, 2, 4, 8)
|
||||
sleep(10)
|
||||
for(var/i = 10, i >= 0; --i)
|
||||
if(occupant)
|
||||
occupant << "<span class='warning'>[i]</span>"
|
||||
if(i == 0)
|
||||
explosion(loc, 2, 4, 8)
|
||||
sleep(10)
|
||||
|
||||
update_icons()
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
M << "<span class='warning'>[deactivation_message]</span>"
|
||||
else
|
||||
testing("[name] has no deactivation message.")
|
||||
..()
|
||||
return ..()
|
||||
|
||||
/datum/dna/gene/disability/hallucinate
|
||||
name="Hallucinate"
|
||||
|
||||
@@ -164,7 +164,7 @@
|
||||
var/icon/flat = getFlatIcon(Mind.current, SOUTH, 1, 1)
|
||||
end_icons += flat
|
||||
tempstate = end_icons.len
|
||||
text += {"<br><img src="logo_[tempstate].png"> [Mind.key] was [Mind.name] ("}
|
||||
text += {"<br><img src="logo_[tempstate].png"> <b>[Mind.key]</b> was <b>[Mind.name]</b> ("}
|
||||
if(Mind.current.stat == DEAD)
|
||||
text += "died"
|
||||
flat.Turn(90)
|
||||
@@ -177,7 +177,7 @@
|
||||
var/icon/sprotch = icon('icons/effects/blood.dmi', "floor1-old")
|
||||
end_icons += sprotch
|
||||
tempstate = end_icons.len
|
||||
text += {"<br><img src="logo_[tempstate].png"> [Mind.key] was [Mind.name] ("}
|
||||
text += {"<br><img src="logo_[tempstate].png"> <b>[Mind.key]</b> was <b>[Mind.name]</b> ("}
|
||||
text += "body destroyed"
|
||||
text += ")"
|
||||
|
||||
|
||||
@@ -138,6 +138,8 @@ obj/machinery/airlock_sensor
|
||||
|
||||
ghost_read = 0 // Deactivate ghost touching.
|
||||
ghost_write = 0
|
||||
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
|
||||
obj/machinery/airlock_sensor/update_icon()
|
||||
@@ -248,8 +250,9 @@ obj/machinery/airlock_sensor/Topic(href,href_list)
|
||||
|
||||
|
||||
obj/machinery/airlock_sensor/attackby(var/obj/item/W, var/mob/user)
|
||||
if(istype(W,/obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
if(istype(W,/obj/item/weapon/screwdriver))
|
||||
user << "You begin to pry \the [src] off the wall..."
|
||||
if(do_after(user, 50))
|
||||
@@ -275,6 +278,7 @@ obj/machinery/access_button
|
||||
|
||||
ghost_read = 0 // Deactivate ghost touching.
|
||||
ghost_write = 0
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/access_button/New(turf/loc, var/ndir, var/building=0)
|
||||
..()
|
||||
@@ -318,8 +322,9 @@ obj/machinery/access_button/attack_hand(mob/user)
|
||||
|
||||
|
||||
obj/machinery/access_button/attackby(var/obj/item/W, var/mob/user)
|
||||
if (istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu()
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
if(istype(W,/obj/item/weapon/screwdriver))
|
||||
user << "You begin to pry \the [src] off the wall..."
|
||||
if(do_after(user, 50))
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -11,6 +11,7 @@
|
||||
use_power = 1
|
||||
idle_power_usage = 2
|
||||
active_power_usage = 4
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/meter/New()
|
||||
..()
|
||||
@@ -134,10 +135,6 @@
|
||||
</ul>"}
|
||||
|
||||
/obj/machinery/meter/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
|
||||
if (!istype(W, /obj/item/weapon/wrench))
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
active_power_usage = 300
|
||||
var/obj/item/weapon/circuitboard/circuit = null //if circuit==null, computer can't disassembly
|
||||
var/processing = 0
|
||||
machine_flags = EMAGGABLE | SCREWTOGGLE | WRENCHMOVE | FIXED2WORK
|
||||
machine_flags = EMAGGABLE | SCREWTOGGLE | WRENCHMOVE | FIXED2WORK | MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/computer/cultify()
|
||||
new /obj/structure/cult/tome(loc)
|
||||
|
||||
@@ -91,7 +91,8 @@
|
||||
visible_message("Cannot locate any mass driver of that ID. Cancelling firing sequence!")
|
||||
return
|
||||
|
||||
flick("mass_drivers_timing", src)
|
||||
if(icon_state != "old")
|
||||
flick("mass_drivers_timing", src)
|
||||
|
||||
for(var/obj/machinery/door/poddoor/M in poddoors)
|
||||
if(M.z != src.z) continue
|
||||
@@ -191,10 +192,12 @@
|
||||
else
|
||||
times[ident_tag] = maxtimes[ident_tag]
|
||||
updateDialog()
|
||||
if(timing)
|
||||
icon_state = "mass_drivers_timing"
|
||||
else
|
||||
icon_state = "mass_drivers"
|
||||
|
||||
if(icon_state != "old")
|
||||
if(timing)
|
||||
icon_state = "mass_drivers_timing"
|
||||
else
|
||||
icon_state = "mass_drivers"
|
||||
return
|
||||
|
||||
|
||||
@@ -314,7 +317,8 @@
|
||||
visible_message("Cannot locate any mass driver of that ID. Cancelling firing sequence!")
|
||||
return
|
||||
|
||||
flick("mass_drivers_timing", src)
|
||||
if(icon_state != "old")
|
||||
flick("mass_drivers_timing", src)
|
||||
|
||||
if(teleporter_dest)
|
||||
for(var/obj/structure/deathsquad_tele/D in world)
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
ghost_read=0
|
||||
ghost_write=0
|
||||
|
||||
machine_flags = EMAGGABLE
|
||||
machine_flags = EMAGGABLE | MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/door_control/attack_ai(mob/user as mob)
|
||||
src.add_hiddenprint(user)
|
||||
@@ -134,14 +134,13 @@
|
||||
return src.attack_hand(user)
|
||||
|
||||
/obj/machinery/driver_button/attackby(obj/item/weapon/W, mob/user as mob)
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
|
||||
if(istype(W, /obj/item/device/detective_scanner))
|
||||
return
|
||||
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
|
||||
if(istype(W, /obj/item/weapon/wrench))
|
||||
playsound(get_turf(src), 'sound/items/Ratchet.ogg', 50, 1)
|
||||
if(do_after(user, 30))
|
||||
|
||||
@@ -115,9 +115,9 @@
|
||||
icon = 'icons/obj/doors/vault.dmi'
|
||||
opacity = 1
|
||||
emag_cost = 2 // in MJ
|
||||
assembly_type = /obj/structure/door_assembly/door_assembly_highsecurity //Until somebody makes better sprites.
|
||||
assembly_type = /obj/structure/door_assembly/door_assembly_vault
|
||||
|
||||
explosion_block = 2
|
||||
explosion_block = 3//that's some high quality plasteel door
|
||||
|
||||
/obj/machinery/door/airlock/freezer
|
||||
name = "Freezer Airlock"
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
var/build=2 // Build state
|
||||
var/boardtype=null // /obj/item/weapon/circuitboard/ecb
|
||||
var/obj/item/weapon/circuitboard/_circuitboard
|
||||
machine_flags = MULTITOOL_MENU
|
||||
/obj/machinery/embedded_controller/New(turf/loc, var/ndir, var/building=0)
|
||||
..()
|
||||
|
||||
@@ -30,6 +31,9 @@
|
||||
src.update_icon()
|
||||
|
||||
/obj/machinery/embedded_controller/attackby(var/obj/item/W as obj, var/mob/user as mob)
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
if(type==/obj/machinery/embedded_controller)
|
||||
switch(build)
|
||||
if(0) // Empty hull
|
||||
@@ -113,11 +117,6 @@
|
||||
if(build<2)
|
||||
return ..()
|
||||
|
||||
if(istype(W,/obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/machinery/embedded_controller/proc/post_signal(datum/signal/signal, comm_line)
|
||||
return 0
|
||||
|
||||
|
||||
@@ -580,6 +580,10 @@ Class Procs:
|
||||
else
|
||||
return -1
|
||||
|
||||
if(ismultitool(O) && machine_flags & MULTITOOL_MENU)
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
|
||||
if(!anchored && machine_flags & FIXED2WORK)
|
||||
return user << "<span class='warning'>\The [src] must be anchored first!</span>"
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ var/list/mass_drivers = list()
|
||||
use_power = 1
|
||||
idle_power_usage = 2
|
||||
active_power_usage = 50
|
||||
machine_flags = EMAGGABLE
|
||||
machine_flags = EMAGGABLE | MULTITOOL_MENU
|
||||
|
||||
var/power = 1.0
|
||||
var/code = 1.0
|
||||
@@ -25,9 +25,9 @@ var/list/mass_drivers = list()
|
||||
|
||||
/obj/machinery/mass_driver/attackby(obj/item/weapon/W, mob/user as mob)
|
||||
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
|
||||
if(istype(W, /obj/item/weapon/screwdriver))
|
||||
user << "You begin to unscrew the bolts off the [src]..."
|
||||
|
||||
@@ -10,13 +10,15 @@
|
||||
/obj/machinery/telecomms
|
||||
var/temp = "" // output message
|
||||
var/construct_op = 0
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
|
||||
/obj/machinery/telecomms/attackby(obj/item/P as obj, mob/user as mob)
|
||||
|
||||
// Using a multitool lets you access the receiver's interface
|
||||
if(istype(P, /obj/item/device/multitool))
|
||||
attack_hand(user)
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
|
||||
switch(construct_op)
|
||||
if(0)
|
||||
|
||||
@@ -157,6 +157,8 @@ var/global/list/datum/stack_recipe/plasteel_recipes = list ( \
|
||||
new/datum/stack_recipe("Mass Driver frame", /obj/machinery/mass_driver_frame, 3, time = 50, one_per_turf = 1), \
|
||||
new/datum/stack_recipe("Tank dispenser", /obj/structure/dispenser/empty, 2, time = 10, one_per_turf = 1), \
|
||||
new/datum/stack_recipe("Fireaxe cabinet", /obj/structure/closet/fireaxecabinet/, 2, time = 50, one_per_turf = 1), \
|
||||
null, \
|
||||
new/datum/stack_recipe("Vault Door assembly", /obj/structure/door_assembly/door_assembly_vault, 8, time = 50, one_per_turf = 1, on_floor = 1), \
|
||||
)
|
||||
|
||||
/obj/item/stack/sheet/plasteel
|
||||
|
||||
@@ -138,7 +138,7 @@
|
||||
M.requests += O
|
||||
if (buf.types & DNA2_BUF_SE)
|
||||
if(block)// Isolated injector
|
||||
testing("Isolated block [block] injector with contents: [GetValue()]")
|
||||
//testing("Isolated block [block] injector with contents: [GetValue()]")
|
||||
if (GetState() && block == MONKEYBLOCK && istype(M, /mob/living/carbon/human) )
|
||||
message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the Isolated [name] <span class='warning'>(MONKEY)</span>")
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the Isolated [name] (MONKEY)")
|
||||
@@ -146,7 +146,7 @@
|
||||
else
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the Isolated [name]")
|
||||
else
|
||||
testing("DNA injector with contents: [english_list(buf.dna.SE)]")
|
||||
//testing("DNA injector with contents: [english_list(buf.dna.SE)]")
|
||||
if (GetState(MONKEYBLOCK) && istype(M, /mob/living/carbon/human) )
|
||||
message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] <span class='warning'>(MONKEY)</span>")
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the [name] (MONKEY)")
|
||||
@@ -173,7 +173,7 @@
|
||||
|
||||
if (buf.types & DNA2_BUF_SE)
|
||||
if(block)// Isolated injector
|
||||
testing("Isolated block [block] injector with contents: [GetValue()]")
|
||||
//testing("Isolated block [block] injector with contents: [GetValue()]")
|
||||
if (GetState() && block == MONKEYBLOCK && istype(M, /mob/living/carbon/human) )
|
||||
message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the Isolated [name] <span class='warning'>(MONKEY)</span>")
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the Isolated [name] (MONKEY)")
|
||||
@@ -181,7 +181,7 @@
|
||||
else
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the Isolated [name]")
|
||||
else
|
||||
testing("DNA injector with contents: [english_list(buf.dna.SE)]")
|
||||
//testing("DNA injector with contents: [english_list(buf.dna.SE)]")
|
||||
if (GetState(MONKEYBLOCK) && istype(M, /mob/living/carbon/human))
|
||||
message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] <span class='warning'>(MONKEY)</span>")
|
||||
log_game("[key_name(user)] injected [key_name(M)] with the [name] (MONKEY)")
|
||||
|
||||
@@ -103,6 +103,12 @@
|
||||
airlock_type = "/highsecurity"
|
||||
glass = -1
|
||||
|
||||
/obj/structure/door_assembly/door_assembly_vault
|
||||
base_icon_state = "vault"
|
||||
base_name = "Vault"
|
||||
airlock_type = "/vault"
|
||||
glass = -1
|
||||
|
||||
/obj/structure/door_assembly/multi_tile/
|
||||
icon = 'icons/obj/doors/door_assembly2x1.dmi'
|
||||
dir = EAST
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
icon = 'icons/obj/bus.dmi'
|
||||
icon_state = "adminbus"
|
||||
can_spacemove=1
|
||||
layer = FLY_LAYER
|
||||
layer = FLY_LAYER+1
|
||||
pixel_x = -32
|
||||
pixel_y = -32
|
||||
var/can_move=1
|
||||
@@ -43,6 +43,7 @@
|
||||
update_lightsource()
|
||||
warp = new/obj/structure/teleportwarp(src.loc)
|
||||
busjuke = new/obj/machinery/media/jukebox/superjuke/adminbus(src.loc)
|
||||
busjuke.dir = EAST
|
||||
|
||||
/obj/structure/stool/bed/chair/vehicle/adminbus/update_mob()
|
||||
if(buckled_mob)
|
||||
|
||||
@@ -423,6 +423,9 @@
|
||||
|
||||
if (istype(O, /obj/item/weapon/reagent_containers))
|
||||
var/obj/item/weapon/reagent_containers/RG = O
|
||||
if(RG.reagents.total_volume >= RG.reagents.maximum_volume)
|
||||
user << "<span class='warning'>[RG] is full.</span>"
|
||||
return
|
||||
RG.reagents.add_reagent("water", min(RG.volume - RG.reagents.total_volume, RG.amount_per_transfer_from_this))
|
||||
user.visible_message("<span class='notice'>[user] fills the [RG] using \the [src].</span>","<span class='notice'>You fill the [RG] using \the [src].</span>")
|
||||
return
|
||||
@@ -440,8 +443,8 @@
|
||||
else
|
||||
B.deductcharge(1)
|
||||
user.visible_message( \
|
||||
"[user] was stunned by his wet [O].", \
|
||||
"<span class='warning'>You have wet \the [O], it shocks you!</span>")
|
||||
"<span class='warning'>[user] was stunned by \his wet [O.name]!</span>", \
|
||||
"<span class='warning'>You have wet \the [O.name], it shocks you!</span>")
|
||||
return
|
||||
|
||||
if (!isturf(user.loc))
|
||||
|
||||
@@ -107,4 +107,18 @@
|
||||
|
||||
// DE-HACK
|
||||
/turf/simulated/wall/vault/relativewall()
|
||||
return
|
||||
return
|
||||
|
||||
var/list/smoothable_unsims = list(
|
||||
"riveted",
|
||||
)
|
||||
|
||||
/turf/unsimulated/wall/New()
|
||||
..()
|
||||
if(icon_state in smoothable_unsims)
|
||||
relativewall()
|
||||
relativewall_neighbours()
|
||||
|
||||
/turf/unsimulated/wall/relativewall()
|
||||
var/junction=findSmoothingNeighbors()
|
||||
icon_state = "[walltype][junction]"
|
||||
|
||||
@@ -1,21 +1,26 @@
|
||||
/turf/unsimulated/wall
|
||||
name = "wall"
|
||||
name = "riveted wall"
|
||||
icon = 'icons/turf/walls.dmi'
|
||||
icon_state = "riveted"
|
||||
opacity = 1
|
||||
density = 1
|
||||
explosion_block = 2
|
||||
canSmoothWith = "/turf/unsimulated/wall=0"
|
||||
|
||||
var/walltype = "riveted"
|
||||
|
||||
/turf/unsimulated/wall/fakeglass
|
||||
name = "window"
|
||||
icon_state = "fakewindows"
|
||||
opacity = 0
|
||||
canSmoothWith = null
|
||||
|
||||
turf/unsimulated/wall/splashscreen
|
||||
name = "Space Station 13"
|
||||
icon = null
|
||||
icon_state = null
|
||||
layer = FLY_LAYER
|
||||
canSmoothWith = null
|
||||
|
||||
New()
|
||||
var/path = "icons/splashworks/"
|
||||
@@ -27,6 +32,7 @@ turf/unsimulated/wall/splashscreen
|
||||
|
||||
/turf/unsimulated/wall/other
|
||||
icon_state = "r_wall"
|
||||
canSmoothWith = null
|
||||
|
||||
/turf/unsimulated/wall/cult
|
||||
name = "wall"
|
||||
@@ -34,6 +40,7 @@ turf/unsimulated/wall/splashscreen
|
||||
icon_state = "cult0"
|
||||
opacity = 1
|
||||
density = 1
|
||||
canSmoothWith = null
|
||||
|
||||
/turf/unsimulated/wall/cultify()
|
||||
ChangeTurf(/turf/unsimulated/wall/cult)
|
||||
|
||||
@@ -845,6 +845,11 @@ var/global/list/arenas = list()
|
||||
sleep(2) //giving the game some time to process to avoid unbearable lag spikes when we create a large arena, plus it looks cool.
|
||||
pencil.y++
|
||||
|
||||
pencil.x = x
|
||||
pencil.y = y+h
|
||||
T = pencil.loc
|
||||
T.maptext = name
|
||||
|
||||
qdel(pencil) //RIP sweet prince
|
||||
|
||||
for (var/datum/bomberman_spawn/S in spawns) //removing the soft walls near the spawns
|
||||
@@ -878,6 +883,10 @@ var/global/list/arenas = list()
|
||||
|
||||
message_admins("[key_name_admin(user.client)] created a \"[size]\" Bomberman arena at [center.loc.name] ([center.x],[center.y],[center.z]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[center.x];Y=[center.y];Z=[center.z]'>JMP</A>)")
|
||||
log_game("[key_name_admin(user.client)] created a \"[size]\" Bomberman arena at [center.loc.name] ([center.x],[center.y],[center.z]) ")
|
||||
|
||||
for(var/mob/dead/observer/O in observers)
|
||||
O << "<spawn class='notice'><b>[user.client.key] created a \"[size]\" Bomberman arena at [center.loc.name]. <A HREF='?src=\ref[O];jumptoarenacood=1;X=[center.x];Y=[center.y];Z=[center.z]'>Click here to JUMP to it.</A></b></span>"
|
||||
|
||||
else
|
||||
qdel(src)
|
||||
|
||||
@@ -957,6 +966,9 @@ var/global/list/arenas = list()
|
||||
E.visible_message("\icon[E] \The [E] brightens as it appears that a round is starting in [name].")
|
||||
flick("entertainment_arena",E)
|
||||
|
||||
for(var/mob/dead/observer/O in observers)
|
||||
O << "<b>A round has began in <A HREF='?src=\ref[O];jumptoarenacood=1;X=[center.x];Y=[center.y];Z=[center.z]'>[name]</A>!</b>"
|
||||
|
||||
sleep(40)
|
||||
for(var/datum/bomberman_spawn/S in spawns)
|
||||
if(S.player)
|
||||
@@ -1113,6 +1125,7 @@ var/global/list/arenas = list()
|
||||
T.ChangeTurf(/turf/space)
|
||||
else
|
||||
T.ChangeTurf(/turf/simulated/floor/plating)
|
||||
T.maptext = null
|
||||
turfs = list()
|
||||
arenas -= src
|
||||
return
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
|
||||
var/const/RADS_PER_TICK=150
|
||||
var/const/MAX_TEMP=70 // Celsius
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/media/transmitter/broadcast/initialize()
|
||||
testing("[type]/initialize() called!")
|
||||
@@ -49,16 +50,18 @@
|
||||
broadcast() // Bzzt
|
||||
|
||||
/obj/machinery/media/transmitter/broadcast/attackby(var/obj/item/W, mob/user)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
|
||||
/obj/machinery/media/transmitter/broadcast/attack_ai(var/mob/user as mob)
|
||||
src.add_hiddenprint(user)
|
||||
attack_hand(user)
|
||||
|
||||
/obj/machinery/media/transmitter/broadcast/attack_hand(var/mob/user as mob)
|
||||
update_multitool_menu(user)
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
|
||||
/obj/machinery/media/transmitter/broadcast/multitool_menu(var/mob/user,var/obj/item/device/multitool/P)
|
||||
// You need a multitool to use this, or be silicon
|
||||
|
||||
@@ -184,7 +184,7 @@ var/global/loopModeNames=list(
|
||||
|
||||
var/state_base = "jukebox2"
|
||||
|
||||
machine_flags = WRENCHMOVE | FIXED2WORK | EMAGGABLE
|
||||
machine_flags = WRENCHMOVE | FIXED2WORK | EMAGGABLE | MULTITOOL_MENU
|
||||
mech_flags = MECH_SCAN_FAIL
|
||||
emag_cost = 0 // because fun/unlimited uses.
|
||||
|
||||
@@ -353,10 +353,9 @@ var/global/loopModeNames=list(
|
||||
|
||||
|
||||
/obj/machinery/media/jukebox/attackby(obj/item/W, mob/user)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
..()
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
if(istype(W,/obj/item/weapon/card/id))
|
||||
if(!selected_song || screen!=JUKEBOX_SCREEN_PAYMENT)
|
||||
visible_message("<span class='notice'>The machine buzzes.</span>","<span class='warning'>You hear a buzz.</span>")
|
||||
|
||||
@@ -45,6 +45,7 @@
|
||||
var/last_ad_cyc = 0 // Last world.time of an ad cycle
|
||||
var/list/ad_queue = 0 // Ads queued to play
|
||||
|
||||
machine_flags = MULTITOOL_MENU
|
||||
var/state_base = "tapedeck"
|
||||
|
||||
/obj/machinery/media/tapedeck/attack_ai(var/mob/user)
|
||||
@@ -188,9 +189,9 @@
|
||||
|
||||
|
||||
/obj/machinery/media/jukebox/attackby(obj/item/W, mob/user)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
if(istype(W, /obj/item/weapon/card/emag))
|
||||
current_song = 0
|
||||
if(!emagged)
|
||||
@@ -203,6 +204,7 @@
|
||||
user.visible_message("<span class='warning'>[user.name] slides something into the [src.name]'s card-reader.</span>","<span class='warning'>You short out the [src.name].</span>")
|
||||
update_icon()
|
||||
update_music()
|
||||
return 1
|
||||
else if(istype(W,/obj/item/weapon/wrench))
|
||||
var/un = !anchored ? "" : "un"
|
||||
user.visible_message("<span class='notice'>[user.name] begins [un]locking \the [src.name]'s casters.</span>","<span class='notice'>You begin [un]locking \the [src.name]'s casters.</span>")
|
||||
|
||||
@@ -26,10 +26,10 @@
|
||||
var/resource_efficiency = 1
|
||||
var/id_tag = "clone_pod"
|
||||
|
||||
machine_flags = EMAGGABLE | SCREWTOGGLE | CROWDESTROY
|
||||
machine_flags = EMAGGABLE | SCREWTOGGLE | CROWDESTROY | MULTITOOL_MENU
|
||||
|
||||
l_color = "#7BF9FF"
|
||||
|
||||
|
||||
/obj/machinery/cloning/clonepod/multitool_menu(var/mob/user, var/obj/item/device/multitool/P)
|
||||
return ""
|
||||
|
||||
@@ -343,6 +343,9 @@
|
||||
|
||||
//Let's unlock this early I guess. Might be too early, needs tweaking.
|
||||
/obj/machinery/cloning/clonepod/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
|
||||
if (!src.check_access(W))
|
||||
user << "<span class='warning'>Access Denied.</span>"
|
||||
@@ -358,10 +361,6 @@
|
||||
user.drop_item(W)
|
||||
qdel(W)
|
||||
return
|
||||
if(ismultitool(W))
|
||||
update_multitool_menu(user)
|
||||
else
|
||||
..()
|
||||
|
||||
//Put messages in the connected computer's temp var for display.
|
||||
/obj/machinery/cloning/clonepod/proc/connected_message(var/message)
|
||||
|
||||
@@ -82,17 +82,16 @@
|
||||
#undef CLONEPODRANGE
|
||||
|
||||
/obj/machinery/computer/cloning/attackby(obj/item/W as obj, mob/user as mob)
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
if (istype(W, /obj/item/weapon/disk/data)) //INSERT SOME DISKETTES
|
||||
if (!src.diskette)
|
||||
user.drop_item(W, src)
|
||||
src.diskette = W
|
||||
user << "You insert [W]."
|
||||
src.updateUsrDialog()
|
||||
return
|
||||
if(ismultitool(W))
|
||||
update_multitool_menu(user)
|
||||
else
|
||||
..()
|
||||
return 1
|
||||
return
|
||||
|
||||
/obj/machinery/computer/cloning/attack_paw(mob/user as mob)
|
||||
|
||||
@@ -788,6 +788,20 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
// host.ckey = src.ckey
|
||||
// //host << "<span class='info'>You are now a mouse. Try to avoid interaction with players, and do not give hints away that you are more than a simple rodent.</span>"
|
||||
|
||||
/mob/dead/observer/verb/find_arena()
|
||||
set category = "Ghost"
|
||||
set name = "Search For Arenas"
|
||||
set desc = "Try to find an Arena to polish your robust bomb placement skills.."
|
||||
|
||||
if(!arenas.len)
|
||||
usr << "There are no arenas in the world! Ask the admins to spawn one."
|
||||
return
|
||||
|
||||
var/datum/bomberman_arena/arena_target = input("Which arena do you wish to reach?", "Arena Search Panel") in arenas
|
||||
usr << "Reached [arena_target]"
|
||||
|
||||
usr.loc = arena_target.center
|
||||
|
||||
//BEGIN TELEPORT HREF CODE
|
||||
/mob/dead/observer/Topic(href, href_list)
|
||||
if(usr != src)
|
||||
@@ -836,6 +850,15 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
return
|
||||
loc = T
|
||||
following = null
|
||||
|
||||
if(href_list["jumptoarenacood"])
|
||||
var/x = text2num(href_list["X"])
|
||||
var/y = text2num(href_list["Y"])
|
||||
var/z = text2num(href_list["Z"])
|
||||
|
||||
var/client/C = usr.client
|
||||
sleep(2)
|
||||
C.jumptocoord(x,y,z)
|
||||
..()
|
||||
//END TELEPORT HREF CODE
|
||||
|
||||
|
||||
@@ -77,4 +77,4 @@ var/global/list/boo_phrases_silicon=list(
|
||||
A:spookymode=1
|
||||
|
||||
if(istype(A, /obj/machinery/ai_status_display))
|
||||
A:spookymode=1
|
||||
A:spookymode=1
|
||||
|
||||
@@ -72,6 +72,7 @@
|
||||
if(!src.species)
|
||||
if(new_species_name) src.set_species(new_species_name)
|
||||
else src.set_species()
|
||||
default_language = get_default_language()
|
||||
|
||||
create_reagents(1000)
|
||||
|
||||
|
||||
@@ -89,7 +89,8 @@
|
||||
update_muts=1
|
||||
|
||||
if(!istype(src, /mob/living/carbon/monkey/diona))
|
||||
add_language("Chimpanzee")
|
||||
add_language(LANGUAGE_MONKEY)
|
||||
default_language = all_languages[LANGUAGE_MONKEY]
|
||||
|
||||
..()
|
||||
update_icons()
|
||||
|
||||
@@ -79,6 +79,7 @@ var/list/ai_list = list()
|
||||
add_language(LANGUAGE_MONKEY, 1)
|
||||
add_language(LANGUAGE_VOX, 1)
|
||||
add_language(LANGUAGE_TRADEBAND, 1)
|
||||
default_language = all_languages[LANGUAGE_SOL_COMMON]
|
||||
real_name = pickedName
|
||||
name = real_name
|
||||
anchored = 1
|
||||
|
||||
@@ -147,6 +147,7 @@
|
||||
cell_component.installed = 1
|
||||
|
||||
playsound(loc, startup_sound, 75, 1)
|
||||
default_language = all_languages[LANGUAGE_SOL_COMMON]
|
||||
|
||||
// setup the PDA and its name
|
||||
/mob/living/silicon/robot/proc/setup_PDA()
|
||||
|
||||
@@ -57,7 +57,8 @@
|
||||
..()
|
||||
name = text("[initial(name)] ([rand(1, 1000)])")
|
||||
real_name = name
|
||||
add_language("Cult")
|
||||
add_language(LANGUAGE_CULT)
|
||||
default_language = all_languages[LANGUAGE_CULT]
|
||||
for(var/spell in construct_spells)
|
||||
src.add_spell(new spell, "const_spell_ready")
|
||||
updateicon()
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
var/shot_number = 0
|
||||
var/locked = 0
|
||||
|
||||
machine_flags = EMAGGABLE | WRENCHMOVE | FIXED2WORK | WELD_FIXED
|
||||
machine_flags = EMAGGABLE | WRENCHMOVE | FIXED2WORK | WELD_FIXED | MULTITOOL_MENU
|
||||
|
||||
var/frequency = 0
|
||||
var/id_tag = null
|
||||
@@ -249,11 +249,9 @@
|
||||
return -1
|
||||
|
||||
/obj/machinery/power/emitter/attackby(obj/item/W, mob/user)
|
||||
if(..())
|
||||
return 1
|
||||
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
|
||||
if(istype(W, /obj/item/weapon/card/id) || istype(W, /obj/item/device/pda))
|
||||
if(emagged)
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
wabbajack(change)
|
||||
|
||||
|
||||
/obj/item/projectile/change/proc/wabbajack(var/mob/M) //WHY: as mob in living_mob_list
|
||||
/obj/item/projectile/change/proc/wabbajack(var/mob/living/M) //WHY: as mob in living_mob_list
|
||||
if(istype(M, /mob/living) && M.stat != DEAD)
|
||||
if(M.monkeyizing)
|
||||
return
|
||||
@@ -53,7 +53,9 @@
|
||||
switch(randomize)
|
||||
if("monkey")
|
||||
new_mob = new /mob/living/carbon/monkey(M.loc)
|
||||
new_mob.languages |= M.languages
|
||||
var/mob/living/carbon/monkey/Monkey = new_mob
|
||||
Monkey.languages |= M.languages
|
||||
if(M.default_language) Monkey.default_language = M.default_language
|
||||
if("robot")
|
||||
new_mob = new /mob/living/silicon/robot(M.loc)
|
||||
new_mob.setGender(M.gender)
|
||||
@@ -62,7 +64,8 @@
|
||||
var/mob/living/silicon/robot/Robot = new_mob
|
||||
Robot.mmi = new /obj/item/device/mmi(new_mob)
|
||||
Robot.mmi.transfer_identity(M) //Does not transfer key/client.
|
||||
new_mob.languages |= M.languages
|
||||
Robot.languages |= M.languages
|
||||
if(M.default_language) Robot.default_language = M.default_language
|
||||
if("mommi")
|
||||
new_mob = new /mob/living/silicon/robot/mommi(M.loc)
|
||||
new_mob.setGender(M.gender)
|
||||
@@ -71,6 +74,8 @@
|
||||
var/mob/living/silicon/robot/mommi/MoMMI = new_mob
|
||||
MoMMI.mmi = new /obj/item/device/mmi(new_mob)
|
||||
MoMMI.mmi.transfer_identity(M) //Does not transfer key/client.
|
||||
MoMMI.languages |= M.languages
|
||||
if(M.default_language) MoMMI.default_language = M.default_language
|
||||
if("slime")
|
||||
var/slimey = pick("",\
|
||||
"/purple",\
|
||||
@@ -100,7 +105,9 @@
|
||||
|
||||
slimey = text2path("/mob/living/carbon/slime[slimey]")
|
||||
new_mob = new slimey(M.loc)
|
||||
new_mob.languages |= M.languages
|
||||
var/mob/living/carbon/slime/Slime = new_mob
|
||||
Slime.languages |= M.languages
|
||||
if(M.default_language) Slime.default_language = M.default_language
|
||||
if("xeno")
|
||||
var/alien_caste = pick("Hunter","Sentinel","Drone","Larva")
|
||||
switch(alien_caste)
|
||||
@@ -108,7 +115,9 @@
|
||||
if("Sentinel") new_mob = new /mob/living/carbon/alien/humanoid/sentinel(M.loc)
|
||||
if("Drone") new_mob = new /mob/living/carbon/alien/humanoid/drone(M.loc)
|
||||
else new_mob = new /mob/living/carbon/alien/larva(M.loc)
|
||||
new_mob.languages |= M.languages
|
||||
var/mob/living/carbon/alien/Alien = new_mob
|
||||
Alien.languages |= M.languages
|
||||
if(M.default_language) Alien.default_language = M.default_language
|
||||
if("human")
|
||||
new_mob = new /mob/living/carbon/human(M.loc, delay_ready_dna=1)
|
||||
|
||||
@@ -121,6 +130,8 @@
|
||||
var/newspecies = pick(all_species)
|
||||
H.set_species(newspecies)
|
||||
H.generate_name()
|
||||
H.languages |= M.languages
|
||||
if(M.default_language) H.default_language = M.default_language
|
||||
if("furry")
|
||||
new_mob = new /mob/living/carbon/human(M.loc, delay_ready_dna=1)
|
||||
|
||||
@@ -131,6 +142,8 @@
|
||||
|
||||
var/mob/living/carbon/human/H = new_mob
|
||||
H.set_species("Tajaran") // idfk
|
||||
H.languages |= M.languages
|
||||
if(M.default_language) H.default_language = M.default_language
|
||||
H.generate_name()
|
||||
/* RIP
|
||||
if("cluwne")
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
var/frequency = 1367
|
||||
var/datum/radio_frequency/radio_connection
|
||||
|
||||
machine_flags = SCREWTOGGLE | CROWDESTROY
|
||||
machine_flags = SCREWTOGGLE | CROWDESTROY | MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/conveyor/centcom_auto
|
||||
id_tag = "round_end_belt"
|
||||
@@ -188,9 +188,6 @@
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
user.drop_item(W, src.loc)
|
||||
return 0
|
||||
|
||||
@@ -292,6 +289,7 @@
|
||||
|
||||
var/frequency = 1367
|
||||
var/datum/radio_frequency/radio_connection
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
anchored = 1
|
||||
|
||||
@@ -379,9 +377,9 @@
|
||||
radio_connection.post_signal(src, signal, range = CONVEYOR_CONTROL_RANGE)
|
||||
|
||||
/obj/machinery/conveyor_switch/attackby(var/obj/item/W, mob/user)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
if(istype(W, /obj/item/weapon/wrench))
|
||||
user << "<span class='notice'>Deconstructing \the [src]...</span>"
|
||||
if(do_after(user,50))
|
||||
@@ -392,7 +390,6 @@
|
||||
new /obj/item/stack/rods(T,1)
|
||||
del(src)
|
||||
return 1
|
||||
return ..()
|
||||
|
||||
/obj/machinery/conveyor_switch/oneway
|
||||
var/convdir = 1 //Set to 1 or -1 depending on which way you want the conveyor to go. (In other words keep at 1 and set the proper dir on the belts.)
|
||||
|
||||
@@ -66,6 +66,7 @@
|
||||
|
||||
//Add types to this list so it doesn't make a message or get desroyed by the Supermatter on touch.
|
||||
var/list/message_exclusions = list(/obj/effect/effect/sparks)
|
||||
machine_flags = MULTITOOL_MENU
|
||||
|
||||
/obj/machinery/power/supermatter/shard //Small subtype, less efficient and more sensitive, but less boom.
|
||||
name = "Supermatter Shard"
|
||||
@@ -339,9 +340,9 @@
|
||||
return
|
||||
|
||||
/obj/machinery/power/supermatter/attackby(obj/item/weapon/W as obj, mob/living/user as mob)
|
||||
if(istype(W, /obj/item/device/multitool))
|
||||
update_multitool_menu(user)
|
||||
return 1
|
||||
. = ..()
|
||||
if(.)
|
||||
return .
|
||||
|
||||
user.visible_message("<span class=\"warning\">\The [user] touches \a [W] to \the [src] as a silence fills the room...</span>",\
|
||||
"<span class=\"danger\">You touch \the [W] to \the [src] when everything suddenly goes silent.\"</span>\n<span class=\"notice\">\The [W] flashes into dust as you flinch away from \the [src].</span>",\
|
||||
|
||||
@@ -962,6 +962,7 @@ var/list/RESTRICTED_CAMERA_NETWORKS = list( //Those networks can only be accesse
|
||||
#define FIXED2WORK 16 //does it need to be anchored to work? Try to use this with WRENCHMOVE - hooks into power code
|
||||
#define EJECTNOTDEL 32 //when we destroy the machine, does it remove all its items or destroy them?
|
||||
#define WELD_FIXED 64 //if it is attacked by a welder and is anchored, it'll toggle between welded and unwelded to the floor
|
||||
#define MULTITOOL_MENU 128 //if it has multitool menu functionality inherently
|
||||
|
||||
#define MAX_N_OF_ITEMS 999 // Used for certain storage machinery, BYOND infinite loop detector doesn't look things over 1000.
|
||||
|
||||
@@ -1152,11 +1153,12 @@ var/list/RESTRICTED_CAMERA_NETWORKS = list( //Those networks can only be accesse
|
||||
#define LANGUAGE_CLATTER "Clatter"
|
||||
#define LANGUAGE_MONKEY "Monkey"
|
||||
#define LANGUAGE_VOX "Vox-pidgin"
|
||||
#define LANGUAGE_CULT "Cult"
|
||||
|
||||
//#define SAY_DEBUG 0
|
||||
#ifdef SAY_DEBUG
|
||||
#warning SOME ASSHOLE FORGOT TO COMMENT SAY_DEBUG BEFORE COMMITTING
|
||||
#define say_testing(a,x) a << ("([__FILE__]L[__LINE__] SAYDEBUG) [x]")
|
||||
#else
|
||||
#define say_testing(a,x)
|
||||
#endif
|
||||
#define say_testing(a,x) null << "[x][a]"
|
||||
#endif
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 37 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 164 KiB After Width: | Height: | Size: 168 KiB |
Reference in New Issue
Block a user