mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-30 00:21:11 +01:00
Ports a psionic system from Bay. (#7717)
* Ports a psionic system from Bay. * Rip out this shitcode. * shitcoden't * fixes * it should work fully now * Admin fixes * Remove todos * remove todos part 2 * Removes psi-armour. We don't need this for now. * Skrell are now operants. Tweaks coercion. * Adds thralls. * Temp removal of psiarmour. Fixes psigrabs. * Thrall assay. * fixes * More fixes * unused define cleanup * Log and powers * Skrell powers are done. * Update code/modules/psionics/events/mini_spasm.dm Co-Authored-By: Geeves <ggrobler447@gmail.com> * Update code/modules/psionics/events/mini_spasm.dm Co-Authored-By: Geeves <ggrobler447@gmail.com> * Update code/modules/psionics/equipment/cerebro_enhancers.dm * did this work??? * jargon * arrow's fixes Co-authored-by: Geeves <ggrobler447@gmail.com>
This commit is contained in:
committed by
Werner
co-authored by
Geeves
parent
6fe1c9c3b4
commit
c087a0a0bf
@@ -171,7 +171,7 @@
|
||||
if(!temp)
|
||||
to_chat(user, "<span class='notice'>You try to use your hand, but realize it is no longer attached!</span>")
|
||||
return
|
||||
if(!src.Adjacent(user) && !(TK in user.mutations))
|
||||
if(!src.Adjacent(user))
|
||||
to_chat(user, span("notice", "\The [src] slips out of your grasp before you can grab it!")) // because things called before this can move it
|
||||
return // please don't pick things up
|
||||
src.pickup(user)
|
||||
@@ -796,4 +796,9 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
|
||||
pixel_y = rand(-randpixel, randpixel)
|
||||
return TRUE
|
||||
else
|
||||
return FALSE
|
||||
return FALSE
|
||||
|
||||
/obj/item/do_simple_ranged_interaction(var/mob/user)
|
||||
if(user)
|
||||
attack_self(user)
|
||||
return TRUE
|
||||
|
||||
@@ -417,8 +417,6 @@
|
||||
var/obj/item/grab/G = W
|
||||
MouseDrop_T(G.affecting, user)
|
||||
return 0
|
||||
if(istype(W,/obj/item/tk_grab))
|
||||
return 0
|
||||
if(!dropsafety(W))
|
||||
return
|
||||
user.drop_item()
|
||||
|
||||
@@ -58,6 +58,13 @@
|
||||
implants -= src
|
||||
return ..()
|
||||
|
||||
/obj/item/implant/proc/removed()
|
||||
imp_in = null
|
||||
if(part)
|
||||
part.implants -= src
|
||||
part = null
|
||||
implanted = 0
|
||||
|
||||
/obj/item/implant/attackby(obj/item/I, mob/user)
|
||||
if(istype(I, /obj/item/implanter))
|
||||
var/obj/item/implanter/implanter = I
|
||||
|
||||
@@ -108,15 +108,6 @@
|
||||
if (usr.client && usr.machine==src) // && M.machine == src is omitted because if we triggered this by using the dialog, it doesn't matter if our machine changed in between triggering it and this - the dialog is probably still supposed to refresh.
|
||||
is_in_use = 1
|
||||
src.attack_ai(usr)
|
||||
|
||||
// check for TK users
|
||||
|
||||
if (istype(usr, /mob/living/carbon/human))
|
||||
if(istype(usr.l_hand, /obj/item/tk_grab) || istype(usr.r_hand, /obj/item/tk_grab/))
|
||||
if(!(usr in nearby))
|
||||
if(usr.client && usr.machine==src)
|
||||
is_in_use = 1
|
||||
src.attack_hand(usr)
|
||||
in_use = is_in_use
|
||||
|
||||
/obj/proc/updateDialog()
|
||||
|
||||
@@ -31,9 +31,6 @@
|
||||
|
||||
return ..()
|
||||
|
||||
/obj/structure/attack_tk()
|
||||
return
|
||||
|
||||
/obj/structure/ex_act(severity)
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
|
||||
@@ -433,7 +433,7 @@ LINEN BINS
|
||||
|
||||
add_fingerprint(user)
|
||||
|
||||
/obj/structure/bedsheetbin/attack_tk(mob/user as mob)
|
||||
/obj/structure/bedsheetbin/do_simple_ranged_interaction(var/mob/user)
|
||||
if(amount >= 1)
|
||||
amount--
|
||||
|
||||
|
||||
@@ -224,8 +224,6 @@
|
||||
var/obj/item/grab/G = W
|
||||
MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet
|
||||
return 0
|
||||
if(istype(W,/obj/item/tk_grab))
|
||||
return 0
|
||||
if(W.iswelder())
|
||||
var/obj/item/weldingtool/WT = W
|
||||
if(WT.isOn())
|
||||
@@ -337,12 +335,6 @@
|
||||
add_fingerprint(user)
|
||||
return toggle(user)
|
||||
|
||||
// tk grab then use on self
|
||||
/obj/structure/closet/attack_self_tk(mob/user as mob)
|
||||
add_fingerprint(user)
|
||||
if(!toggle())
|
||||
to_chat(usr, "<span class='notice'>It won't budge!</span>")
|
||||
|
||||
/obj/structure/closet/verb/verb_toggleopen()
|
||||
set src in oview(1)
|
||||
set category = "Object"
|
||||
|
||||
@@ -11,8 +11,6 @@
|
||||
var/obj/item/grab/G = W
|
||||
MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet
|
||||
return 0
|
||||
if(istype(W,/obj/item/tk_grab))
|
||||
return 0
|
||||
if(!dropsafety(W))
|
||||
return
|
||||
if(W)
|
||||
|
||||
@@ -18,8 +18,6 @@
|
||||
var/obj/item/grab/G = W
|
||||
MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet
|
||||
return 0
|
||||
if(istype(W,/obj/item/tk_grab))
|
||||
return 0
|
||||
if(!dropsafety(W))
|
||||
return
|
||||
if(W)
|
||||
|
||||
@@ -50,16 +50,6 @@
|
||||
opened = !opened
|
||||
update_icon()
|
||||
|
||||
/obj/structure/extinguisher_cabinet/attack_tk(mob/user)
|
||||
if(has_extinguisher)
|
||||
has_extinguisher.forceMove(loc)
|
||||
to_chat(user, "<span class='notice'>You telekinetically remove [has_extinguisher] from [src].</span>")
|
||||
has_extinguisher = null
|
||||
opened = 1
|
||||
else
|
||||
opened = !opened
|
||||
update_icon()
|
||||
|
||||
/obj/structure/extinguisher_cabinet/update_icon()
|
||||
if(!opened)
|
||||
icon_state = "extinguisher_closed"
|
||||
@@ -71,3 +61,13 @@
|
||||
icon_state = "extinguisher_full"
|
||||
else
|
||||
icon_state = "extinguisher_empty"
|
||||
|
||||
/obj/structure/extinguisher_cabinet/do_simple_ranged_interaction(var/mob/user)
|
||||
if(has_extinguisher)
|
||||
has_extinguisher.dropInto(loc)
|
||||
has_extinguisher = null
|
||||
opened = 1
|
||||
else
|
||||
opened = !opened
|
||||
update_icon()
|
||||
return TRUE
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
rack_shotgun = null
|
||||
icon_state = "shotgun_rack"
|
||||
|
||||
/obj/structure/shotgun_rack/attack_tk(mob/user)
|
||||
/obj/structure/shotgun_rack/do_simple_ranged_interaction(var/mob/user)
|
||||
if(rack_shotgun)
|
||||
rack_shotgun.forceMove(loc)
|
||||
to_chat(user, "<span class='notice'>You telekinetically remove \the [rack_shotgun] from \the [src].</span>")
|
||||
|
||||
@@ -23,12 +23,10 @@
|
||||
SK.master = E
|
||||
qdel(src)
|
||||
|
||||
/obj/structure/bed/chair/attack_tk(mob/user as mob)
|
||||
if(buckled_mob)
|
||||
..()
|
||||
else
|
||||
rotate()
|
||||
return
|
||||
/obj/structure/bed/chair/do_simple_ranged_interaction(var/mob/user)
|
||||
if(!buckled_mob && user)
|
||||
rotate(user)
|
||||
return TRUE
|
||||
|
||||
/obj/structure/bed/chair/post_buckle_mob()
|
||||
update_icon()
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
opened = !opened
|
||||
update_icon()
|
||||
|
||||
/obj/structure/tranqcabinet/attack_tk(mob/user)
|
||||
/obj/structure/tranqcabinet/do_simple_ranged_interaction(var/mob/user)
|
||||
if(has_tranq)
|
||||
has_tranq.forceMove(loc)
|
||||
to_chat(user, "<span class='notice'>You telekinetically remove [has_tranq] from [src].</span>")
|
||||
|
||||
@@ -168,10 +168,6 @@
|
||||
step(src, get_dir(AM, src))
|
||||
take_damage(tforce)
|
||||
|
||||
/obj/structure/window/attack_tk(mob/user as mob)
|
||||
user.visible_message("<span class='notice'>Something knocks on [src].</span>")
|
||||
playsound(loc, 'sound/effects/Glasshit.ogg', 60, 1)
|
||||
|
||||
/obj/structure/window/attack_hand(mob/user as mob)
|
||||
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
|
||||
if(HULK in user.mutations)
|
||||
@@ -211,6 +207,11 @@
|
||||
user.do_attack_animation(src)
|
||||
return 1
|
||||
|
||||
/obj/structure/window/do_simple_ranged_interaction(var/mob/user)
|
||||
visible_message(span("notice", "Something knocks on \the [src]."))
|
||||
playsound(loc, 'sound/effects/Glasshit.ogg', 50, 1)
|
||||
return TRUE
|
||||
|
||||
/obj/structure/window/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if(!istype(W)) return//I really wish I did not need this
|
||||
if (istype(W, /obj/item/grab) && get_dist(src,user)<2)
|
||||
|
||||
Reference in New Issue
Block a user