Cleans up Modular_citadel
Yes I know it'll have merge conflicts later.
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
//we vlambeer now
|
||||
|
||||
/obj/proc/shake_camera(mob/M, duration, strength=1)//byond's wonky with this shit
|
||||
if(!M || !M.client || duration <= 0)
|
||||
return
|
||||
var/client/C = M.client
|
||||
if (C.prefs.screenshake==0)
|
||||
return
|
||||
var/oldx = C.pixel_x
|
||||
var/oldy = C.pixel_y
|
||||
var/clientscreenshake = (C.prefs.screenshake * 0.01)
|
||||
var/max = (strength*clientscreenshake) * world.icon_size
|
||||
var/min = -((strength*clientscreenshake) * world.icon_size)
|
||||
|
||||
for(var/i in 0 to duration-1)
|
||||
if (i == 0)
|
||||
animate(C, pixel_x=rand(min,max), pixel_y=rand(min,max), time=1)
|
||||
else
|
||||
animate(pixel_x=rand(min,max), pixel_y=rand(min,max), time=1)
|
||||
animate(pixel_x=oldx, pixel_y=oldy, time=1)
|
||||
|
||||
/obj/item/gun/energy
|
||||
recoil = 0.1
|
||||
|
||||
/obj/item/gun/energy/kinetic_accelerator
|
||||
recoil = 0.5
|
||||
|
||||
/obj/item/gun/ballistic
|
||||
recoil = 0.25
|
||||
|
||||
/obj/item/gun/ballistic/shotgun
|
||||
recoil = 1
|
||||
|
||||
/obj/item/gun/ballistic/revolver
|
||||
recoil = 0.5
|
||||
|
||||
/obj/item/gun/ballistic/revolver/doublebarrel
|
||||
recoil = 1
|
||||
|
||||
/obj/item/gun/syringe
|
||||
recoil = 0.1
|
||||
|
||||
/obj/item/pneumatic_cannon/fire_items(turf/target, mob/user)
|
||||
. = ..()
|
||||
shake_camera(user, (pressureSetting * 0.75 + 1), (pressureSetting * 0.75))
|
||||
|
||||
/obj/item/attack(mob/living/M, mob/living/user)
|
||||
. = ..()
|
||||
if(force >= 15)
|
||||
shake_camera(user, ((force - 10) * 0.01 + 1), ((force - 10) * 0.01))
|
||||
if(M.client)
|
||||
switch (M.client.prefs.damagescreenshake)
|
||||
if (1)
|
||||
shake_camera(M, ((force - 10) * 0.015 + 1), ((force - 10) * 0.015))
|
||||
if (2)
|
||||
if (!M.canmove)
|
||||
shake_camera(M, ((force - 10) * 0.015 + 1), ((force - 10) * 0.015))
|
||||
|
||||
/obj/item/attack_obj(obj/O, mob/living/user)
|
||||
. = ..()
|
||||
if(force >= 20)
|
||||
shake_camera(user, ((force - 15) * 0.01 + 1), ((force - 15) * 0.01))
|
||||
@@ -0,0 +1,57 @@
|
||||
/obj/item/melee/classic_baton
|
||||
var/last_hit = 0
|
||||
var/stun_stam_cost_coeff = 1.25
|
||||
var/hardstun_ds = 1
|
||||
var/softstun_ds = 0
|
||||
var/stam_dmg = 30
|
||||
cooldown = 20
|
||||
total_mass = 3.75
|
||||
|
||||
/obj/item/melee/classic_baton/attack(mob/living/target, mob/living/user)
|
||||
if(!on)
|
||||
return ..()
|
||||
|
||||
if(user.getStaminaLoss() >= STAMINA_SOFTCRIT)//CIT CHANGE - makes batons unusuable in stamina softcrit
|
||||
to_chat(user, "<span class='warning'>You're too exhausted for that.</span>")//CIT CHANGE - ditto
|
||||
return //CIT CHANGE - ditto
|
||||
|
||||
add_fingerprint(user)
|
||||
if((user.has_trait(TRAIT_CLUMSY)) && prob(50))
|
||||
to_chat(user, "<span class ='danger'>You club yourself over the head.</span>")
|
||||
user.Knockdown(60 * force)
|
||||
if(ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
H.apply_damage(2*force, BRUTE, BODY_ZONE_HEAD)
|
||||
else
|
||||
user.take_bodypart_damage(2*force)
|
||||
return
|
||||
if(iscyborg(target))
|
||||
..()
|
||||
return
|
||||
if(!isliving(target))
|
||||
return
|
||||
if (user.a_intent == INTENT_HARM)
|
||||
if(!..())
|
||||
return
|
||||
if(!iscyborg(target))
|
||||
return
|
||||
else
|
||||
if(last_hit + cooldown < world.time)
|
||||
if(ishuman(target))
|
||||
var/mob/living/carbon/human/H = target
|
||||
if (H.check_shields(src, 0, "[user]'s [name]", MELEE_ATTACK))
|
||||
return
|
||||
if(check_martial_counter(H, user))
|
||||
return
|
||||
playsound(get_turf(src), 'sound/effects/woodhit.ogg', 75, 1, -1)
|
||||
target.Knockdown(softstun_ds, TRUE, FALSE, hardstun_ds, stam_dmg)
|
||||
add_logs(user, target, "stunned", src)
|
||||
src.add_fingerprint(user)
|
||||
target.visible_message("<span class ='danger'>[user] has knocked down [target] with [src]!</span>", \
|
||||
"<span class ='userdanger'>[user] has knocked down [target] with [src]!</span>")
|
||||
if(!iscarbon(user))
|
||||
target.LAssailant = null
|
||||
else
|
||||
target.LAssailant = user
|
||||
last_hit = world.time
|
||||
user.adjustStaminaLossBuffered(getweight())//CIT CHANGE - makes swinging batons cost stamina
|
||||
Reference in New Issue
Block a user