Skip to content

Commit

Permalink
Merge pull request tgstation#7509 from paprka/gunstuff
Browse files Browse the repository at this point in the history
Improves pulse guns, ERT, and centcomm areas
  • Loading branch information
Cheridan committed Feb 3, 2015
2 parents 500a236 + 6de33d4 commit 784766e
Show file tree
Hide file tree
Showing 24 changed files with 394 additions and 265 deletions.
236 changes: 106 additions & 130 deletions _maps/map_files/generic/z2.dmm

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion code/game/gamemodes/wizard/rightandwrong.dm
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
if("gyrojet")
new /obj/item/weapon/gun/projectile/automatic/gyropistol(get_turf(H))
if("pulse")
new /obj/item/weapon/gun/energy/pulse_rifle(get_turf(H))
new /obj/item/weapon/gun/energy/pulse(get_turf(H))
if("suppressed")
new /obj/item/weapon/gun/projectile/automatic/pistol(get_turf(H))
new /obj/item/weapon/suppressor(get_turf(H))
Expand Down
11 changes: 11 additions & 0 deletions code/game/jobs/access.dm
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,17 @@
/proc/get_all_centcom_access()
return list(access_cent_general, access_cent_thunder, access_cent_specops, access_cent_medical, access_cent_living, access_cent_storage, access_cent_teleporter, access_cent_captain)

/proc/get_ert_access(var/class)
switch(class)
if("commander")
return get_all_centcom_access()
if("sec")
return list(access_cent_general, access_cent_specops)
if("eng")
return list(access_cent_general, access_cent_storage)
if("med")
return list(access_cent_general, access_cent_medical)

/proc/get_all_syndicate_access()
return list(access_syndicate, access_syndicate)

Expand Down
4 changes: 0 additions & 4 deletions code/game/machinery/portable_turret.dm
Original file line number Diff line number Diff line change
Expand Up @@ -123,10 +123,6 @@
eprojectile = /obj/item/projectile/beam
eshot_sound = 'sound/weapons/Laser.ogg'

if(/obj/item/weapon/gun/energy/stunrevolver)
eprojectile = /obj/item/projectile/beam
eshot_sound = 'sound/weapons/Laser.ogg'

if(/obj/item/weapon/gun/energy/gun)
eprojectile = /obj/item/projectile/beam //If it has, going to kill mode
eshot_sound = 'sound/weapons/Laser.ogg'
Expand Down
4 changes: 2 additions & 2 deletions code/game/machinery/recharger.dm
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@
if(istype(charging, /obj/item/weapon/gun/energy))
var/obj/item/weapon/gun/energy/E = charging
if(E.power_supply.charge < E.power_supply.maxcharge)
E.power_supply.give(100)
E.power_supply.give(E.power_supply.chargerate)
icon_state = "recharger1"
use_power(250)
else
Expand All @@ -80,7 +80,7 @@
if(istype(charging, /obj/item/weapon/melee/baton))
var/obj/item/weapon/melee/baton/B = charging
if(B.bcell)
if(B.bcell.give(1500)) //Because otherwise it takes two minutes to fully charge due to 15k cells. - Neerti
if(B.bcell.give(B.bcell.chargerate))
icon_state = "recharger1"
use_power(200)
else
Expand Down
18 changes: 16 additions & 2 deletions code/game/objects/items/weapons/RCD.dm
Original file line number Diff line number Diff line change
Expand Up @@ -103,12 +103,13 @@ RCD
/obj/item/weapon/rcd/attackby(obj/item/weapon/W, mob/user)
..()
if(istype(W, /obj/item/weapon/rcd_ammo))
if((matter + 20) > max_matter)
var/obj/item/weapon/rcd_ammo/R = W
if((matter + R.ammoamt) > max_matter)
user << "<span class='notice'>The RCD cant hold any more matter-units.</span>"
return
user.drop_item()
qdel(W)
matter += 20
matter += R.ammoamt
playsound(src.loc, 'sound/machines/click.ogg', 50, 1)
user << "<span class='notice'>The RCD now holds [matter]/[max_matter] matter-units.</span>"
desc = "A RCD. It currently holds [matter]/[max_matter] matter-units."
Expand Down Expand Up @@ -265,6 +266,15 @@ RCD
desc = "A device used to rapidly build walls/floor."
canRwall = 1

