2016 Bugfix Roundup (#10731)

Fixes #833
Fixes #934
Fixes #1125
Fixes #1186
This commit is contained in:
Wildkins
2020-12-06 15:09:05 +02:00
committed by GitHub
parent 4c5ee9fb45
commit 23791c531b
7 changed files with 35 additions and 15 deletions
+3 -1
View File
@@ -695,7 +695,9 @@
// Delete them from datacore.
SSrecords.remove_record_by_field("name", H.real_name)
if(!SSrecords.remove_record_by_field("fingerprint", H.get_full_print()))
// didn't find a record by fingerprint, fallback to deleting by name
SSrecords.remove_record_by_field("name", H.real_name)
SSrecords.reset_manifest()
log_and_message_admins("([H.mind.role_alt_title]) entered cryostorage.", user = H)
+1
View File
@@ -176,6 +176,7 @@ var/global/const/base_law_type = /datum/ai_laws/nanotrasen
/datum/ai_laws/proc/delete_law(var/datum/ai_law/law)
if(istype(law))
law.delete_law(src)
sorted_laws.Cut()
/datum/ai_law/proc/delete_law(var/datum/ai_laws/laws)
+7 -1
View File
@@ -39,6 +39,8 @@
if(stat & (NOPOWER|BROKEN)) return
if(user.stat) return
user.set_machine(src)
var/data[0]
var/list/all_networks[0]
for(var/nw in network)
@@ -124,7 +126,11 @@
if (!C.can_use() || user.stat || (get_dist(user, src) > 1 || user.machine != src || user.blinded || !( user.canmove ) && !istype(user, /mob/living/silicon)))
return 0
set_current(C)
user.reset_view(current_camera)
if(ishuman(user))
var/mob/living/carbon/human/H = user
H.reset_view(current_camera)
else
user.reset_view(current_camera)
check_eye(user)
return 1
@@ -467,9 +467,15 @@
/datum/species/proc/handle_vision(var/mob/living/carbon/human/H)
var/list/vision = H.get_accumulated_vision_handlers()
H.update_sight()
H.sight |= get_vision_flags(H)
H.sight |= H.equipment_vision_flags
H.sight |= vision[1]
if(H.machine && H.machine.check_eye(H) >= 0 && H.client.eye != H)
// we inherit sight flags from the machine
H.sight &= ~(get_vision_flags(H))
H.sight &= ~(H.equipment_vision_flags)
H.sight &= ~(vision[1])
else
H.sight |= get_vision_flags(H)
H.sight |= H.equipment_vision_flags
H.sight |= vision[1]
if(H.stat == DEAD)
return 1
@@ -637,4 +643,4 @@
return E.key
/datum/species/proc/get_injection_modifier()
return injection_mod
return injection_mod
+3 -3
View File
@@ -24,10 +24,10 @@ var/mob/living/next_point_time = 0
face_atom(A)
if(isturf(A))
if(pointing_effect)
clear_point()
QDEL_NULL(pointing_effect)
pointing_effect = new /obj/effect/decal/point(A)
pointing_effect.invisibility = invisibility
addtimer(CALLBACK(src, .proc/clear_point), 20)
addtimer(CALLBACK(GLOBAL_PROC, /proc/qdel, pointing_effect), 2 SECONDS)
else
var/pointglow = filter(type = "drop_shadow", x = 0, y = -1, offset = 1, size = 1, color = "#F00")
LAZYADD(A.filters, pointglow)
@@ -980,4 +980,4 @@ default behaviour is:
set hidden = 1
set name = "mov_intent"
if(hud_used?.move_intent)
hud_used.move_intent.Click()
hud_used.move_intent.Click()
+2 -6
View File
@@ -341,14 +341,10 @@
pointing_effect = new /obj/effect/decal/point(tile)
pointing_effect.invisibility = invisibility
addtimer(CALLBACK(src, .proc/clear_point), 20)
addtimer(CALLBACK(GLOBAL_PROC, /proc/qdel, pointing_effect), 2 SECONDS)
face_atom(A)
return 1
/mob/proc/clear_point()
QDEL_NULL(pointing_effect)
/datum/mobl // I have no idea what the fuck this is, but it's better for it to be a datum than an /obj/effect.
var/list/container = list()
var/master
@@ -1448,4 +1444,4 @@
if(!check_has_body_select())
return
var/obj/screen/zone_sel/selector = mob.zone_sel
selector.set_selected_zone(next_in_list(mob.zone_sel.selecting,zones))
selector.set_selected_zone(next_in_list(mob.zone_sel.selecting,zones))
+9
View File
@@ -0,0 +1,9 @@
author: JohnWildkins
delete-after: True
changes:
- bugfix: "Cryoing with the same mob name as another player should no longer remove both players from the manifest and records system."
- bugfix: "Malf/traitor AI law deletion now correctly rebuilds the law list, so carding a malf AI no longer reveals extra laws (other than law zero)."
- bugfix: "Mobs that die while pointing no longer leave an infinite point marker."
- bugfix: "Thermals, mesons, and material scanner overlays no longer function through security camera monitors."