mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-09 16:14:13 +00:00
Fixes turret controllers (#26280)
* Fixes turrets controllers. With unit testing! * oops * yeah no
This commit is contained in:
@@ -360,14 +360,19 @@
|
||||
..()
|
||||
if(!control_area)
|
||||
control_area = get_area(src)
|
||||
else if(istext(control_area))
|
||||
for(var/area/A in areas)
|
||||
if(A.name && A.name == control_area)
|
||||
control_area = A
|
||||
break
|
||||
else if(ispath(control_area))
|
||||
control_area = locate(control_area)
|
||||
else if(istext(control_area))
|
||||
var/path = text2path(control_area)
|
||||
if(path)
|
||||
control_area = locate(path)
|
||||
else
|
||||
for(var/area/A in areas)
|
||||
if(cmptext(A.name, control_area))
|
||||
control_area = A
|
||||
break
|
||||
|
||||
ASSERT(isarea(control_area))
|
||||
updateTurrets() //Updates the turrets and the icon if an instance is made that is not set to stun by default
|
||||
|
||||
/obj/machinery/turretid/emag(mob/user)
|
||||
|
||||
@@ -6,4 +6,5 @@
|
||||
#include "reagent_recipe_collisions.dm"
|
||||
#include "slipping.dm"
|
||||
#include "names.dm"
|
||||
#include "turretid.dm"
|
||||
#endif
|
||||
|
||||
11
code/modules/unit_tests/turretid.dm
Normal file
11
code/modules/unit_tests/turretid.dm
Normal file
@@ -0,0 +1,11 @@
|
||||
/datum/unit_test/turretid
|
||||
/datum/unit_test/turretid/start()
|
||||
var/turf/centre = locate(/area/shuttle/arrival/station)// the arrival shuttle area should exist on every station
|
||||
var/obj/machinery/turretid/turret_controller = new(centre)
|
||||
ASSERT(isarea(turret_controller.control_area))
|
||||
turret_controller.control_area = "Arrival Shuttle"
|
||||
turret_controller.New()
|
||||
ASSERT(isarea(turret_controller.control_area))
|
||||
turret_controller.control_area = "/area/shuttle/arrival/station"
|
||||
turret_controller.New()
|
||||
ASSERT(isarea(turret_controller.control_area))
|
||||
Reference in New Issue
Block a user