/obj/item/weapon/rcd/loaded
matter = 100

/obj/item/weapon/rcd/combat
name = "combat RCD"
max_matter = 500
matter = 500
canRwall = 1

/obj/item/weapon/rcd_ammo
name = "compressed matter cartridge"
desc = "Highly compressed matter for the RCD."
Expand All @@ -277,3 +287,7 @@ RCD
origin_tech = "materials=2"
m_amt = 16000
g_amt = 8000
var/ammoamt = 20

/obj/item/weapon/rcd_ammo/large
ammoamt = 100
9 changes: 4 additions & 5 deletions code/game/objects/items/weapons/cards_ids.dm
Original file line number Diff line number Diff line change
Expand Up @@ -196,23 +196,22 @@ update_label("John Doe", "Clowny")
icon_state = "centcom"
registered_name = "Emergency Response Team Commander"
assignment = "Emergency Response Team Commander"
New() access = get_all_accesses()
New() access = list(access_cent_captain, access_cent_specops, access_cent_storage, access_cent_medical)
New() access = get_all_accesses()+get_ert_access("commander")

/obj/item/weapon/card/id/ert/Security
registered_name = "Security Response Officer"
assignment = "Security Response Officer"
New() access = list(access_cent_specops)
New() access = get_all_accesses()+get_ert_access("sec")

/obj/item/weapon/card/id/ert/Engineer
registered_name = "Engineer Response Officer"
assignment = "Engineer Response Officer"
New() access = list(access_cent_storage)
New() access = get_all_accesses()+get_ert_access("eng")

/obj/item/weapon/card/id/ert/Medical
registered_name = "Medical Response Officer"
assignment = "Medical Response Officer"
New() access = list(access_cent_medical)
New() access = get_all_accesses()+get_ert_access("med")

/obj/item/weapon/card/id/prisoner
name = "prisoner ID card"
Expand Down
28 changes: 23 additions & 5 deletions code/game/objects/items/weapons/power_cells.dm
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
g_amt = 50
var/rigged = 0 // true if rigged to explode
var/minor_fault = 0 //If not 100% reliable, it will build up faults.
var/chargerate = 100 //how much power is given every tick in a recharger

/obj/item/weapon/stock_parts/cell/suicide_act(mob/user)
user.visible_message("<span class='suicide'>[user] is licking the electrodes of the [src.name]! It looks like \he's trying to commit suicide.</span>")
Expand Down Expand Up @@ -44,13 +45,28 @@
..()
charge = 0

/obj/item/weapon/stock_parts/cell/pulse //40 pulse shots
name = "pulse rifle power cell"
maxcharge = 8000
rating = 3
chargerate = 1500

/obj/item/weapon/stock_parts/cell/pulse/carbine //25 pulse shots
name = "pulse carbine power cell"
maxcharge = 5000

/obj/item/weapon/stock_parts/cell/pulse/pistol //10 pulse shots
name = "pulse pistol power cell"
maxcharge = 2000

/obj/item/weapon/stock_parts/cell/high
name = "high-capacity power cell"
origin_tech = "powerstorage=2"
icon_state = "hcell"
maxcharge = 10000
g_amt = 60
rating = 3
chargerate = 1500

/obj/item/weapon/stock_parts/cell/high/empty/New()
..()
Expand All @@ -63,6 +79,7 @@
maxcharge = 20000
g_amt = 70
rating = 4
chargerate = 2000

/obj/item/weapon/stock_parts/cell/super/empty/New()
..()
Expand All @@ -75,6 +92,7 @@
maxcharge = 30000
g_amt = 80
rating = 5
chargerate = 3000

