pistol.dm 4.63 KB
Newer Older
PJB3005's avatar
PJB3005 committed
1
2
3
4
5
6
/obj/item/weapon/gun/projectile/silenced
	name = "silenced pistol"
	desc = "A small, quiet,  easily concealable gun. Uses .45 rounds."
	icon_state = "silenced_pistol"
	item_state = null
	inhand_states = list("left_hand" = 'icons/mob/in-hand/left/guninhands_left.dmi', "right_hand" = 'icons/mob/in-hand/right/guninhands_right.dmi')
7
	w_class = W_CLASS_MEDIUM
PJB3005's avatar
PJB3005 committed
8
9
10
	max_shells = 10
	caliber = list(".45"  = 1)
	silenced = 1
11
	origin_tech = Tc_COMBAT + "=2;" + Tc_MATERIALS + "=2;" + Tc_SYNDICATE + "=8"
PJB3005's avatar
PJB3005 committed
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
	ammo_type = "/obj/item/ammo_casing/c45"
	mag_type = "/obj/item/ammo_storage/magazine/c45"
	load_method = 2


/obj/item/weapon/gun/projectile/deagle
	name = "desert eagle"
	desc = "A robust handgun that uses .50 AE ammo"
	icon_state = "deagle"
	item_state = null
	inhand_states = list("left_hand" = 'icons/mob/in-hand/left/guninhands_left.dmi', "right_hand" = 'icons/mob/in-hand/right/guninhands_right.dmi')
	force = 14.0
	max_shells = 7
	caliber = list(".50" = 1)
	ammo_type ="/obj/item/ammo_casing/a50"
	mag_type = "/obj/item/ammo_storage/magazine/a50"
	load_method = 2

	gun_flags = AUTOMAGDROP | EMPTYCASINGS

/obj/item/weapon/gun/projectile/deagle/gold
	desc = "A gold plated gun folded over a million times by superior martian gunsmiths. Uses .50 AE ammo."
	icon_state = "deagleg"
	item_state = "deagleg"


/obj/item/weapon/gun/projectile/deagle/camo
	desc = "A Deagle brand Deagle for operators operating operationally. Uses .50 AE ammo."
	icon_state = "deaglecamo"
	item_state = "deagleg"



/obj/item/weapon/gun/projectile/gyropistol
	name = "gyrojet pistol"
	desc = "A bulky pistol designed to fire self propelled rounds"
	icon_state = "gyropistol"
	item_state = null
	inhand_states = list("left_hand" = 'icons/mob/in-hand/left/guninhands_left.dmi', "right_hand" = 'icons/mob/in-hand/right/guninhands_right.dmi')
	max_shells = 8
	caliber = list("75" = 1)
	fire_sound = 'sound/weapons/elecfire.ogg'
54
	origin_tech = Tc_COMBAT + "=3"
PJB3005's avatar
PJB3005 committed
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
	ammo_type = "/obj/item/ammo_casing/a75"
	mag_type = "/obj/item/ammo_storage/magazine/a75"
	load_method = 2

	gun_flags = AUTOMAGDROP | EMPTYCASINGS

	update_icon()
		..()
		if(stored_magazine)
			icon_state = "gyropistolloaded"
		else
			icon_state = "gyropistol"
		return

/obj/item/weapon/gun/projectile/pistol
	name = "\improper Stechtkin pistol"
	desc = "A small, easily concealable gun. Uses 9mm rounds."
	icon_state = "pistol"
73
	w_class = W_CLASS_SMALL
PJB3005's avatar
PJB3005 committed
74
75
76
	max_shells = 8
	caliber = list("9mm" = 1)
	silenced = 0
77
	origin_tech = Tc_COMBAT + "=2;" + Tc_MATERIALS + "=2;" + Tc_SYNDICATE + "=2"
PJB3005's avatar
PJB3005 committed
78
79
80
81
82
83
84
85
86
87
88
	ammo_type = "/obj/item/ammo_casing/c9mm"
	mag_type = "/obj/item/ammo_storage/magazine/mc9mm"
	load_method = 2

	gun_flags = AUTOMAGDROP | EMPTYCASINGS | SILENCECOMP

/obj/item/weapon/gun/projectile/pistol/update_icon()
	..()
	icon_state = "[initial(icon_state)][silenced ? "-silencer" : ""][chambered ? "" : "-e"]"
	return

89
/obj/item/weapon/gun/projectile/handgun //mime fingergun
90
91
92
93
94
95
96
97
98
99
100
	name = "hand-gun"
	desc = "This is a stickup!"
	icon_state = "handgun"
	inhand_states = list("left_hand" = null, "right_hand" = null)
	ammo_type = "/obj/item/ammo_casing/invisible"
	mag_type = "/obj/item/ammo_storage/magazine/invisible"
	cant_drop = TRUE
	gun_flags = 0
	silenced = TRUE
	fire_sound = null
	load_method = MAGAZINE
101
102


103
104
105
106
107
108
109
110
/obj/item/weapon/gun/projectile/handgun/RemoveMag(var/mob/user)
	to_chat(user, "<span class = 'warning'>Try as you might, you can't seem to find a magazine on \the [src]!</span>")

/obj/item/weapon/gun/projectile/handgun/Fire(atom/target as mob|obj|turf|area, mob/living/user as mob|obj, params, reflex = 0, struggle = 0)
	if(..())
		if(silenced)
			user.emote("me",1,"pretends to fire a gun at [target]!")
		else
111
112
113
			user.say(pick("BANG!", "BOOM!", "PEW!", "KAPOW!"))

/obj/item/weapon/gun/projectile/sec
114
115
	name = "\improper NT USP"
	desc = "The NT USP is a cheap, ubiquitous sidearm, produced by a NanoTrasen subsidiary. Uses .45 rounds."
116
	icon = 'icons/obj/biggun.dmi' //for silencer compatibility
117
	icon_state = "secguncomp"
118
	ammo_type = "/obj/item/ammo_casing/c45"
119
	mag_type = "/obj/item/ammo_storage/magazine/c45"
120
121
	max_shells = 8
	caliber = list(".45"  = 1)
122
123
	origin_tech = Tc_COMBAT + "=3"
	fire_sound = 'sound/weapons/semiauto.ogg'
124
	load_method = 2
125
	gun_flags = SILENCECOMP
126
127
128

/obj/item/weapon/gun/projectile/sec/update_icon()
	..()
129
	icon_state = "secguncomp[silenced ? "-s" : ""][chambered ? "" : "-e"]"
130

131
/obj/item/weapon/gun/projectile/sec/fancy
132
133
	desc = "The NT USP is a cheap, ubiquitous sidearm, produced by a NanoTrasen subsidiary. This one has a sweet pearl finish. Uses .45 rounds."
	name = "\improper NT USP Custom"
134
	icon_state = "secgunfancy"
135

136
/obj/item/weapon/gun/projectile/sec/fancy/update_icon()
137
	..()
138
	icon_state = "secguncompfancy[silenced ? "-s" : ""][chambered ? "" : "-e"]"