[MIRROR] added a new admeme weapon: foam finger that shoots missiles as requested by boris (now in arcades!) (#3538)

* Add a new admin weapon: foam finger that shoots missiles (#57013)

An admin only rocket firing foam finger has been added. There is also
a toy version available from arcades that is just a giant foam finger.

* added a new admeme weapon: foam finger that shoots missiles as requested by boris (now in arcades!)

Co-authored-by: c420-o <76887567+c420-o@users.noreply.github.com>
This commit is contained in:
SkyratBot
2021-02-20 16:10:33 +00:00
committed by GitHub
co-authored by c420-o
parent 622b9797ae
commit 8fa9c25d27
7 changed files with 57 additions and 1 deletions
+31
View File
@@ -1540,3 +1540,34 @@
/obj/item/storage/box/heretic_box/PopulateContents()
for(var/i in 1 to rand(1,4))
new /obj/item/toy/reality_pierce(src)
/obj/item/toy/foamfinger
name = "foam finger"
desc = "root for the home team! wait, does this station even have a sports team?"
icon = 'icons/obj/guns/projectile.dmi'
icon_state = "foamfinger"
inhand_icon_state = "foamfinger_inhand"
lefthand_file = 'icons/mob/inhands/weapons/guns_lefthand.dmi'
righthand_file = 'icons/mob/inhands/weapons/guns_righthand.dmi'
w_class = WEIGHT_CLASS_NORMAL
COOLDOWN_DECLARE(foamfinger_cooldown)
/obj/item/toy/foamfinger/attack_self(mob/living/carbon/human/user)
if(!COOLDOWN_FINISHED(src, foamfinger_cooldown))
return
COOLDOWN_START(src, foamfinger_cooldown, 5 SECONDS)
user.manual_emote("waves around the foam finger.")
var/direction = prob(50) ? -1 : 1
if(NSCOMPONENT(user.dir)) //So signs are waved horizontally relative to what way the player waving it is facing.
animate(user, pixel_x = user.pixel_x + (1 * direction), time = 1, easing = SINE_EASING)
animate(pixel_x = user.pixel_x - (2 * direction), time = 1, easing = SINE_EASING)
animate(pixel_x = user.pixel_x + (2 * direction), time = 1, easing = SINE_EASING)
animate(pixel_x = user.pixel_x - (2 * direction), time = 1, easing = SINE_EASING)
animate(pixel_x = user.pixel_x + (1 * direction), time = 1, easing = SINE_EASING)
else
animate(user, pixel_y = user.pixel_y + (1 * direction), time = 1, easing = SINE_EASING)
animate(pixel_y = user.pixel_y - (2 * direction), time = 1, easing = SINE_EASING)
animate(pixel_y = user.pixel_y + (2 * direction), time = 1, easing = SINE_EASING)
animate(pixel_y = user.pixel_y - (2 * direction), time = 1, easing = SINE_EASING)
animate(pixel_y = user.pixel_y + (1 * direction), time = 1, easing = SINE_EASING)
user.changeNext_move(CLICK_CD_MELEE)