/obj/item/weapon/stock_parts/cell/hyper/empty/New()
..()
Expand All @@ -87,6 +105,7 @@
maxcharge = 30000
g_amt = 80
rating = 6
chargerate = 30000
use()
return 1

Expand All @@ -103,16 +122,15 @@
minor_fault = 1
rating = 1

/obj/item/weapon/stock_parts/cell/slime
/obj/item/weapon/stock_parts/cell/high/slime
name = "charged slime core"
desc = "A yellow slime core infused with plasma, it crackles with power."
origin_tech = "powerstorage=2;biotech=4"
icon = 'icons/mob/slimes.dmi' //'icons/obj/harvest.dmi'
icon_state = "yellow slime extract" //"potato_battery"
maxcharge = 10000
icon = 'icons/mob/slimes.dmi'
icon_state = "yellow slime extract"
m_amt = 0
g_amt = 0
rating = 3


/obj/item/weapon/stock_parts/cell/emproof
name = "\improper EMP-proof cell"
Expand Down
1 change: 1 addition & 0 deletions code/game/objects/items/weapons/storage/belt.dm
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
new /obj/item/weapon/weldingtool(src)
new /obj/item/weapon/crowbar(src)
new /obj/item/weapon/wirecutters(src)
new /obj/item/device/multitool(src)
new /obj/item/stack/cable_coil(src,30,pick("red","yellow","orange"))


Expand Down
94 changes: 94 additions & 0 deletions code/game/objects/structures/crates_lockers/closets/secure/misc.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
/obj/structure/closet/secure_closet/ertCom
name = "commander's closet"
desc = "Emergency Response Team equipment locker."
req_access = list(access_cent_captain)
icon_state = "capsecure1"
icon_closed = "capsecure"
icon_locked = "capsecure1"
icon_opened = "capsecureopen"
icon_broken = "capsecurebroken"
icon_off = "capsecureoff"

/obj/structure/closet/secure_closet/ertCom/New()
..()
new /obj/item/weapon/storage/firstaid/regular(src)
new /obj/item/weapon/storage/box/handcuffs(src)
new /obj/item/device/aicard(src)
new /obj/item/weapon/melee/baton/loaded(src)
new /obj/item/device/flash/handheld(src)
if(prob(50))
new /obj/item/ammo_box/magazine/m50(src)
new /obj/item/ammo_box/magazine/m50(src)
new /obj/item/weapon/gun/projectile/automatic/pistol/deagle(src)
else
new /obj/item/ammo_box/a357(src)
new /obj/item/ammo_box/a357(src)
new /obj/item/weapon/gun/projectile/revolver/mateba(src)
return

/obj/structure/closet/secure_closet/ertSec
name = "security closet"
desc = "Emergency Response Team equipment locker."
req_access = list(access_cent_specops)
icon_state = "hossecure1"
icon_closed = "hossecure"
icon_locked = "hossecure1"
icon_opened = "hossecureopen"
icon_broken = "hossecurebroken"
icon_off = "hossecureoff"

/obj/structure/closet/secure_closet/ertSec/New()
..()
new /obj/item/weapon/storage/box/flashbangs(src)
new /obj/item/weapon/storage/box/teargas(src)
new /obj/item/weapon/storage/box/flashes(src)
new /obj/item/weapon/storage/box/handcuffs(src)
new /obj/item/weapon/melee/baton/loaded(src)
new /obj/item/weapon/shield/riot/tele(src)
return

/obj/structure/closet/secure_closet/ertMed
name = "medical closet"
desc = "Emergency Response Team equipment locker."
req_access = list(access_cent_medical)
icon_state = "cmosecure1"
icon_closed = "cmosecure"
icon_locked = "cmosecure1"
icon_opened = "cmosecureopen"
icon_broken = "cmosecurebroken"
icon_off = "cmosecureoff"

