This commit is contained in:
Seris02
2020-03-09 16:49:32 +08:00
1093 changed files with 386415 additions and 224664 deletions
@@ -9,18 +9,18 @@
/obj/item/ammo_casing/caseless/arrow/ashen
name = "ashen arrow"
desc = "Fire harderned wooden arrow."
icon_state = "asharrow"
desc = "An arrow made of wood, hardened by fire."
icon_state = "ashenarrow"
projectile_type = /obj/item/projectile/bullet/reusable/arrow/ashen
/obj/item/ammo_casing/caseless/arrow/bone
name = "bone arrow"
desc = "Arrow made of bone and sinew. The tip is sharp enough to pierce into a goliath plate."
desc = "An arrow made of bone and sinew. The tip is sharp enough to pierce through a goliath plate."
icon_state = "bonearrow"
projectile_type = /obj/item/projectile/bullet/reusable/arrow/bone
/obj/item/ammo_casing/caseless/arrow/bronze
name = "bronze arrow"
desc = "Bronze tipped arrow."
desc = "An arrow made of wood, tipped with bronze. The tip is dense enough to provide some armor penetration."
icon_state = "bronzearrow"
projectile_type = /obj/item/projectile/bullet/reusable/arrow/bronze
@@ -22,11 +22,9 @@
/obj/item/gun/ballistic/bow/chamber_round()
chambered = magazine.get_round(1)
/obj/item/gun/ballistic/bow/afterattack()
. = ..()
if (chambered)
chambered = null
magazine.get_round(0)
/obj/item/gun/ballistic/bow/process_chamber()
chambered = null
magazine.get_round(0)
update_icon()
/obj/item/gun/ballistic/bow/attack_self(mob/living/user)
@@ -47,7 +45,7 @@
update_icon()
/obj/item/gun/ballistic/bow/update_icon()
icon_state = "bow_[get_ammo() ? (chambered ? "firing" : "loaded") : "unloaded"]"
icon_state = "[initial(icon_state)]_[get_ammo() ? (chambered ? "firing" : "loaded") : "unloaded"]"
/obj/item/gun/ballistic/bow/can_shoot()
return chambered
@@ -363,4 +363,4 @@
user.visible_message("<span class='warning'>[user] somehow manages to shoot [user.p_them()]self in the face!</span>", "<span class='userdanger'>You somehow shoot yourself in the face! How the hell?!</span>")
user.emote("scream")
user.drop_all_held_items()
user.Knockdown(80)
user.DefaultCombatKnockdown(80)
+1 -2
View File
@@ -67,8 +67,7 @@
/obj/item/gun/energy/Destroy()
if(flags_1 & INITIALIZED_1)
QDEL_NULL(cell)
if(!(flags_1 & HOLOGRAM_1)) //holodeck stuff.
QDEL_LIST(ammo_type)
QDEL_LIST(ammo_type)
STOP_PROCESSING(SSobj, src)
return ..()
@@ -334,7 +334,7 @@
L.death() //Die, powergamers.
if(DUEL_HUGBOX_NONLETHAL)
L.adjustStaminaLoss(200, forced = TRUE) //Die, powergamers x 2
L.Knockdown(100, override_hardstun = 100) //For good measure.
L.Paralyze(100) //For good measure.
//Storage case.
/obj/item/storage/lockbox/dueling
@@ -181,3 +181,21 @@
..()
explosion(user.loc, -1, 0, 2, 3, 0, flame_range = 2)
charges--
/////////////////////////////////////
//WAND OF ARCANE MISSILE
/////////////////////////////////////
/obj/item/gun/magic/wand/arcane
name = "wand of arcane missile"
desc = "This wand fires off small bolts of concentrated magic energy, searing any victim."
ammo_type = /obj/item/ammo_casing/magic/arcane_barrage
fire_sound = 'sound/weapons/mmlbuster.ogg'
icon_state = "arcanewand"
max_charges = 20 //20, 10, 10, 7
/obj/item/gun/magic/wand/arcane/zap_self(mob/living/user)
..()
charges--
user.take_overall_damage(0,30)
to_chat(user, "<span class='warning'>You zap yourself. Why?</span>")
+3 -3
View File
@@ -124,8 +124,8 @@
if(!istype(M) || M.stat == DEAD || M.notransform || (GODMODE & M.status_flags))
return
M.notransform = 1
M.canmove = 0
M.notransform = TRUE
M.Paralyze(INFINITY)
M.icon = null
M.cut_overlays()
M.invisibility = INVISIBILITY_ABSTRACT
@@ -529,7 +529,7 @@
else
used = 1
victim.take_overall_damage(30,30)
victim.Knockdown(60)
victim.DefaultCombatKnockdown(60)
explosion(src, -1, -1, -1, -1, FALSE, FALSE, 5)
return BULLET_ACT_HIT
@@ -21,6 +21,9 @@
handedness = prob(50)
icon_state = "cursehand[handedness]"
/obj/item/projectile/curse_hand/update_icon_state()
icon_state = "[initial(icon_state)][handedness]"
/obj/item/projectile/curse_hand/fire(setAngle)
if(starting)
arm = starting.Beam(src, icon_state = "curse[handedness]", time = INFINITY, maxdistance = INFINITY, beam_type=/obj/effect/ebeam/curse_arm)
@@ -40,7 +43,8 @@
if(CHECK_BITFIELD(movement_type, UNSTOPPABLE))
playsound(src, 'sound/effects/curse3.ogg', 25, 1, -1)
var/turf/T = get_step(src, dir)
new/obj/effect/temp_visual/dir_setting/curse/hand(T, dir, handedness)
var/obj/effect/temp_visual/dir_setting/curse/hand/leftover = new(T, dir)
leftover.icon_state = icon_state
for(var/obj/effect/temp_visual/dir_setting/curse/grasp_portal/G in starting)
qdel(G)
new /obj/effect/temp_visual/dir_setting/curse/grasp_portal/fading(starting, dir)
@@ -166,7 +166,7 @@
hal_impact_effect_wall = null
/obj/item/projectile/hallucination/taser/hal_apply_effect()
hal_target.Knockdown(100)
hal_target.DefaultCombatKnockdown(100)
hal_target.stuttering += 20
if(hal_target.dna && hal_target.dna.check_mutation(HULK))
hal_target.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk")
@@ -199,7 +199,7 @@
hal_impact_effect_wall = null
/obj/item/projectile/hallucination/ebow/hal_apply_effect()
hal_target.Knockdown(100)
hal_target.DefaultCombatKnockdown(100)
hal_target.stuttering += 5
hal_target.adjustStaminaLoss(8)
@@ -10,5 +10,5 @@
nodamage = TRUE
else if(iscarbon(target))
var/mob/living/L = target
L.Knockdown(100, TRUE, FALSE, 30, 25)
L.DefaultCombatKnockdown(100, TRUE, FALSE, 30, 25)
return ..()