mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-23 03:57:13 +01:00
Merge remote-tracking branch 'upstream/master' into more_ss_ports
# Conflicts: # paradise.dme
This commit is contained in:
@@ -42,7 +42,7 @@
|
||||
if(lying && surgeries.len)
|
||||
if(user.a_intent == INTENT_HELP)
|
||||
for(var/datum/surgery/S in surgeries)
|
||||
if(S.next_step(user, user.a_intent))
|
||||
if(S.next_step(user, src))
|
||||
return 1
|
||||
return 0
|
||||
|
||||
|
||||
@@ -102,6 +102,8 @@
|
||||
on_CD = handle_emote_CD()
|
||||
if("sneeze", "sneezes")
|
||||
on_CD = handle_emote_CD()
|
||||
if("clap", "claps")
|
||||
on_CD = handle_emote_CD()
|
||||
//Everything else, including typos of the above emotes
|
||||
else
|
||||
on_CD = 0 //If it doesn't induce the cooldown, we won't check for the cooldown
|
||||
@@ -302,11 +304,30 @@
|
||||
message = "<B>[src]</B> makes a peculiar noise."
|
||||
m_type = 2
|
||||
if("clap", "claps")
|
||||
if(!restrained())
|
||||
message = "<B>[src]</B> claps."
|
||||
if(miming)
|
||||
message = "<B>[src]</B> claps silently."
|
||||
m_type = 1
|
||||
else
|
||||
m_type = 2
|
||||
if(miming)
|
||||
m_type = 1
|
||||
var/obj/item/organ/external/L = get_organ("l_hand")
|
||||
var/obj/item/organ/external/R = get_organ("r_hand")
|
||||
|
||||
var/left_hand_good = FALSE
|
||||
var/right_hand_good = FALSE
|
||||
|
||||
if(L && (!(L.status & ORGAN_SPLINTED)) && (!(L.status & ORGAN_BROKEN)))
|
||||
left_hand_good = TRUE
|
||||
if(R && (!(R.status & ORGAN_SPLINTED)) && (!(R.status & ORGAN_BROKEN)))
|
||||
right_hand_good = TRUE
|
||||
|
||||
if(left_hand_good && right_hand_good)
|
||||
message = "<b>[src]</b> claps."
|
||||
var/clap = pick('sound/misc/clap1.ogg', 'sound/misc/clap2.ogg', 'sound/misc/clap3.ogg', 'sound/misc/clap4.ogg')
|
||||
playsound(loc, clap, 50, 1, -1)
|
||||
|
||||
else
|
||||
to_chat(usr, "You need your hands working in order to clap.")
|
||||
|
||||
if("flap", "flaps")
|
||||
if(!restrained())
|
||||
message = "<B>[src]</B> flaps \his wings."
|
||||
|
||||
@@ -793,7 +793,7 @@
|
||||
/mob/living/proc/flash_eyes(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /obj/screen/fullscreen/flash)
|
||||
if(check_eye_prot() < intensity && (override_blindness_check || !(disabilities & BLIND)))
|
||||
overlay_fullscreen("flash", type)
|
||||
addtimer(src, "clear_fullscreen", 25, FALSE, "flash", 25)
|
||||
addtimer(CALLBACK(src, .proc/clear_fullscreen, "flash", 25), 25)
|
||||
return 1
|
||||
|
||||
/mob/living/proc/check_eye_prot()
|
||||
|
||||
@@ -268,6 +268,9 @@ var/list/ai_verbs_default = list(
|
||||
shuttle_caller_list -= src
|
||||
shuttle_master.autoEvac()
|
||||
QDEL_NULL(eyeobj) // No AI, no Eye
|
||||
if(malfhacking)
|
||||
deltimer(malfhacking)
|
||||
malfhacking = null
|
||||
malfhack = null
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -29,8 +29,10 @@
|
||||
|
||||
if(malfhack && malfhack.aidisabled)
|
||||
to_chat(src, "<span class='danger'>ERROR: APC access disabled, hack attempt canceled.</span>")
|
||||
malfhacking = 0
|
||||
malfhack = null
|
||||
deltimer(malfhacking)
|
||||
// This proc handles cleanup of screen notifications and
|
||||
// messenging the client
|
||||
malfhacked(malfhack)
|
||||
|
||||
if(aiRestorePowerRoutine)
|
||||
adjustOxyLoss(1)
|
||||
|
||||
@@ -193,6 +193,9 @@
|
||||
bots_list -= src
|
||||
QDEL_NULL(Radio)
|
||||
QDEL_NULL(access_card)
|
||||
if(reset_access_timer_id)
|
||||
deltimer(reset_access_timer_id)
|
||||
reset_access_timer_id = null
|
||||
if(radio_controller && bot_filter)
|
||||
radio_controller.remove_object(bot_core, control_freq)
|
||||
QDEL_NULL(bot_core)
|
||||
@@ -527,7 +530,7 @@ Pass a positive integer as an argument to override a bot's default speed.
|
||||
turn_on() //Saves the AI the hassle of having to activate a bot manually.
|
||||
access_card = all_access //Give the bot all-access while under the AI's command.
|
||||
if(client)
|
||||
reset_access_timer_id = addtimer(src, "bot_reset", 600) //if the bot is player controlled, they get the extra access for a limited time
|
||||
reset_access_timer_id = addtimer(CALLBACK (src, .proc/bot_reset), 600, TIMER_OVERRIDE|TIMER_STOPPABLE) //if the bot is player controlled, they get the extra access for a limited time
|
||||
to_chat(src, "<span class='notice'><span class='big'>Priority waypoint set by [calling_ai] <b>[caller]</b>. Proceed to <b>[end_area.name]</b>.</span><br>[path.len-1] meters to destination. You have been granted additional door access for 60 seconds.</span>")
|
||||
if(message)
|
||||
to_chat(calling_ai, "<span class='notice'>[bicon(src)] [name] called to [end_area.name]. [path.len-1] meters to destination.</span>")
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
|
||||
/obj/item/organ/internal/hivelord_core/New()
|
||||
..()
|
||||
addtimer(src, "inert_check", 2400)
|
||||
addtimer(CALLBACK(src, .proc/inert_check), 2400)
|
||||
|
||||
/obj/item/organ/internal/hivelord_core/proc/inert_check()
|
||||
if(!owner && !preserved)
|
||||
@@ -151,7 +151,7 @@
|
||||
|
||||
/mob/living/simple_animal/hostile/asteroid/hivelordbrood/New()
|
||||
..()
|
||||
addtimer(src, "death", 100)
|
||||
addtimer(CALLBACK(src, .proc/death), 100)
|
||||
|
||||
/mob/living/simple_animal/hostile/asteroid/hivelordbrood/blood
|
||||
name = "blood brood"
|
||||
|
||||
@@ -270,8 +270,8 @@ var/global/list/ts_spiderling_list = list()
|
||||
else
|
||||
ts_count_alive_station++
|
||||
// after 30 seconds, assuming nobody took control of it yet, offer it to ghosts.
|
||||
addtimer(src, "CheckFaction", 150)
|
||||
addtimer(src, "announcetoghosts", 300)
|
||||
addtimer(CALLBACK(src, .proc/CheckFaction), 150)
|
||||
addtimer(CALLBACK(src, .proc/announcetoghosts), 300)
|
||||
var/datum/atom_hud/U = huds[DATA_HUD_MEDICAL_ADVANCED]
|
||||
U.add_hud_to(src)
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
for(var/turf/T in anchors)
|
||||
var/datum/beam/B = Beam(T, "vine", time=INFINITY, maxdistance=5, beam_type=/obj/effect/ebeam/vine)
|
||||
B.sleep_time = 10 //these shouldn't move, so let's slow down updates to 1 second (any slower and the deletion of the vines would be too slow)
|
||||
addtimer(src, "bear_fruit", growth_time)
|
||||
addtimer(CALLBACK(src, .proc/bear_fruit), growth_time)
|
||||
|
||||
/obj/structure/alien/resin/flower_bud_enemy/proc/bear_fruit()
|
||||
visible_message("<span class='danger'>the plant has borne fruit!</span>")
|
||||
|
||||
Reference in New Issue
Block a user