mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-21 03:55:05 +01:00
Merge pull request #12946 from farie82/runtime-fix-2
Fixed a few funtimes and bugs
This commit is contained in:
@@ -309,15 +309,12 @@ SUBSYSTEM_DEF(ticker)
|
||||
cinematic.mouse_opacity = MOUSE_OPACITY_TRANSPARENT
|
||||
cinematic.screen_loc = "1,0"
|
||||
|
||||
var/obj/structure/bed/temp_buckle = new(src)
|
||||
if(station_missed)
|
||||
for(var/mob/M in GLOB.mob_list)
|
||||
M.buckled = temp_buckle //buckles the mob so it can't do anything
|
||||
if(M.client)
|
||||
M.client.screen += cinematic //show every client the cinematic
|
||||
else //nuke kills everyone on z-level 1 to prevent "hurr-durr I survived"
|
||||
for(var/mob/M in GLOB.mob_list)
|
||||
M.buckled = temp_buckle
|
||||
if(M.stat != DEAD)
|
||||
var/turf/T = get_turf(M)
|
||||
if(T && is_station_level(T.z) && !istype(M.loc, /obj/structure/closet/secure_closet/freezer))
|
||||
@@ -387,8 +384,6 @@ SUBSYSTEM_DEF(ticker)
|
||||
//Otherwise if its a verb it will continue on afterwards.
|
||||
spawn(300)
|
||||
QDEL_NULL(cinematic) //end the cinematic
|
||||
if(temp_buckle)
|
||||
qdel(temp_buckle) //release everybody
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -332,10 +332,12 @@ GLOBAL_LIST_EMPTY(teleport_runes)
|
||||
user.forceMove(get_turf(actual_selected_rune))
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(user.z != T.z)
|
||||
H.bleed(5)
|
||||
if(istype(H))
|
||||
H.bleed(5)
|
||||
user.apply_damage(5, BRUTE)
|
||||
else
|
||||
H.bleed(rand(5,10))
|
||||
if(istype(H))
|
||||
H.bleed(rand(5,10))
|
||||
else
|
||||
fail_invoke()
|
||||
|
||||
@@ -832,7 +834,8 @@ GLOBAL_LIST_EMPTY(teleport_runes)
|
||||
fail_invoke()
|
||||
log_game("Summon Cultist rune failed - target in away mission")
|
||||
return
|
||||
if((cultist_to_summon.reagents.has_reagent("holywater") || cultist_to_summon.restrained()) && invokers.len < 3)
|
||||
var/hard_summon = (cultist_to_summon.reagents && cultist_to_summon.reagents.has_reagent("holywater")) || cultist_to_summon.restrained()
|
||||
if(hard_summon && invokers.len < 3)
|
||||
to_chat(user, "<span class='cultitalic'>The summoning of [cultist_to_summon] is being blocked somehow! You need 3 chanters to counter it!</span>")
|
||||
fail_invoke()
|
||||
new /obj/effect/temp_visual/cult/sparks(get_turf(cultist_to_summon)) //observer warning
|
||||
@@ -840,7 +843,7 @@ GLOBAL_LIST_EMPTY(teleport_runes)
|
||||
return
|
||||
|
||||
..()
|
||||
if(cultist_to_summon.reagents.has_reagent("holywater") || cultist_to_summon.restrained())
|
||||
if(hard_summon)
|
||||
summontime = 20
|
||||
|
||||
if(do_after(user, summontime, target = loc))
|
||||
|
||||
@@ -540,7 +540,7 @@
|
||||
|
||||
|
||||
/obj/mecha/attack_alien(mob/living/user)
|
||||
log_message("Attack by alien. Attacker - [user].", red=TRUE)
|
||||
log_message("Attack by alien. Attacker - [user].", TRUE)
|
||||
playsound(src.loc, 'sound/weapons/slash.ogg', 100, TRUE)
|
||||
attack_generic(user, 15, BRUTE, "melee", 0)
|
||||
|
||||
|
||||
@@ -84,27 +84,29 @@
|
||||
|
||||
|
||||
/obj/item/flash/proc/flash_carbon(var/mob/living/carbon/M, var/mob/user = null, var/power = 5, targeted = 1)
|
||||
add_attack_logs(user, M, "Flashed with [src]")
|
||||
if(user && targeted)
|
||||
if(M.weakeyes)
|
||||
M.Weaken(3) //quick weaken bypasses eye protection but has no eye flash
|
||||
if(M.flash_eyes(1, 1))
|
||||
M.AdjustConfused(power)
|
||||
terrible_conversion_proc(M, user)
|
||||
M.Stun(1)
|
||||
visible_message("<span class='disarm'>[user] blinds [M] with the flash!</span>")
|
||||
to_chat(user, "<span class='danger'>You blind [M] with the flash!</span>")
|
||||
to_chat(M, "<span class='userdanger'>[user] blinds you with the flash!</span>")
|
||||
if(user)
|
||||
add_attack_logs(user, M, "Flashed with [src]")
|
||||
if(targeted)
|
||||
if(M.weakeyes)
|
||||
M.Stun(2)
|
||||
M.visible_message("<span class='disarm'>[M] gasps and shields [M.p_their()] eyes!</span>", "<span class='userdanger'>You gasp and shields your eyes!</span>")
|
||||
else
|
||||
visible_message("<span class='disarm'>[user] fails to blind [M] with the flash!</span>")
|
||||
to_chat(user, "<span class='warning'>You fail to blind [M] with the flash!</span>")
|
||||
to_chat(M, "<span class='danger'>[user] fails to blind you with the flash!</span>")
|
||||
else
|
||||
if(M.flash_eyes())
|
||||
M.AdjustConfused(power)
|
||||
M.Weaken(3) //quick weaken bypasses eye protection but has no eye flash
|
||||
if(M.flash_eyes(1, 1))
|
||||
M.AdjustConfused(power)
|
||||
terrible_conversion_proc(M, user)
|
||||
M.Stun(1)
|
||||
visible_message("<span class='disarm'>[user] blinds [M] with the flash!</span>")
|
||||
to_chat(user, "<span class='danger'>You blind [M] with the flash!</span>")
|
||||
to_chat(M, "<span class='userdanger'>[user] blinds you with the flash!</span>")
|
||||
if(M.weakeyes)
|
||||
M.Stun(2)
|
||||
M.visible_message("<span class='disarm'>[M] gasps and shields [M.p_their()] eyes!</span>", "<span class='userdanger'>You gasp and shields your eyes!</span>")
|
||||
else
|
||||
visible_message("<span class='disarm'>[user] fails to blind [M] with the flash!</span>")
|
||||
to_chat(user, "<span class='warning'>You fail to blind [M] with the flash!</span>")
|
||||
to_chat(M, "<span class='danger'>[user] fails to blind you with the flash!</span>")
|
||||
return
|
||||
|
||||
if(M.flash_eyes())
|
||||
M.AdjustConfused(power)
|
||||
|
||||
/obj/item/flash/attack(mob/living/M, mob/user)
|
||||
if(!try_use_flash(user))
|
||||
|
||||
@@ -11,6 +11,9 @@
|
||||
var/propadjust = query.item[2]
|
||||
var/jobmask = query.item[3]
|
||||
var/ok = 0
|
||||
if(!path || !ispath(path))
|
||||
log_debug("Incorrect database entry found in table 'customuseritems' path value = [path], cuiPath is null. cuiCKey='[M.ckey]' AND (cuiRealName='[sanitizeSQL(M.real_name)]' OR cuiRealName='*'")
|
||||
continue
|
||||
if(jobmask != "*")
|
||||
var/list/allowed_jobs = splittext(jobmask,",")
|
||||
for(var/i = 1, i <= allowed_jobs.len, i++)
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
else
|
||||
healths.icon_state = "health6"
|
||||
|
||||
/mob/living/carbon/alien/humanoid/queen/can_inject()
|
||||
/mob/living/carbon/alien/humanoid/queen/can_inject(mob/user, error_msg, target_zone, penetrate_thick)
|
||||
return FALSE
|
||||
|
||||
//Queen verbs
|
||||
|
||||
@@ -374,7 +374,7 @@
|
||||
return 0
|
||||
|
||||
// Living mobs use can_inject() to make sure that the mob is not syringe-proof in general.
|
||||
/mob/living/proc/can_inject()
|
||||
/mob/living/proc/can_inject(mob/user, error_msg, target_zone, penetrate_thick)
|
||||
return TRUE
|
||||
|
||||
/mob/living/is_injectable(mob/user, allowmobs = TRUE)
|
||||
|
||||
@@ -1133,7 +1133,7 @@ GLOBAL_LIST_INIT(robot_verbs_default, list(
|
||||
if(!updating)
|
||||
updating = 1
|
||||
spawn(BORG_CAMERA_BUFFER)
|
||||
if(oldLoc != src.loc)
|
||||
if(camera && oldLoc != src.loc)
|
||||
GLOB.cameranet.updatePortableCamera(src.camera)
|
||||
updating = 0
|
||||
if(module)
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
/mob/living/silicon/proc/damage_mob(var/brute = 0, var/fire = 0, var/tox = 0)
|
||||
return
|
||||
|
||||
/mob/living/silicon/can_inject(mob/user, error_msg)
|
||||
/mob/living/silicon/can_inject(mob/user, error_msg, target_zone, penetrate_thick)
|
||||
if(error_msg)
|
||||
to_chat(user, "<span class='alert'>[p_their(TRUE)] outer shell is too tough.</span>")
|
||||
return FALSE
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
to_chat(user, "<span class='notice'>You put the rocket in [src].</span>")
|
||||
to_chat(user, "<span class='notice'>[rockets.len] / [max_rockets] rockets.</span>")
|
||||
else
|
||||
to_chat(usr, "<span class='notice'>[src] cannot hold more rockets.</span>")
|
||||
to_chat(user, "<span class='notice'>[src] cannot hold more rockets.</span>")
|
||||
else
|
||||
return ..()
|
||||
|
||||
@@ -55,4 +55,4 @@
|
||||
rockets -= I
|
||||
qdel(I)
|
||||
else
|
||||
to_chat(usr, "<span class='warning'>[src] is empty.</span>")
|
||||
to_chat(user, "<span class='warning'>[src] is empty.</span>")
|
||||
|
||||
Reference in New Issue
Block a user