-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Shazbot's Armory [WIP] #7540
Shazbot's Armory [WIP] #7540
Changes from 4 commits
ed57b3a
f18d9e4
a1b35ce
b5b7b6a
44d737e
5608bcc
43faa3c
67bcb3d
22ab869
6b19503
9ea6541
41e12fb
76ed1ec
7bd11c8
62bae77
44a295a
21aea61
e542760
065aa97
6ff619f
4c5f624
9cc5e9d
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -110,6 +110,13 @@ | |
ammo_type = /obj/item/ammo_casing/shotgun/tranquilizer | ||
materials = list(MAT_METAL=1750) | ||
|
||
/obj/item/ammo_box/tranqdarts | ||
name = "ammo box (20G tranquilizer darts)" | ||
icon_state = "tranqbox" | ||
origin_tech = "combat=2" | ||
ammo_type = /obj/item/ammo_casing/shotgun/dart/speacial/tranquilizer | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. and again here |
||
max_ammo = 20 | ||
|
||
|
||
//FOAM DARTS | ||
/obj/item/ammo_box/foambox | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -119,6 +119,17 @@ | |
ammo_type = /obj/item/ammo_casing/shotgun/rubbershot | ||
max_ammo = 6 | ||
|
||
/obj/item/ammo_box/magazine/internal/dart | ||
name = "single shot dart gun internal magazine" | ||
ammo_type = /obj/item/ammo_casing/shotgun/dart/speacial/tranquilizer | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. doot doot There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. doot |
||
caliber = "dart" | ||
max_ammo = 1 | ||
|
||
/obj/item/ammo_box/magazine/internal/shot/dominator | ||
name = "quad shotgun internal magazine" | ||
ammo_type = /obj/item/ammo_casing/shotgun/buckshot | ||
max_ammo = 4 | ||
|
||
/obj/item/ammo_box/magazine/internal/grenadelauncher | ||
name = "grenade launcher internal magazine" | ||
ammo_type = /obj/item/ammo_casing/a40mm | ||
|
@@ -202,6 +213,19 @@ | |
/obj/item/ammo_box/magazine/m10mm/empty/update_icon() | ||
icon_state = "[initial(icon_state)]-[stored_ammo.len ? "8" : "0"]" | ||
|
||
/obj/item/ammo_box/magazine/m10mmL | ||
name = "large pistol magazine (10mm)" | ||
desc = "A gun magazine." | ||
icon_state = "9x19L" | ||
origin_tech = "combat=2" | ||
ammo_type = /obj/item/ammo_casing/c10mm | ||
caliber = "10mm" | ||
max_ammo = 18 | ||
|
||
/obj/item/ammo_box/magazine/m10mmL/update_icon() | ||
..() | ||
icon_state = "[initial(icon_state)]-[Ceiling(ammo_count(0)/18)]" | ||
|
||
/obj/item/ammo_box/magazine/m45 | ||
name = "handgun magazine (.45)" | ||
icon_state = "45" | ||
|
@@ -310,6 +334,18 @@ | |
..() | ||
icon_state = "9x19p-[ammo_count() ? "8" : "0"]" | ||
|
||
/obj/item/ammo_box/magazine/pistolm9mm/short | ||
name = "shortend pistol magazine (9mm)" | ||
max_ammo = 6 | ||
|
||
/obj/item/ammo_box/magazine/pistolm9mm/large | ||
name = "long pistol magazine (9mm)" | ||
max_ammo = 30 | ||
|
||
/obj/item/ammo_box/magazine/pistolm9mm/large/update_icon() | ||
..() | ||
icon_state = "9x19L-[ammo_count() ? "1" : "0"]" | ||
|
||
/obj/item/ammo_box/magazine/smgm45 | ||
name = "SMG magazine (.45)" | ||
icon_state = "c20r45" | ||
|
@@ -355,6 +391,22 @@ | |
max_ammo = 30 | ||
multiple_sprites = 2 | ||
|
||
/obj/item/ammo_box/magazine/stan | ||
name = "assault rifle magazine (5.56mm)" | ||
icon_state = "stan" | ||
origin_tech = "combat=5" | ||
ammo_type = /obj/item/ammo_casing/a556 | ||
caliber = "a556" | ||
max_ammo = 30 | ||
|
||
/obj/item/ammo_box/magazine/stan/update_icon() | ||
icon_state = "[initial(icon_state)]-[Ceiling(ammo_count(0)/max_ammo)]" | ||
|
||
/obj/item/ammo_box/magazine/stan/short | ||
name = "short assault rifle magazine (5.56mm)" | ||
icon_state = "stan-s" | ||
max_ammo = 10 | ||
|
||
/obj/item/ammo_box/magazine/m12g | ||
name = "shotgun magazine (12g slugs)" | ||
desc = "A drum magazine." | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -102,19 +102,19 @@ | |
icon_state = "c20r[magazine ? "-[Ceiling(get_ammo(0)/4)*4]" : ""][chambered ? "" : "-e"][suppressed ? "-suppressed" : ""]" | ||
|
||
/obj/item/weapon/gun/projectile/automatic/wt550 | ||
name = "security auto rifle" | ||
desc = "An outdated personal defense weapon utilized by law enforcement. The WT-550 Automatic Rifle fires 4.6x30mm rounds." | ||
name = "security assault pistol" | ||
desc = "An outdated personal defense weapon utilized by law enforcement reintroduced into service as an assault pistol. The WT-550 Automatic Rifle fires 4.6x30mm rounds." | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
icon_state = "wt550" | ||
item_state = "arg" | ||
mag_type = /obj/item/ammo_box/magazine/wt550m9 | ||
fire_delay = 2 | ||
can_suppress = 0 | ||
can_suppress = 1 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I have tested this, it works with the 1, and I have yet to see any other gun use TRUE. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If it's a boolean variable, you may as well use There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @shazbot194 if its a binary yes/no, we should be using TRUE/FALSE afaik in accordance with Paradise coding standards - but I could be entirely mistaken there. Pre-existing code isn't all up to standard. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ok, I will change it, it was just confusing to me as to why TRUE/FALSE isn't in use in other places. |
||
burst_size = 1 | ||
actions_types = list() | ||
|
||
/obj/item/weapon/gun/projectile/automatic/wt550/update_icon() | ||
..() | ||
icon_state = "wt550[magazine ? "-[Ceiling(get_ammo(0)/4)*4]" : ""]" | ||
icon_state = "wt550[magazine ? "-[Ceiling(get_ammo(0)/4)*4]" : ""][suppressed ? "-s" : ""]" | ||
|
||
/obj/item/weapon/gun/projectile/automatic/mini_uzi | ||
name = "\improper 'Type U3' Uzi" | ||
|
@@ -265,3 +265,38 @@ | |
/obj/item/weapon/gun/projectile/automatic/lasercarbine/update_icon() | ||
..() | ||
icon_state = "lasercarbine[magazine ? "-[Ceiling(get_ammo(0)/5)*5]" : ""]" | ||
|
||
/obj/item/weapon/gun/projectile/automatic/m4 | ||
name = "tran sol combat rifle" | ||
desc = "An ancient yet robust assault rile used by Tran-Solar Federation's ground fighting forces." | ||
icon_state = "m-4" | ||
item_state = "arg" | ||
slot_flags = 0 | ||
w_class = WEIGHT_CLASS_HUGE | ||
origin_tech = "combat=6;engineering=4" | ||
mag_type = /obj/item/ammo_box/magazine/stan | ||
fire_sound = 'sound/weapons/Gunshot_smg.ogg' | ||
can_suppress = 1 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
burst_size = 3 | ||
fire_delay = 1 | ||
|
||
/obj/item/weapon/gun/projectile/automatic/m4/update_icon() | ||
if(magazine) | ||
if(magazine.max_ammo>29) | ||
icon_state = "[initial(icon_state)]-l[suppressed ? "-su" : ""]" | ||
else | ||
icon_state = "[initial(icon_state)]-s[suppressed ? "-su" : ""]" | ||
else | ||
icon_state = "[initial(icon_state)]-e[suppressed ? "-su" : ""]" | ||
|
||
/obj/item/weapon/gun/projectile/automatic/m4/sp1 | ||
name = "sporting rifle" | ||
desc = "A sporting version of the assault rile used by Tran-Solar Federation's ground fighting forces." | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. How did I miss that one. |
||
icon_state = "SP-1" | ||
burst_size = 1 | ||
actions_types = list() | ||
|
||
|
||
/obj/item/weapon/gun/projectile/automatic/m4/sp1/New() | ||
magazine = new /obj/item/ammo_box/magazine/stan/short(src) | ||
..() |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -406,3 +406,62 @@ | |
|
||
if(desc) | ||
to_chat(user, desc) | ||
|
||
// Dominator | ||
|
||
/obj/item/weapon/gun/projectile/revolver/doublebarrel/dominator | ||
name = "Dominator" | ||
desc = "Death comes for you." | ||
icon_state = "dominator" | ||
item_state = "shotgun" | ||
w_class = WEIGHT_CLASS_NORMAL | ||
force = 10 | ||
mag_type = /obj/item/ammo_box/magazine/internal/shot/dominator | ||
unique_rename = 0 | ||
unique_reskin = 0 | ||
can_unsuppress = 0 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
suppressed = 1 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
fire_sound = 'sound/weapons/Gunshot_silenced.ogg' | ||
|
||
/obj/item/weapon/gun/projectile/revolver/doublebarrel/Dominator/sawoff() | ||
return | ||
|
||
///////////////// | ||
// Dart Pistol // | ||
///////////////// | ||
|
||
|
||
/obj/item/weapon/gun/projectile/revolver/tranqpistol | ||
name = "Tranquilizer Pistol" | ||
desc = "A new tranqualiser pistol meant to help subdue wild prisoners.." | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Tranqualiser -> Tranquilizer Also finish with 3 or 4 full stops, never 2. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Also There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. said both of these already, nerd ;) There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. D;D;D; |
||
icon_state = "tranq-pistol" | ||
force = 10 | ||
mag_type = /obj/item/ammo_box/magazine/internal/dart | ||
|
||
/obj/item/weapon/gun/projectile/revolver/tranqpistol/update_icon() | ||
if(get_ammo() > 0) | ||
icon_state = "[initial(icon_state)][chambered.BB ? "-l" : ""][chambered ? "-c" : ""]" | ||
else | ||
icon_state = "[initial(icon_state)]" | ||
|
||
|
||
/obj/item/weapon/gun/projectile/revolver/tranqpistol/attackby(obj/item/A, mob/user, params) | ||
..() | ||
if(istype(A, /obj/item/ammo_box) || istype(A, /obj/item/ammo_casing)) | ||
chamber_round() | ||
update_icon() | ||
|
||
/obj/item/weapon/gun/projectile/revolver/tranqpistol/attack_self(mob/living/user) | ||
var/num_unloaded = 0 | ||
while(get_ammo() > 0) | ||
var/obj/item/ammo_casing/CB | ||
CB = magazine.get_round(0) | ||
chambered = null | ||
update_icon() | ||
CB.loc = get_turf(loc) | ||
CB.update_icon() | ||
num_unloaded++ | ||
if(num_unloaded) | ||
to_chat(user, "<span class = 'notice'>You open the [src] and unload the shell.</span>") | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Nah, as in having There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The the on |
||
else | ||
to_chat(user, "<span class='notice'>[src] is empty.</span>") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm willing to bet this looks like a box, but behaves like a speedloader. This is inconsistent with the way things work currently on Paradise.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Currently, all ammo boxes except shotgun shells, .38, .357, 7.62 stripper clip, and capslook like boxed and act like speed loaders. This would include 10mm, 9mm, .45 caliber, .45 caliber rubber, 40mm, 7.62mm boxes, foam force darts, and riot foam darts.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm ok with loose pistol/rifle rounds in boxes acting like speedloaders -> mags. Only shotgun shells and bigger should need to be loaded in manually due to their size and encumbrance.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If it would help, since these aren't shotgun shells but rather their own thing, I can change them from being a 20g style shell and make them into a normal copper shell casing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, I have changed them to 9x39mm rifle rounds and updated all the icons and names to match.