/obj/structure/closet/secure_closet/ertMed/New()
..()
new /obj/item/weapon/storage/firstaid/o2(src)
new /obj/item/weapon/storage/firstaid/toxin(src)
new /obj/item/weapon/storage/firstaid/fire(src)
new /obj/item/weapon/storage/firstaid/brute(src)
new /obj/item/weapon/storage/firstaid/regular(src)
new /obj/item/weapon/melee/baton/loaded(src)
new /obj/machinery/bot/medbot(src)
return

/obj/structure/closet/secure_closet/ertEngi
name = "engineer closet"
desc = "Emergency Response Team equipment locker."
req_access = list(access_cent_storage)
icon_state = "securece1"
icon_closed = "securece"
icon_locked = "securece1"
icon_opened = "secureceopen"
icon_broken = "securecebroken"
icon_off = "secureceoff"

/obj/structure/closet/secure_closet/ertEngi/New()
..()
new /obj/item/stack/sheet/plasteel(src, 50)
new /obj/item/stack/sheet/metal(src, 50)
new /obj/item/stack/sheet/glass(src, 50)
new /obj/item/clothing/shoes/magboots(src)
new /obj/item/weapon/storage/box/metalfoam(src)
new /obj/item/weapon/melee/baton/loaded(src)
new /obj/item/weapon/rcd_ammo/large(src)
new /obj/item/weapon/rcd_ammo/large(src)
new /obj/item/weapon/rcd_ammo/large(src)
return
45 changes: 1 addition & 44 deletions code/game/objects/structures/crates_lockers/closets/syndicate.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,49 +5,6 @@
icon_closed = "syndicate"
icon_opened = "syndicateopen"

/obj/structure/closet/syndicate/ertCom/New()
name = "commanders closet"
desc = "Emergency Response Team equipment locker"
icon_state = "capsecureoff"
icon_closed = "capsecureoff"
icon_opened = "capsecureopen"
// new /obj/item/weapon/card/id/ert(src)
new /obj/item/weapon/storage/backpack/captain(src)
return

/obj/structure/closet/syndicate/ertSec/New()
name = "security closet"
desc = "Emergency Response Team equipment locker"
icon_state = "secoff"
icon_closed = "secoff"
icon_opened = "secopen"
new /obj/item/weapon/gun/energy/pulse_rifle/pulse_pistol/loyalpin(src)
new /obj/item/weapon/card/id/ert/Security(src)
new /obj/item/weapon/storage/backpack/security(src)
return

/obj/structure/closet/syndicate/ertMed/New()
name = "medical closet"
desc = "Emergency Response Team equipment locker"
icon_state = "securemedoff"
icon_closed = "securemedoff"
icon_opened = "securemedopen"
new /obj/item/weapon/gun/energy/pulse_rifle/pulse_pistol/loyalpin(src)
new /obj/item/weapon/card/id/ert/Medical(src)
new /obj/item/weapon/storage/backpack/medic(src)
return

/obj/structure/closet/syndicate/ertEngi/New()
name = "engineer closet"
desc = "Emergency Response Team equipment locker"
icon_state = "secureengoff"
icon_closed = "secureengoff"
icon_opened = "secureengopen"
new /obj/item/weapon/gun/energy/pulse_rifle/pulse_pistol/loyalpin(src)
new /obj/item/weapon/card/id/ert/Engineer(src)
new /obj/item/weapon/storage/backpack/industrial(src)
return

/obj/structure/closet/syndicate/personal
desc = "It's a personal storage unit for operative gear."

Expand Down Expand Up @@ -168,4 +125,4 @@
var/obj/item/stack/R = new res(src)
R.amount = R.max_amount

return
return
2 changes: 1 addition & 1 deletion code/modules/admin/topic.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1580,7 +1580,7 @@
else if(!ispath(path, /obj) && !ispath(path, /turf) && !ispath(path, /mob))
removed_paths += dirty_path
continue
else if(ispath(path, /obj/item/weapon/gun/energy/pulse_rifle))
else if(ispath(path, /obj/item/weapon/gun/energy/pulse))
if(!check_rights(R_FUN,0))
removed_paths += dirty_path
continue
Expand Down
Loading

0 comments on commit 784766e

Please sign in to comment.