modsuits part 1
This commit is contained in:
committed by
Jerry Wester
parent
792790216d
commit
183b554ed3
@@ -26,18 +26,22 @@
|
||||
user.visible_message("<span class='suicide'>[user] is trying to upload [user.p_them()]self into [src]! That's not going to work out well!</span>")
|
||||
return BRUTELOSS
|
||||
|
||||
/obj/item/aicard/afterattack(atom/target, mob/user, proximity)
|
||||
. = ..()
|
||||
if(!proximity || !target)
|
||||
return
|
||||
/obj/item/aicard/pre_attack(atom/target, mob/living/user, params)
|
||||
if(AI) //AI is on the card, implies user wants to upload it.
|
||||
log_combat(user, AI, "carded", src)
|
||||
var/our_ai = AI
|
||||
target.transfer_ai(AI_TRANS_FROM_CARD, user, AI, src)
|
||||
else //No AI on the card, therefore the user wants to download one.
|
||||
target.transfer_ai(AI_TRANS_TO_CARD, user, null, src)
|
||||
if(AI)
|
||||
log_combat(user, our_ai, "uploaded", src, "to [target].")
|
||||
return TRUE
|
||||
else //No AI on the card, therefore the user wants to download one.
|
||||
target.transfer_ai(AI_TRANS_TO_CARD, user, null, src)
|
||||
if(AI)
|
||||
log_combat(user, AI, "carded", src)
|
||||
update_icon() //Whatever happened, update the card's state (icon, name) to match.
|
||||
return TRUE
|
||||
update_appearance() //Whatever happened, update the card's state (icon, name) to match.
|
||||
return ..()
|
||||
|
||||
/obj/item/aicard/update_icon()
|
||||
cut_overlays()
|
||||
|
||||
@@ -53,7 +53,13 @@
|
||||
var/atom/movable/A = X
|
||||
if(A == wielder)
|
||||
continue
|
||||
if(A && !A.anchored && !ishuman(X))
|
||||
if(isliving(A))
|
||||
var/mob/living/vortexed_mob = A
|
||||
if(vortexed_mob.mob_negates_gravity())
|
||||
continue
|
||||
else
|
||||
vortexed_mob.Paralyze(2 SECONDS)
|
||||
if(!A.anchored && !isobserver(A))
|
||||
step_towards(A,pull)
|
||||
step_towards(A,pull)
|
||||
step_towards(A,pull)
|
||||
|
||||
@@ -5,9 +5,6 @@
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
var/component_type = /datum/component/storage/concrete
|
||||
|
||||
/obj/item/storage/get_dumping_location(obj/item/storage/source,mob/user)
|
||||
return src
|
||||
|
||||
/obj/item/storage/Initialize(mapload)
|
||||
. = ..()
|
||||
PopulateContents()
|
||||
|
||||
@@ -19,6 +19,25 @@
|
||||
ion_trail = new
|
||||
ion_trail.set_up(src)
|
||||
|
||||
/obj/item/tank/jetpack/Destroy()
|
||||
QDEL_NULL(ion_trail)
|
||||
return ..()
|
||||
|
||||
/obj/item/tank/jetpack/item_action_slot_check(slot)
|
||||
if(slot == ITEM_SLOT_BACK)
|
||||
return TRUE
|
||||
|
||||
/obj/item/tank/jetpack/equipped(mob/user, slot, initial)
|
||||
. = ..()
|
||||
if(on && slot != ITEM_SLOT_BACK)
|
||||
turn_off(user)
|
||||
|
||||
/obj/item/tank/jetpack/dropped(mob/user, silent)
|
||||
. = ..()
|
||||
if(on)
|
||||
turn_off(user)
|
||||
|
||||
|
||||
/obj/item/tank/jetpack/populate_gas()
|
||||
if(gas_type)
|
||||
air_contents.set_moles(gas_type, ((6 * ONE_ATMOSPHERE) * volume / (R_IDEAL_GAS_EQUATION * T20C)))
|
||||
@@ -53,6 +72,7 @@
|
||||
icon_state = "[initial(icon_state)]-on"
|
||||
ion_trail.start()
|
||||
RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/move_react)
|
||||
RegisterSignal(user, COMSIG_MOVABLE_SPACEMOVE, .proc/spacemove_react)
|
||||
if(full_speed)
|
||||
user.add_movespeed_modifier(/datum/movespeed_modifier/jetpack/fullspeed)
|
||||
else
|
||||
@@ -90,6 +110,13 @@
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/tank/jetpack/proc/spacemove_react(mob/user, movement_dir)
|
||||
SIGNAL_HANDLER
|
||||
|
||||
if(on && (movement_dir || stabilizers))
|
||||
return COMSIG_MOVABLE_STOP_SPACEMOVE
|
||||
|
||||
|
||||
/obj/item/tank/jetpack/improvised
|
||||
name = "improvised jetpack"
|
||||
desc = "A jetpack made from two air tanks, a fire extinguisher and some atmospherics equipment. It doesn't look like it can hold much."
|
||||
|
||||
Reference in New Issue
Block a user