[MIRROR] Gives abductors three new equipment shop purchase options, splits up abductor_gear.dm [MDB IGNORE] (#22107)

* Gives abductors three new equipment shop purchase options, splits up abductor_gear.dm

* Update abductor_items.dm

---------

Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com>
Co-authored-by: Bloop <vinylspiders@gmail.com>
This commit is contained in:
SkyratBot
2023-07-12 04:56:12 +02:00
committed by GitHub
parent 0d01c4e165
commit 8b3be64d89
14 changed files with 618 additions and 391 deletions
+16 -14
View File
@@ -193,16 +193,7 @@
return
if(ruined)
return
visible_message(span_notice("[user] rips [src] in a single, decisive motion!") )
playsound(src.loc, 'sound/items/poster_ripped.ogg', 100, TRUE)
spring_trap(user)
var/obj/structure/sign/poster/ripped/R = new(loc)
R.pixel_y = pixel_y
R.pixel_x = pixel_x
R.add_fingerprint(user)
qdel(src)
tear_poster(user)
/obj/structure/sign/poster/proc/spring_trap(mob/user)
var/obj/item/shard/payload = trap?.resolve()
@@ -229,7 +220,7 @@
return rolled_poster
//separated to reduce code duplication. Moved here for ease of reference and to unclutter r_wall/attackby()
/turf/closed/wall/proc/place_poster(obj/item/poster/rolled_poster, mob/user)
/turf/closed/proc/place_poster(obj/item/poster/rolled_poster, mob/user)
if(!rolled_poster.poster_structure)
to_chat(user, span_warning("[rolled_poster] has no poster... inside it? Inform a coder!"))
return
@@ -259,19 +250,30 @@
playsound(src, 'sound/items/poster_being_created.ogg', 100, TRUE)
var/turf/user_drop_location = get_turf(user) //cache this so it just falls to the ground if they move. also no tk memes allowed.
if(!do_after(user, PLACE_SPEED, placed_poster, extra_checks = CALLBACK(placed_poster, TYPE_PROC_REF(/obj/structure/sign/poster, snowflake_wall_turf_check), src)))
if(!do_after(user, PLACE_SPEED, placed_poster, extra_checks = CALLBACK(placed_poster, TYPE_PROC_REF(/obj/structure/sign/poster, snowflake_closed_turf_check), src)))
placed_poster.roll_and_drop(user_drop_location)
return
placed_poster.on_placed_poster(user)
return TRUE
/obj/structure/sign/poster/proc/snowflake_wall_turf_check(atom/hopefully_still_a_wall_turf) //since turfs never get deleted but instead change type, make sure we're still being placed on a wall.
return iswallturf(hopefully_still_a_wall_turf)
/obj/structure/sign/poster/proc/snowflake_closed_turf_check(atom/hopefully_still_a_closed_turf) //since turfs never get deleted but instead change type, make sure we're still being placed on a wall.
return isclosedturf(hopefully_still_a_closed_turf)
/obj/structure/sign/poster/proc/on_placed_poster(mob/user)
to_chat(user, span_notice("You place the poster!"))
/obj/structure/sign/poster/proc/tear_poster(mob/user)
visible_message(span_notice("[user] rips [src] in a single, decisive motion!") )
playsound(src.loc, 'sound/items/poster_ripped.ogg', 100, TRUE)
spring_trap(user)
var/obj/structure/sign/poster/ripped/R = new(loc)
R.pixel_y = pixel_y
R.pixel_x = pixel_x
R.add_fingerprint(user)
qdel(src)
// Various possible posters follow
/obj/structure/sign/poster/ripped