bugs and random muck

This commit is contained in:
Joe Schmoe
2018-08-25 22:13:08 +02:00
parent 2ad79e0934
commit 2dabd10ea7
5 changed files with 11 additions and 64 deletions

View File

@@ -188,7 +188,13 @@
else
message_admins("[key_name_admin(usr)] tried to create a revenant. Unfortunately, there were no candidates available.")
log_admin("[key_name(usr)] failed to create a revenant.")
if("shadowling")
if(makeShadowling())
message_admins("[key_name(usr)] created a shadowling.")
log_admin("[key_name(usr)] created a shadowling.")
else
message_admins("[key_name_admin(usr)] tried to create a shadowling. Unfortunately, there were no candidates available.")
log_admin("[key_name(usr)] failed to create a shadowling.")
else if(href_list["forceevent"])
if(!check_rights(R_FUN))
return

View File

@@ -1,40 +0,0 @@
/client/proc/callproc_datum_fast(datum/A as null|area|mob|obj|turf)
set category = "Debug"
set name = "Fast ProcCall"
set waitfor = 0
if(!check_rights(R_DEBUG))
return
var/procstring = input("Proc call, eg: \"vomit(0, 1, 0, 5)\"","Proc:", null) as text|null
if(!procstring)
return
var/regex/procname_regex = regex("^(\[a-zA-z\]+)(?=\\()")
var/has_procname = procname_regex.Find(procstring)
if(!has_procname)
to_chat(usr, "<font color='red'>Error: Fast ProcCall: Could not parse function name in [procstring].</font>")
return
var/procname = procname_regex.group[1]
if(!hascall(A,procname))
to_chat(usr, "<font color='red'>Error: Fast ProcCall: Type [A.type] has no proc named [procname].</font>")
return
var/regex/pain = regex("(\"(\[^"\\\\\]*(?:\\\\.\[^\"\\\\\]*)*)"|\\d+)")
pain.Find(procstring)
var/list/arguments = list()
for(var/i=1 to pain.group.len)
var
if(!A || !IsValidSrc(A))
to_chat(usr, "<span class='warning'>Error: callproc_datum(): owner of proc no longer exists.</span>")
return
log_admin("[key_name(src)] called [A]'s [procname]() with [lst.len ? "the arguments [list2params(lst)]":"no arguments"].")
var/msg = "[key_name(src)] called [A]'s [procname]() with [lst.len ? "the arguments [list2params(lst)]":"no arguments"]."
message_admins(msg)
admin_ticket_log(A, msg)
SSblackbox.record_feedback("tally", "admin_verb", 1, "Atom ProcCall") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
var/returnval = WrapAdminProcCall(A, procname, lst) // Pass the lst as an argument list to the proc
. = get_callproc_returnval(returnval,procname)
if(.)
to_chat(usr, .)

View File

@@ -27,6 +27,10 @@
environment_smash = 3
faction = list("faithless")
/mob/living/simple_animal/ascendant_shadowling/Initialize()
. = ..()
LoadComponent(/datum/component/walk)
/mob/living/simple_animal/ascendant_shadowling/Process_Spacemove(movement_dir = 0)
return TRUE //copypasta from carp code

View File

@@ -819,28 +819,6 @@
target.mind.special_role = "thrall"
target.add_thrall()
/obj/effect/proc_holder/spell/self/shadowling_phase_shift //Permanent version of shadow walk with no drawback. Toggleable.
name = "Phase Shift"
desc = "Phases you into the space between worlds at will, allowing you to move through walls and become invisible."
panel = "Ascendant"
charge_max = 15
clothes_req = FALSE
action_icon = 'yogstation/icons/mob/actions.dmi'
action_icon_state = "shadow_walk"
/obj/effect/proc_holder/spell/self/shadowling_phase_shift/cast(mob/living/simple_animal/ascendant_shadowling/user)
user.incorporeal_move = !user.incorporeal_move
if(user.incorporeal_move)
user.visible_message("<span class='danger'>[user] suddenly vanishes!</span>", \
"<span class='shadowling'>You begin phasing through planes of existence. Use the ability again to return.</span>")
user.density = 0
user.alpha = 0
else
user.visible_message("<span class='danger'>[user] suddenly appears from nowhere!</span>", \
"<span class='shadowling'>You return from the space between worlds.</span>")
user.density = 1
user.alpha = 255
/obj/effect/proc_holder/spell/aoe_turf/ascendant_storm //Releases bolts of lightning to everyone nearby
name = "Lightning Storm"
desc = "Shocks everyone nearby."

View File

@@ -170,7 +170,6 @@
H.mind.RemoveSpell(S)
H.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/sling/annihilate(null))
H.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/sling/hypnosis(null))
H.mind.AddSpell(new /obj/effect/proc_holder/spell/self/shadowling_phase_shift(null))
H.mind.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/ascendant_storm(null))
H.mind.AddSpell(new /obj/effect/proc_holder/spell/self/shadowling_hivemind_ascendant(null))
H.mind.transfer_to(A)