mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 03:57:13 +01:00
New Mech - The Nkarrdem, Janitor Supreme (#26453)
* Nkarrdem Mech - Initial Commit * Fabricator category, garbage bag, module designs * Added combat tech requirement to cleaning grenade launcher * Fixed a comment's spacing * Construction codersprites * Construction path updated * Open and Broken sprites * Codersprites, Construction fixes, Wreckage * Better spacing for equalities, better return bool Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Equality spacing Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * playsound boolean fix Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Mech part comment spacing Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Parts list parenthesis spacing Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Spacing and boolean returns Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Another boolean return Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * More comment spacing Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * More comment spacing Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Ditto Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Comment spacing Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Comment spacing Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Snake cased floor_buffer, removed excess comment * Enhanced floor buffer * Whole lot of time format changes * HUD warning message update * Cutting cargo * Max equipment fix * Spray fixes * Light replacer fixes and defines moved * Mop sound cooldowns * Formatting, autodoc, spacing, and chat alert fixes * Emag warning * Removed excess returns, added click when spray empty * Minor refactor of cleaning_act, removed the async mopping * Excess user * Formatting, Typecaching * Replaces to_chat with occupant_message * Type def, attack log, and timer for CGL * Moved light replacement logic to light object as fix() proc * Free performance is free performance * To chat fix * replaceLight changes * Ranged fix * Moved autodoc * Early return in mop refilling * Reordered early returns in mop action * Applied change to cleaning documentation * Moved acrtion, removed excess subtype * Spray moved to internal spray item, various fixes * Removed excess * Internal garbage storage for garbage magnet * Janimech storage handling, effect when emptying into disposals, user check in handle_item_insertion * Extraneous Return Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> * Var declaration fix Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com> Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> --------- Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com> Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com> Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com> Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
This commit is contained in:
co-authored by
Burzah
1080pCat
Luc
parent
62b65f8a91
commit
ff8e0404b9
@@ -13,7 +13,9 @@
|
||||
//Can normally be left alone, but needs to be defined if the thing being cleaned isn't necessarily the thing being clicked on,
|
||||
//such as /obj/effect/rune/cleaning_act() bouncing to turf/simulated/cleaning_act().
|
||||
|
||||
/atom/proc/cleaning_act(mob/user, atom/cleaner, cleanspeed = 5 SECONDS, text_verb = "clean", text_description = " with [cleaner].", text_targetname = name)
|
||||
// skip_do_after - When TRUE, do after and visible messages are disabled
|
||||
|
||||
/atom/proc/cleaning_act(mob/user, atom/cleaner, cleanspeed = 5 SECONDS, text_verb = "clean", text_description = " with [cleaner].", text_targetname = name, skip_do_after = FALSE)
|
||||
var/is_cmagged = FALSE
|
||||
|
||||
if(user.client && (src in user.client.screen)) //You can't clean items you're wearing for technical reasons
|
||||
@@ -25,9 +27,10 @@
|
||||
text_verb = "clean the ooze off"
|
||||
cleanspeed = CMAG_CLEANTIME
|
||||
|
||||
user.visible_message("<span class='warning'>[user] begins to [text_verb] \the [text_targetname][text_description]</span>", "<span class='warning'>You begin to [text_verb] \the [text_targetname][text_description]</span>")
|
||||
if(!do_after(user, cleanspeed, target = src))
|
||||
return FALSE
|
||||
if(!skip_do_after)
|
||||
user.visible_message("<span class='warning'>[user] begins to [text_verb] \the [text_targetname][text_description]</span>", "<span class='warning'>You begin to [text_verb] \the [text_targetname][text_description]</span>")
|
||||
if(!do_after(user, cleanspeed, target = src))
|
||||
return FALSE
|
||||
|
||||
if(!cleaner.can_clean())
|
||||
cleaner.post_clean(src, user)
|
||||
@@ -35,7 +38,8 @@
|
||||
|
||||
cleaner.post_clean(src, user)
|
||||
|
||||
to_chat(user, "<span class='notice'>You [text_verb] \the [text_targetname][text_description]</span>")
|
||||
if(!skip_do_after)
|
||||
to_chat(user, "<span class='notice'>You [text_verb] \the [text_targetname][text_description]</span>")
|
||||
|
||||
if(is_cmagged) //If we've cleaned a cmagged object
|
||||
REMOVE_TRAIT(src, TRAIT_CMAGGED, CLOWN_EMAG)
|
||||
|
||||
@@ -31,13 +31,6 @@
|
||||
// access to them, and only one of them can emag their device.
|
||||
//
|
||||
// The explosion cannot insta-kill anyone with 30% or more health.
|
||||
|
||||
#define LIGHT_OK 0
|
||||
#define LIGHT_EMPTY 1
|
||||
#define LIGHT_BROKEN 2
|
||||
#define LIGHT_BURNED 3
|
||||
|
||||
|
||||
/obj/item/lightreplacer
|
||||
name = "light replacer"
|
||||
desc = "A device to automatically replace lights. Refill with broken or working light bulbs, or sheets of glass."
|
||||
@@ -198,21 +191,10 @@
|
||||
if(CanUse(U))
|
||||
if(!Use(U))
|
||||
return
|
||||
to_chat(U, "<span class='notice'>You replace the light [target.fitting] with [src].</span>")
|
||||
|
||||
if(target.status != LIGHT_EMPTY)
|
||||
AddShards(1, U)
|
||||
target.status = LIGHT_EMPTY
|
||||
|
||||
var/obj/item/light/replacement = target.light_type
|
||||
target.status = LIGHT_OK
|
||||
target.switchcount = 0
|
||||
target.rigged = emagged
|
||||
target.brightness_range = initial(replacement.brightness_range)
|
||||
target.brightness_power = initial(replacement.brightness_power)
|
||||
target.brightness_color = initial(replacement.brightness_color)
|
||||
target.on = target.has_power()
|
||||
target.update(TRUE, TRUE, FALSE)
|
||||
target.fix(U, src, emagged)
|
||||
|
||||
else
|
||||
to_chat(U, "[src]'s refill light blinks red.")
|
||||
@@ -270,8 +252,3 @@
|
||||
|
||||
/obj/item/lightreplacer/bluespace/emag_act()
|
||||
return // long range explosions are stupid
|
||||
|
||||
#undef LIGHT_OK
|
||||
#undef LIGHT_EMPTY
|
||||
#undef LIGHT_BROKEN
|
||||
#undef LIGHT_BURNED
|
||||
|
||||
@@ -464,7 +464,8 @@
|
||||
if(observer.client && observer.s_active != src)
|
||||
observer.client.screen -= I
|
||||
I.dropped(user, TRUE)
|
||||
add_fingerprint(user)
|
||||
if(user)
|
||||
add_fingerprint(user)
|
||||
|
||||
if(!prevent_warning)
|
||||
// all mobs with clients attached, sans the item's user
|
||||
@@ -481,10 +482,10 @@
|
||||
// restrict player list to include only those in view
|
||||
for(var/mob/M in oviewers(7, user))
|
||||
M.show_message("<span class='notice'>[user] puts [I] into [src].</span>")
|
||||
|
||||
orient2hud(user)
|
||||
if(user.s_active)
|
||||
user.s_active.show_to(user)
|
||||
if(user)
|
||||
if(user.s_active)
|
||||
user.s_active.show_to(user)
|
||||
|
||||
I.mouse_opacity = MOUSE_OPACITY_OPAQUE //So you can click on the area around the item to equip it, instead of having to pixel hunt
|
||||
I.in_inventory = TRUE
|
||||
|
||||
Reference in New Issue
Block a user