windup fixes, derringer balancing?

This commit is contained in:
qweq12yt
2021-03-16 16:38:40 -03:00
parent a16f5d04b7
commit 3b5ebd1149
3 changed files with 34 additions and 21 deletions
@@ -23,5 +23,6 @@
// just to keep consistent with the derringer being on revolver.dm
/obj/item/ammo_box/magazine/internal/cylinder/derringer
caliber = list("38")
caliber = "357"
ammo_type = /obj/item/ammo_casing/a357
max_ammo = 2
@@ -495,24 +495,33 @@
charge_bar.pixel_x = i
. += charge_bar
// the derringer is neither a pistol or revolver, but for code sake, it fits here
//////////////////////
// Derringer pistol //
//////////////////////
// the derringer is neither a pistol or revolver, but for code sanity it will be here
// two point blank shots will take them to nearly 0% if no armor, naturally suppresed, small size and doesn't show in mob sprite
/obj/item/gun/ballistic/revolver/derringer
name = "derringer pistol"
desc = "A favorite among progressive dentists and vengeful action heroes. Hides neatly inside your sleeves! Uses .38-special rounds."
desc = "A favorite among dentists and vengeful heroes. Hides neatly inside your sleeves! Uses .357 rounds."
fire_sound = "sound/weapons/derringer.ogg"
icon_state = "pistol" // placeholder
item_state = null // not visible in sprite, we want it jango style (not having it show on mob examine would be good as well)
suppressed = TRUE // this gotta be good for SOMETHING
// not visible in sprite, we want it to be like in jango
// not having it show on examining would be good and 'if (wearing clothes)' would desirable
item_state = null
mag_type = /obj/item/ammo_box/magazine/internal/cylinder/derringer
suppressed = TRUE
w_class = WEIGHT_CLASS_SMALL
projectile_damage_multiplier =
// you can't spin a derringer!
/obj/item/gun/ballistic/revolver/derringer/do_spin()
return
// the little reference
/obj/item/gun/ballistic/revolver/derringer/shoot_live_shot(mob/living/user, pointblank, mob/pbtarget, message, stam_cost)
// how to make it impossible to use speedloaders?
/*/obj/item/gun/ballistic/revolver/derringer/attackby(obj/item/A, mob/user, params)
. = ..()
if(pointblank)
user.visible_message("<span class='notice'>[user] extends their hand in [pbtarget]'s direction.</span>", null, null, DEFAULT_MESSAGE_RANGE)
*/
+14 -11
View File
@@ -250,7 +250,7 @@
// wind-up laser for your hilarious antics
/obj/item/gun/energy/laser/windupgun
name = "wind-up rifle"
cell_type = /obj/item/stock_parts/cell/empty
cell_type = /obj/item/stock_parts/cell/crap/empty // can't be so good right?
ammo_type = list(/obj/item/ammo_casing/energy/laser)
desc = "A rifle using not so state-of-the-art mechanism of self charging. Music Box included"
icon_state = "laser"
@@ -274,14 +274,17 @@
music_part = "sound/weapons/wind_up_3.ogg"
/obj/item/gun/energy/laser/windupgun/attack_self(mob/living/user)
to_chat(user, "You begin turning the key...")
set_music_state()
playsound(user, music_part, 15, FALSE, ignore_walls = FALSE)
var/done = FALSE
if(do_after(user, 40, target = user))
cell.give(cell.maxcharge)
done = TRUE
if(done)
to_chat(user, "You fully wind up the laser gun!")
if(!(cell.charge > 0))
to_chat(user, "<span class='notice'>You begin turning the key...</span>")
set_music_state()
playsound(user, music_part, 20, FALSE, ignore_walls = FALSE)
var/done = FALSE
if(do_after(user, 35, target = user))
cell.give(cell.maxcharge)
done = TRUE
if(done)
to_chat(user, "<span class='notice'>You fully wind up the laser gun!</span>")
else
to_chat(user, "<span class='notice'>You need to stay still while winding it!</span>")
else
to_chat(user, "You need to stay still while winding it!")
to_chat(user, "<span class='notice'>You must fully unload it first!</span>")