mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
Mecca Fixes, pt1. WIP.
```yaml changes: - tweak: "Device Analyzers can no longer scan some items. Other items can only be scanned with the traitor variant of the scanner." - tweak: "Flatpacks take 10-20 seconds to open." - bugfix: "Flatpacks hit multiple times by a crowbar will only open once." ```
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
/datum/mind/var/list/job_objectives=list()
|
||||
|
||||
#define FINDJOBTASK_DEFAULT_NEW 1 // Make a new task of this type if one can't be found.
|
||||
|
||||
/datum/mind/proc/findJobTask(var/typepath,var/options=0)
|
||||
var/datum/job_objective/task = locate(typepath) in src.job_objectives
|
||||
if(!istype(task,typepath))
|
||||
|
||||
@@ -24,6 +24,9 @@
|
||||
|
||||
var/list/mob/_using // All mobs dicking with us.
|
||||
|
||||
// Shit for mechanics. (MECH_*)
|
||||
var/mech_flags=0
|
||||
|
||||
/obj/Destroy()
|
||||
if(_using)
|
||||
for(var/mob/mob in _using)
|
||||
@@ -267,4 +270,4 @@ a {
|
||||
return
|
||||
|
||||
/obj/proc/container_resist()
|
||||
return
|
||||
return
|
||||
|
||||
@@ -104,6 +104,7 @@ var/global/loopModeNames=list(
|
||||
var/state_base = "jukebox2"
|
||||
|
||||
machine_flags = WRENCHMOVE | FIXED2WORK | EMAGGABLE
|
||||
mech_flags = MECH_SCAN_FAIL
|
||||
emag_cost = 0 // because fun/unlimited uses.
|
||||
|
||||
/obj/machinery/media/jukebox/New(loc)
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
force = 5.0
|
||||
origin_tech = "combat=1"
|
||||
attack_verb = list("struck", "hit", "bashed")
|
||||
mech_flags = MECH_SCAN_ILLEGAL
|
||||
|
||||
var/fire_sound = 'sound/weapons/Gunshot.ogg'
|
||||
var/obj/item/projectile/in_chamber = null
|
||||
|
||||
@@ -62,6 +62,14 @@
|
||||
if(!istype(O))
|
||||
return 0
|
||||
|
||||
// Objects that cannot be scanned
|
||||
if((O.mech_flags & MECH_SCAN_FAIL)==MECH_SCAN_FAIL)
|
||||
return 0
|
||||
|
||||
// Objects that can only be scanned with the syndi-scanner.
|
||||
if(syndi_filter && (O.mech_flags & MECH_SCAN_ILLEGAL)==MECH_SCAN_ILLEGAL)
|
||||
return 0
|
||||
|
||||
var/list/techlist
|
||||
if(istype(O, /obj/machinery))
|
||||
var/obj/machinery/M = O
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
density = 1
|
||||
anchored = 0
|
||||
var/obj/machinery/machine = null
|
||||
var/opening=0
|
||||
|
||||
/obj/structure/closet/crate/flatpack/New()
|
||||
..()
|
||||
@@ -13,8 +14,12 @@
|
||||
|
||||
/obj/structure/closet/crate/flatpack/attackby(var/atom/A, mob/user)
|
||||
if(istype(A, /obj/item/weapon/crowbar))
|
||||
if(opening)
|
||||
user << "<span class='warning'>This is already being opened.</span>"
|
||||
return 1
|
||||
user <<"<span class='notice'>You begin to open the flatpack...</span>"
|
||||
if(do_after(user, 40))
|
||||
opening=1
|
||||
if(do_after(user, rand(10,20) SECONDS))
|
||||
if(machine)
|
||||
user <<"<span class='notice'>\icon [src]You successfully unpack \the [src]!</span>"
|
||||
machine.loc = get_turf(src)
|
||||
@@ -24,7 +29,9 @@
|
||||
for(var/atom/movable/AM in src)
|
||||
AM.loc = get_turf(src)
|
||||
qdel(src)
|
||||
opening=0
|
||||
return 1
|
||||
opening=0
|
||||
return
|
||||
|
||||
/obj/structure/closet/crate/flatpack/attack_hand()
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
var/damage = 0
|
||||
var/damage_archived = 0
|
||||
var/safe_alert = "Crystaline hyperstructure returning to safe operating levels."
|
||||
var/safe_alert = "Crystalline hyperstructure returning to safe operating levels."
|
||||
var/warning_point = 100
|
||||
var/warning_alert = "Danger! Crystal hyperstructure instability!"
|
||||
var/emergency_point = 700
|
||||
|
||||
@@ -925,3 +925,7 @@ var/list/RESTRICTED_CAMERA_NETWORKS = list( //Those networks can only be accesse
|
||||
#define ACCESS_EMAG 32 //does it lose all its access when smacked by an emag? incompatible with CONSOLECONTROl, for obvious reasons
|
||||
#define LOCKBOXES 64 //does it spawn a lockbox around a design which is said to be locked? - for fabricators
|
||||
#define TRUELOCKS 128 //does it make a truly locked lockbox? If not set, the lockboxes made are unlockable by any crew with an ID
|
||||
|
||||
// Mecca scanner flags
|
||||
#define MECH_SCAN_FAIL 1 // Cannot be scanned at all.
|
||||
#define MECH_SCAN_ILLEGAL 2 // Can only be scanned by the antag scanner.
|
||||
|
||||
6
html/changelogs/N3X15-fix-mecca.yml
Normal file
6
html/changelogs/N3X15-fix-mecca.yml
Normal file
@@ -0,0 +1,6 @@
|
||||
author: N3X15
|
||||
delete-after: true
|
||||
changes:
|
||||
- tweak: "Device Analyzers can no longer scan some items. Other items can only be scanned with the traitor variant of the scanner."
|
||||
- tweak: "Flatpacks take 10-20 seconds to open."
|
||||
- bugfix: "Flatpacks hit multiple times by a crowbar will only open once."
|
||||
Reference in New Issue
Block a user