-
-
Notifications
You must be signed in to change notification settings - Fork 444
/
Copy pathbadges.dm
106 lines (90 loc) · 2.89 KB
/
badges.dm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
/// Badges: Like an accessory for your armor vest
/obj/item/badge
name = "badge"
desc = "A badge representing... something."
icon = 'icons/obj/clothing/badges.dmi'
icon_state = "sec1"
item_state = ""
worn_icon = 'icons/mob/clothing/badges.dmi'
w_class = WEIGHT_CLASS_TINY
/// State of worn icon
var/accessory_state = "worn_chest_gold"
/// Owner's name, which will be attached to the examine
var/owner_string
/obj/item/badge/proc/try_attach(obj/item/clothing/suit/suit_target, mob/user)
if (suit_target.attached_badge)
to_chat(user, span_warning("There's already a badge on \the [suit_target]."))
return FALSE
suit_target.attached_badge = src
forceMove(suit_target)
layer = FLOAT_LAYER
plane = FLOAT_PLANE
transform *= 0.5 //halve the size so it doesn't overpower the under
pixel_x += 8
pixel_y -= 8
suit_target.add_overlay(src)
return TRUE
/obj/item/badge/proc/detach(obj/item/clothing/suit/suit_target, mob/user)
transform *= 2
pixel_x -= 8
pixel_y += 8
layer = initial(layer)
SET_PLANE_IMPLICIT(src, initial(plane))
suit_target.cut_overlays()
suit_target.attached_badge = null
suit_target.badge_overlay = null
/obj/item/badge/examine(mob/user)
. = ..()
if(owner_string)
. += span_notice("Property of [owner_string].")
/obj/item/badge/security
name = "security badge"
desc = "A badge representing a member of security's work on the force."
/obj/item/badge/security/officer1
name = "security badge (Corporal)"
icon_state = "sec1"
accessory_state = "worn_chest_bronze"
/obj/item/badge/security/officer2
name = "security badge (Sergeant)"
icon_state = "sec2"
accessory_state = "worn_chest_silver"
/obj/item/badge/security/officer3
name = "security badge (Staff Sergeant)"
icon_state = "sec3"
accessory_state = "worn_chest_gold"
/obj/item/badge/security/warden1
name = "security badge (2nd Lieutenant)"
icon_state = "warden1"
accessory_state = "worn_chest_bronze"
/obj/item/badge/security/warden2
name = "security badge (1st Lieutenant)"
icon_state = "warden2"
accessory_state = "worn_chest_silver"
/obj/item/badge/security/warden3
name = "security badge (Brig Captain)"
icon_state = "warden3"
accessory_state = "worn_chest_gold"
/obj/item/badge/security/hos1
name = "security badge (Major)"
icon_state = "hos1"
accessory_state = "worn_chest_bronze"
/obj/item/badge/security/hos2
name = "security badge (Colonel)"
icon_state = "hos2"
accessory_state = "worn_chest_silver"
/obj/item/badge/security/hos3
name = "security badge (Commissioner)"
icon_state = "hos3"
accessory_state = "worn_chest_gold"
/obj/item/badge/security/det1
name = "security badge (Deputy)"
icon_state = "det1"
accessory_state = "worn_belt_bronze"
/obj/item/badge/security/det2
name = "security badge (Investigator)"
icon_state = "det2"
accessory_state = "worn_belt_silver"
/obj/item/badge/security/det3
name = "security badge (Chief Inspector)"
icon_state = "det3"
accessory_state = "worn_belt_gold"