mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-30 00:29:02 +01:00
aaaaaaaaaaaa (#6767)
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
#define LOCKER_FULL -1
|
||||
|
||||
/obj/structure/closet//SKYRAT EDIT - ICON OVERRIDEN BY AESTHETICS - SEE MODULE
|
||||
/obj/structure/closet//SKYRAT EDIT - ICON OVERRIDEN BY CLOSETS.DM IN ANIMATED DOORS
|
||||
name = "closet"
|
||||
desc = "It's a basic storage unit."
|
||||
icon = 'icons/obj/closet.dmi'
|
||||
@@ -90,7 +90,7 @@
|
||||
|
||||
/obj/structure/closet/proc/closet_update_overlays(list/new_overlays)
|
||||
. = new_overlays
|
||||
if(enable_door_overlay)
|
||||
if(enable_door_overlay && !is_animating_door) //SKYRAT EDIT CHANGE
|
||||
if(opened && has_opened_overlay)
|
||||
. += "[icon_door_override ? icon_door : icon_state]_open"
|
||||
var/mutable_appearance/door_blocker = mutable_appearance(icon, "[icon_door || icon_state]_open", plane = EMISSIVE_PLANE)
|
||||
@@ -188,6 +188,7 @@
|
||||
if(!dense_when_open)
|
||||
set_density(FALSE)
|
||||
dump_contents()
|
||||
animate_door(FALSE) //SKYRAT EDIT ADDITION
|
||||
update_appearance()
|
||||
after_open(user, force)
|
||||
return TRUE
|
||||
@@ -245,6 +246,7 @@
|
||||
playsound(loc, close_sound, close_sound_volume, TRUE, -3)
|
||||
opened = FALSE
|
||||
set_density(TRUE)
|
||||
animate_door(TRUE) //SKYRAT EDIT ADDITION
|
||||
update_appearance()
|
||||
after_close(user)
|
||||
return TRUE
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 60 KiB |
@@ -1,13 +1,13 @@
|
||||
/obj/structure/closet/shuttle
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon = 'modular_skyrat/master_files/icons/obj/closet.dmi'
|
||||
icon_state = "wallcloset"
|
||||
door_anim_time = 0 //CONVERT THESE DOORS YOU LAZY ASSHATS
|
||||
|
||||
/obj/structure/closet/shuttle/white
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon_state = "wallcloset_white"
|
||||
icon_door_override = TRUE
|
||||
icon_door = "wallcloset_door"
|
||||
@@ -15,7 +15,6 @@
|
||||
/obj/structure/closet/shuttle/wagon
|
||||
name = "emergency closet"
|
||||
desc = "It's a storage unit for emergency breathmasks and o2 tanks."
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon_state = "wallcloset_white"
|
||||
|
||||
/obj/structure/closet/shuttle/wagon/PopulateContents()
|
||||
@@ -27,7 +26,6 @@
|
||||
/obj/structure/closet/shuttle/mining
|
||||
name = "emergency closet"
|
||||
desc = "It's a storage unit for emergency o2 supply and pressure suit."
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon_state = "wallcloset_mining"
|
||||
|
||||
/obj/structure/closet/shuttle/mining/PopulateContents()
|
||||
@@ -41,7 +39,6 @@
|
||||
/obj/structure/closet/shuttle/medical_wall/erokez //wall mounted medical closet
|
||||
name = "first-aid closet"
|
||||
desc = "It's wall-mounted storage unit for first aid supplies."
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon_state = "wallcloset_med"
|
||||
|
||||
/obj/structure/closet/shuttle/medical_wall/erokez/PopulateContents()
|
||||
@@ -55,13 +52,11 @@
|
||||
/obj/structure/closet/shuttle/erokez
|
||||
name = "Closet"
|
||||
desc = "It's wall-mounted storage unit"
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon_state = "wallcloset"
|
||||
|
||||
/obj/structure/closet/shuttle/evacvent
|
||||
name = "Engine ventilation"
|
||||
desc = "Looks like you can get in this small engine ventilation shaft."
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon_state = "shuttle"
|
||||
anchored = TRUE
|
||||
|
||||
@@ -69,26 +64,30 @@
|
||||
wall_mounted = TRUE
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon = 'modular_skyrat/master_files/icons/obj/closet.dmi'
|
||||
icon_state = "fire_wall"
|
||||
door_anim_time = 0 //CONVERT THESE DOORS YOU LAZY ASSHATS
|
||||
|
||||
/obj/structure/closet/emcloset/wall
|
||||
wall_mounted = TRUE
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon = 'modular_skyrat/master_files/icons/obj/closet.dmi'
|
||||
icon_state = "emergency_wall"
|
||||
door_anim_time = 0 //CONVERT THESE DOORS YOU LAZY ASSHATS
|
||||
|
||||
/obj/structure/closet/secure_closet/wall
|
||||
wall_mounted = TRUE
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon = 'modular_skyrat/master_files/icons/obj/closet.dmi'
|
||||
icon_state = "closet_wall"
|
||||
door_anim_time = 0 //CONVERT THESE DOORS YOU LAZY ASSHATS
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/wall
|
||||
wall_mounted = TRUE
|
||||
anchored = TRUE
|
||||
density = TRUE
|
||||
icon = 'modular_skyrat/modules/advanced_shuttles/icons/closet.dmi'
|
||||
icon = 'modular_skyrat/master_files/icons/obj/closet.dmi'
|
||||
icon_state = "closet_wall"
|
||||
door_anim_time = 0 //CONVERT THESE DOORS YOU LAZY ASSHATS
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 14 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 1.6 KiB |
@@ -0,0 +1,76 @@
|
||||
/obj/structure/closet
|
||||
icon = 'modular_skyrat/master_files/icons/obj/closet.dmi'
|
||||
var/obj/effect/overlay/closet_door/door_obj
|
||||
var/is_animating_door = FALSE
|
||||
var/door_anim_squish = 0.30
|
||||
var/door_anim_angle = 136
|
||||
var/door_hinge = -6.5
|
||||
var/door_anim_time = 2.0 // set to 0 to make the door not animate at all
|
||||
|
||||
/obj/structure/closet/proc/animate_door(closing = FALSE)
|
||||
if(!door_anim_time)
|
||||
return
|
||||
if(!door_obj) door_obj = new
|
||||
vis_contents |= door_obj
|
||||
door_obj.icon = icon
|
||||
door_obj.icon_state = "[icon_door || icon_state]_door"
|
||||
is_animating_door = TRUE
|
||||
var/num_steps = door_anim_time / world.tick_lag
|
||||
for(var/I in 0 to num_steps)
|
||||
var/angle = door_anim_angle * (closing ? 1 - (I/num_steps) : (I/num_steps))
|
||||
var/matrix/M = get_door_transform(angle)
|
||||
var/door_state = angle >= 90 ? "[icon_door_override ? icon_door : icon_state]_back" : "[icon_door || icon_state]_door"
|
||||
var/door_layer = angle >= 90 ? FLOAT_LAYER : ABOVE_MOB_LAYER
|
||||
|
||||
if(I == 0)
|
||||
door_obj.transform = M
|
||||
door_obj.icon_state = door_state
|
||||
door_obj.layer = door_layer
|
||||
else if(I == 1)
|
||||
animate(door_obj, transform = M, icon_state = door_state, layer = door_layer, time = world.tick_lag, flags = ANIMATION_END_NOW)
|
||||
else
|
||||
animate(transform = M, icon_state = door_state, layer = door_layer, time = world.tick_lag)
|
||||
addtimer(CALLBACK(src,.proc/end_door_animation),door_anim_time,TIMER_UNIQUE|TIMER_OVERRIDE)
|
||||
|
||||
/obj/structure/closet/proc/end_door_animation()
|
||||
is_animating_door = FALSE
|
||||
vis_contents -= door_obj
|
||||
update_appearance()
|
||||
COMPILE_OVERLAYS(src)
|
||||
|
||||
/obj/structure/closet/proc/get_door_transform(angle)
|
||||
var/matrix/M = matrix()
|
||||
M.Translate(-door_hinge, 0)
|
||||
M.Multiply(matrix(cos(angle), 0, 0, -sin(angle) * door_anim_squish, 1, 0))
|
||||
M.Translate(door_hinge, 0)
|
||||
return M
|
||||
|
||||
//////////////////////////ANIM OVERRIDES
|
||||
/obj/structure/closet/body_bag
|
||||
door_anim_time = 0
|
||||
|
||||
/obj/structure/closet/cardboard
|
||||
door_anim_time = 0
|
||||
|
||||
/obj/structure/closet/cabinet
|
||||
door_anim_time = 0
|
||||
|
||||
/obj/structure/closet/acloset
|
||||
door_anim_time = 0
|
||||
|
||||
/obj/structure/closet/secure_closet/bar
|
||||
door_anim_time = 0
|
||||
|
||||
/obj/structure/closet/secure_closet/freezer
|
||||
door_anim_squish = 0.22
|
||||
door_anim_angle = 123
|
||||
door_anim_time = 2.50
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/cabinet
|
||||
door_anim_time = 0
|
||||
|
||||
/obj/structure/closet/secure_closet/detective
|
||||
door_anim_time = 0
|
||||
|
||||
/obj/structure/closet/crate
|
||||
door_anim_time = 0
|
||||
@@ -0,0 +1,6 @@
|
||||
/obj/effect/overlay/closet_door
|
||||
anchored = TRUE
|
||||
plane = FLOAT_PLANE
|
||||
layer = FLOAT_LAYER
|
||||
vis_flags = VIS_INHERIT_ID
|
||||
appearance_flags = KEEP_TOGETHER | LONG_GLIDE | PIXEL_SCALE
|
||||
+1
-1
@@ -95,7 +95,7 @@
|
||||
var/obj/structure/closet/other = get_other_locker()
|
||||
if(!other)
|
||||
other = src
|
||||
var/mutable_appearance/masked_icon = mutable_appearance('modular_skyrat/modules/bluespace_locker/icons/obj/closet.dmi', "bluespace_locker_mask")
|
||||
var/mutable_appearance/masked_icon = mutable_appearance('modular_skyrat/master_files/icons/obj/closet.dmi', "bluespace_locker_mask")
|
||||
masked_icon.appearance_flags = KEEP_TOGETHER
|
||||
var/mutable_appearance/masking_icon = mutable_appearance(other.icon, other.icon_state)
|
||||
masking_icon.blend_mode = BLEND_MULTIPLY
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 476 B |
+2
-1
@@ -1,7 +1,8 @@
|
||||
/obj/structure/closet/secure_closet/brigoff
|
||||
icon = 'modular_skyrat/modules/brigoff/icons/lockers/closet.dmi'
|
||||
icon = 'modular_skyrat/master_files/icons/obj/closet.dmi'
|
||||
name = "corrections officer riot gear"
|
||||
icon_state = "riot"
|
||||
door_anim_time = 0 //CONVERT THESE DOORS YOU LAZY ASSHATS
|
||||
|
||||
/obj/structure/closet/secure_closet/brigoff/PopulateContents()
|
||||
..()
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 1.8 KiB |
@@ -127,7 +127,8 @@
|
||||
name = "\proper nanotrasen representative's locker"
|
||||
req_access = list(ACCESS_CAPTAIN, ACCESS_CENT_GENERAL)
|
||||
icon_state = "cc"
|
||||
icon = 'modular_skyrat/modules/aesthetics/closet/closet.dmi'
|
||||
icon = 'modular_skyrat/master_files/icons/obj/closet.dmi'
|
||||
door_anim_time = 0 //CONVERT THESE DOORS YOU LAZY ASSHATS
|
||||
|
||||
/obj/structure/closet/secure_closet/nanotrasen_representative/station/PopulateContents()
|
||||
..()
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
/obj/structure/closet/secure_closet/hos
|
||||
icon = 'modular_skyrat/modules/sec_haul/icons/lockers/closet.dmi'
|
||||
|
||||
/obj/structure/closet/secure_closet/warden
|
||||
icon = 'modular_skyrat/modules/sec_haul/icons/lockers/closet.dmi'
|
||||
|
||||
/obj/structure/closet/secure_closet/security
|
||||
icon = 'modular_skyrat/modules/sec_haul/icons/lockers/closet.dmi'
|
||||
|
||||
/obj/structure/closet/secure_closet/armory1
|
||||
icon = 'modular_skyrat/modules/sec_haul/icons/lockers/closet.dmi'
|
||||
|
||||
/obj/structure/closet/secure_closet/armory2
|
||||
icon = 'modular_skyrat/modules/sec_haul/icons/lockers/closet.dmi'
|
||||
|
||||
/obj/structure/closet/secure_closet/armory3
|
||||
icon = 'modular_skyrat/modules/sec_haul/icons/lockers/closet.dmi'
|
||||
@@ -74,8 +74,7 @@
|
||||
/obj/structure/closet/secure_closet/security_medic
|
||||
name = "security medics's locker"
|
||||
req_access = list(ACCESS_SECURITY)
|
||||
icon = 'modular_skyrat/modules/sec_haul/icons/lockers/closet.dmi'
|
||||
icon_state = "secmed"
|
||||
icon_state = "brig_phys"
|
||||
|
||||
/obj/structure/closet/secure_closet/security_medic/PopulateContents()
|
||||
..()
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 3.7 KiB |
+2
-1
@@ -3860,6 +3860,8 @@
|
||||
#include "modular_skyrat\modules\ambitions\code\mind.dm"
|
||||
#include "modular_skyrat\modules\ammo_workbench\code\ammo_workbench.dm"
|
||||
#include "modular_skyrat\modules\ammo_workbench\code\design_disks.dm"
|
||||
#include "modular_skyrat\modules\animated_doors\code\closets.dm"
|
||||
#include "modular_skyrat\modules\animated_doors\code\overlays.dm"
|
||||
#include "modular_skyrat\modules\antagonists\code\gamemodes.dm"
|
||||
#include "modular_skyrat\modules\antagonists\code\gang_things.dm"
|
||||
#include "modular_skyrat\modules\antagonists\eldritch_cult\knowledge\ash_lore_skyrat.dm"
|
||||
@@ -4407,7 +4409,6 @@
|
||||
#include "modular_skyrat\modules\sec_haul\code\peacekeeper\peacekeeper_baton.dm"
|
||||
#include "modular_skyrat\modules\sec_haul\code\peacekeeper\peacekeeper_clothing.dm"
|
||||
#include "modular_skyrat\modules\sec_haul\code\peacekeeper\peacekeeper_hammer.dm"
|
||||
#include "modular_skyrat\modules\sec_haul\code\peacekeeper\peacekeeper_lockers.dm"
|
||||
#include "modular_skyrat\modules\sec_haul\code\security_medic\secmed_clothes.dm"
|
||||
#include "modular_skyrat\modules\sec_haul\code\security_medic\security_medic.dm"
|
||||
#include "modular_skyrat\modules\sec_haul\code\security_sergeant\secseg_clothes.dm"
|
||||
|
||||
Reference in New Issue
Block a user