floor fixes and gun memes
This commit is contained in:
@@ -79,7 +79,7 @@
|
||||
|
||||
/obj/item/gun/energy/can_shoot()
|
||||
var/obj/item/ammo_casing/energy/shot = ammo_type[select]
|
||||
return cell.charge >= shot.e_cost
|
||||
return !QDELETED(cell) ? (cell.charge >= shot.e_cost) : FALSE
|
||||
|
||||
/obj/item/gun/energy/recharge_newshot(no_cyborg_drain)
|
||||
if (!ammo_type || !cell)
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
/obj/item/gun/energy/decloner/update_icon()
|
||||
..()
|
||||
var/obj/item/ammo_casing/energy/shot = ammo_type[select]
|
||||
if(cell.charge > shot.e_cost)
|
||||
if(!QDELETED(cell) && (cell.charge > shot.e_cost))
|
||||
add_overlay("decloner_spin")
|
||||
|
||||
/obj/item/gun/energy/floragun
|
||||
@@ -153,7 +153,7 @@
|
||||
|
||||
// Tool procs, in case plasma cutter is used as welder
|
||||
/obj/item/gun/energy/plasmacutter/tool_use_check(mob/living/user, amount)
|
||||
if(cell.charge >= amount * 100)
|
||||
if(!QDELETED(cell) && (cell.charge >= amount * 100))
|
||||
return TRUE
|
||||
|
||||
to_chat(user, "<span class='warning'>You need more charge to complete this task!</span>")
|
||||
|
||||
@@ -69,7 +69,6 @@
|
||||
var/zooming_angle
|
||||
var/current_zoom_x = 0
|
||||
var/current_zoom_y = 0
|
||||
var/zoom_animating = 0
|
||||
|
||||
var/static/image/charged_overlay = image(icon = 'icons/obj/guns/energy.dmi', icon_state = "esniper_charged")
|
||||
var/static/image/drained_overlay = image(icon = 'icons/obj/guns/energy.dmi', icon_state = "esniper_empty")
|
||||
@@ -112,18 +111,6 @@
|
||||
to_chat(owner, "<span class='boldnotice'>You disable [src]'s zooming system.</span>")
|
||||
reset_zooming()
|
||||
|
||||
/obj/item/gun/energy/beam_rifle/proc/smooth_zooming(delay_override = null)
|
||||
if(!check_user() || !zooming || zoom_lock == ZOOM_LOCK_OFF || zoom_lock == ZOOM_LOCK_CENTER_VIEW)
|
||||
return
|
||||
if(zoom_animating && delay_override != 0)
|
||||
return smooth_zooming(zoom_animating + delay_override) //Automatically compensate for ongoing zooming actions.
|
||||
var/total_time = SSfastprocess.wait
|
||||
if(delay_override)
|
||||
total_time = delay_override
|
||||
zoom_animating = total_time
|
||||
animate(current_user.client, pixel_x = current_zoom_x, pixel_y = current_zoom_y , total_time, SINE_EASING, ANIMATION_PARALLEL)
|
||||
zoom_animating = 0
|
||||
|
||||
/obj/item/gun/energy/beam_rifle/proc/set_autozoom_pixel_offsets_immediate(current_angle)
|
||||
if(zoom_lock == ZOOM_LOCK_CENTER_VIEW || zoom_lock == ZOOM_LOCK_OFF)
|
||||
return
|
||||
@@ -136,7 +123,6 @@
|
||||
current_user.client.change_view(world.view + zoom_target_view_increase)
|
||||
zoom_current_view_increase = zoom_target_view_increase
|
||||
set_autozoom_pixel_offsets_immediate(zooming_angle)
|
||||
smooth_zooming()
|
||||
|
||||
/obj/item/gun/energy/beam_rifle/proc/start_zooming()
|
||||
if(zoom_lock == ZOOM_LOCK_OFF)
|
||||
@@ -153,7 +139,6 @@
|
||||
user = current_user
|
||||
if(!user || !user.client)
|
||||
return FALSE
|
||||
zoom_animating = 0
|
||||
animate(user.client, pixel_x = 0, pixel_y = 0, 0, FALSE, LINEAR_EASING, ANIMATION_END_NOW)
|
||||
zoom_current_view_increase = 0
|
||||
user.client.change_view(CONFIG_GET(string/default_view))
|
||||
@@ -164,7 +149,7 @@
|
||||
/obj/item/gun/energy/beam_rifle/update_icon()
|
||||
cut_overlays()
|
||||
var/obj/item/ammo_casing/energy/primary_ammo = ammo_type[1]
|
||||
if(cell.charge > primary_ammo.e_cost)
|
||||
if(!QDELETED(cell) && (cell.charge > primary_ammo.e_cost))
|
||||
add_overlay(charged_overlay)
|
||||
else
|
||||
add_overlay(drained_overlay)
|
||||
@@ -294,7 +279,6 @@
|
||||
if(zoom_lock == ZOOM_LOCK_AUTOZOOM_FREEMOVE)
|
||||
zooming_angle = lastangle
|
||||
set_autozoom_pixel_offsets_immediate(zooming_angle)
|
||||
smooth_zooming(2)
|
||||
return ..()
|
||||
|
||||
/obj/item/gun/energy/beam_rifle/onMouseDown(object, location, params, mob/mob)
|
||||
@@ -582,4 +566,4 @@
|
||||
|
||||
/obj/item/projectile/beam/beam_rifle/hitscan/aiming_beam/on_hit()
|
||||
qdel(src)
|
||||
return FALSE
|
||||
return FALSE
|
||||
Reference in New Issue
Block a user