mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-24 13:30:42 +01:00
.loc = to forceMove() (#4937)
As requested, this PR is changed to only include all .loc = to forceMove() changes.
This commit is contained in:
@@ -52,21 +52,21 @@
|
||||
var/atom/l = loc
|
||||
var/obj/machinery/computer/teleporter/com = locate(/obj/machinery/computer/teleporter, locate(l.x - 2, l.y, l.z))
|
||||
if(com.locked)
|
||||
user.loc = get_turf(com.locked)
|
||||
user.forceMove(get_turf(com.locked))
|
||||
|
||||
/obj/effect/portal/attack_ghost(mob/user as mob)
|
||||
if(target)
|
||||
user.loc = get_turf(target)
|
||||
user.forceMove(get_turf(target))
|
||||
|
||||
/obj/machinery/gateway/centerstation/attack_ghost(mob/user as mob)
|
||||
if(awaygate)
|
||||
user.loc = awaygate.loc
|
||||
user.forceMove(awaygate.loc)
|
||||
else
|
||||
user << "[src] has no destination."
|
||||
|
||||
/obj/machinery/gateway/centeraway/attack_ghost(mob/user as mob)
|
||||
if(stationgate)
|
||||
user.loc = stationgate.loc
|
||||
user.forceMove(stationgate.loc)
|
||||
else
|
||||
user << "[src] has no destination."
|
||||
|
||||
|
||||
@@ -84,7 +84,7 @@ var/const/tk_maxrange = 15
|
||||
/obj/item/tk_grab/dropped(mob/user as mob)
|
||||
if(focus && user && loc != user && loc != user.loc) // drop_item() gets called when you tk-attack a table/closet with an item
|
||||
if(focus.Adjacent(loc))
|
||||
focus.loc = loc
|
||||
focus.forceMove(loc)
|
||||
loc = null
|
||||
QDEL_IN(src, 1)
|
||||
return
|
||||
|
||||
@@ -345,13 +345,13 @@
|
||||
if(!joined_late || job.latejoin_at_spawnpoints)
|
||||
var/obj/S = get_roundstart_spawnpoint(rank)
|
||||
if(istype(S, /obj/effect/landmark/start) && istype(S.loc, /turf))
|
||||
H.loc = S.loc
|
||||
H.forceMove(S.loc)
|
||||
else
|
||||
LateSpawn(H, rank)
|
||||
|
||||
// Moving wheelchair if they have one
|
||||
if(H.buckled && istype(H.buckled, /obj/structure/bed/chair/wheelchair))
|
||||
H.buckled.loc = H.loc
|
||||
H.buckled.forceMove(H.loc)
|
||||
H.buckled.set_dir(H.dir)
|
||||
|
||||
// If they're head, give them the account info for their department
|
||||
@@ -694,14 +694,14 @@
|
||||
|
||||
if(spawnpos && istype(spawnpos))
|
||||
if(spawnpos.check_job_spawning(rank))
|
||||
H.loc = pick(spawnpos.turfs)
|
||||
H.forceMove(pick(spawnpos.turfs))
|
||||
. = spawnpos.msg
|
||||
else
|
||||
H << "Your chosen spawnpoint ([spawnpos.display_name]) is unavailable for your chosen job. Spawning you at the Arrivals shuttle instead."
|
||||
H.loc = pick(latejoin)
|
||||
H.forceMove(pick(latejoin))
|
||||
. = "is inbound from the [current_map.dock_name]"
|
||||
else
|
||||
H.loc = pick(latejoin)
|
||||
H.forceMove(pick(latejoin))
|
||||
. = "is inbound from the [current_map.dock_name]"
|
||||
|
||||
Debug("LS/([H]): Completed, spawning at area [H.loc.loc].")
|
||||
|
||||
@@ -35,5 +35,5 @@ BONUS
|
||||
M.emote("cough")
|
||||
var/obj/item/I = M.get_active_hand()
|
||||
if(I && I.w_class < 3)
|
||||
M.drop_item()
|
||||
M.drop_from_inventory(I)
|
||||
return
|
||||
@@ -117,6 +117,6 @@ STI KALY - blind
|
||||
return
|
||||
|
||||
affected_mob.say("SCYAR NILA [uppertext(thearea.name)]!")
|
||||
affected_mob.loc = pick(L)
|
||||
affected_mob.forceMove(pick(L))
|
||||
|
||||
return
|
||||
|
||||
@@ -141,7 +141,7 @@ var/list/wireColours = list("red", "blue", "green", "darkred", "orange", "brown"
|
||||
// Attach
|
||||
else
|
||||
if(istype(I, /obj/item/device/assembly/signaler))
|
||||
L.drop_item()
|
||||
usr.drop_from_inventory(I)
|
||||
Attach(colour, I)
|
||||
else
|
||||
L << "<span class='error'>You need a remote signaller!</span>"
|
||||
@@ -241,7 +241,7 @@ var/const/POWER = 8
|
||||
if(colour && S)
|
||||
if(!IsAttached(colour))
|
||||
signallers[colour] = S
|
||||
S.loc = holder
|
||||
S.forceMove(holder)
|
||||
S.connected = src
|
||||
return S
|
||||
|
||||
@@ -251,7 +251,7 @@ var/const/POWER = 8
|
||||
if(S)
|
||||
signallers -= colour
|
||||
S.connected = null
|
||||
S.loc = holder.loc
|
||||
S.forceMove(holder.loc)
|
||||
return S
|
||||
|
||||
|
||||
|
||||
+2
-2
@@ -11,8 +11,8 @@
|
||||
switch(alert("Travel back to ss13?",,"Yes","No"))
|
||||
if("Yes")
|
||||
if(user.z != src.z) return
|
||||
user.loc.loc.Exited(user)
|
||||
user.loc = pick(latejoin)
|
||||
user.loc.loc.Exited(user) //what the fuck is this
|
||||
user.forceMove(pick(latejoin))
|
||||
if("No")
|
||||
return
|
||||
|
||||
|
||||
@@ -269,7 +269,7 @@
|
||||
user.visible_message("<span class='warning'>[user] has unsheathed \a [concealed_blade] from \his [src]!</span>", "You unsheathe \the [concealed_blade] from \the [src].")
|
||||
// Calling drop/put in hands to properly call item drop/pickup procs
|
||||
playsound(user.loc, 'sound/weapons/blade_unsheath.ogg', 50, 1)
|
||||
user.drop_from_inventory(src)
|
||||
user.drop_from_inventory(src,enable_animations = FALSE)
|
||||
user.put_in_hands(concealed_blade)
|
||||
user.put_in_hands(src)
|
||||
user.update_inv_l_hand(0)
|
||||
@@ -284,7 +284,7 @@
|
||||
user.visible_message("<span class='warning'>[user] has sheathed \a [W] into \his [src]!</span>", "You sheathe \the [W] into \the [src].")
|
||||
playsound(user.loc, 'sound/weapons/blade_sheath.ogg', 50, 1)
|
||||
user.drop_from_inventory(W)
|
||||
W.loc = src
|
||||
W.forceMove(src)
|
||||
src.concealed_blade = W
|
||||
update_icon()
|
||||
else
|
||||
|
||||
@@ -267,14 +267,14 @@ var/datum/antagonist/raider/raiders
|
||||
if(!(primary.slot_flags & SLOT_HOLSTER))
|
||||
holster = new new_holster(T)
|
||||
holster.holstered = secondary
|
||||
secondary.loc = holster
|
||||
secondary.forceMove(holster)
|
||||
else
|
||||
player.equip_to_slot_or_del(secondary, slot_belt)
|
||||
|
||||
if(primary.slot_flags & SLOT_HOLSTER)
|
||||
holster = new new_holster(T)
|
||||
holster.holstered = primary
|
||||
primary.loc = holster
|
||||
primary.forceMove(holster)
|
||||
else if(!player.belt && (primary.slot_flags & SLOT_BELT))
|
||||
player.equip_to_slot_or_del(primary, slot_belt)
|
||||
else if(!player.back && (primary.slot_flags & SLOT_BACK))
|
||||
|
||||
@@ -80,7 +80,7 @@ var/datum/antagonist/cultist/cult
|
||||
break
|
||||
var/obj/item/weapon/storage/S = locate() in player.contents
|
||||
if(S && istype(S))
|
||||
T.loc = S
|
||||
T.forceMove(S)
|
||||
|
||||
/datum/antagonist/cultist/remove_antagonist(var/datum/mind/player, var/show_message, var/implanted)
|
||||
if(!..())
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
if (!isturf(C.loc))
|
||||
continue
|
||||
|
||||
if (C.loc.loc == src)
|
||||
if (C.loc.loc == src) //what the fuck is this
|
||||
. += C
|
||||
|
||||
/area/proc/atmosalert(danger_level, var/alarm_source)
|
||||
|
||||
@@ -84,10 +84,10 @@
|
||||
src.go_out()
|
||||
for(var/obj/O in src)
|
||||
if((!istype(O,/obj/item/weapon/reagent_containers)) && (!istype(O,/obj/item/weapon/circuitboard/clonescanner)) && (!istype(O,/obj/item/weapon/stock_parts)) && (!iscoil(O)))
|
||||
O.loc = get_turf(src)//Ejects items that manage to get in there (exluding the components)
|
||||
O.forceMove(get_turf(src))//Ejects items that manage to get in there (exluding the components)
|
||||
if(!occupant)
|
||||
for(var/mob/M in src)//Failsafe so you can get mobs out
|
||||
M.loc = get_turf(src)
|
||||
M.forceMove(get_turf(src))
|
||||
|
||||
/obj/machinery/dna_scannernew/verb/move_inside()
|
||||
set src in oview(1)
|
||||
@@ -108,7 +108,7 @@
|
||||
usr.stop_pulling()
|
||||
usr.client.perspective = EYE_PERSPECTIVE
|
||||
usr.client.eye = src
|
||||
usr.loc = src
|
||||
usr.forceMove(src)
|
||||
src.occupant = usr
|
||||
src.icon_state = "scanner_1"
|
||||
src.add_fingerprint(usr)
|
||||
@@ -121,8 +121,7 @@
|
||||
return
|
||||
|
||||
beaker = item
|
||||
user.drop_item()
|
||||
item.loc = src
|
||||
user.drop_from_inventory(item,src)
|
||||
user.visible_message("\The [user] adds \a [item] to \the [src]!", "You add \a [item] to \the [src]!")
|
||||
return
|
||||
else if (!istype(item, /obj/item/weapon/grab))
|
||||
@@ -145,7 +144,7 @@
|
||||
if(M.client)
|
||||
M.client.perspective = EYE_PERSPECTIVE
|
||||
M.client.eye = src
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
src.occupant = M
|
||||
src.icon_state = "scanner_1"
|
||||
|
||||
@@ -168,7 +167,7 @@
|
||||
if (src.occupant.client)
|
||||
src.occupant.client.eye = src.occupant.client.mob
|
||||
src.occupant.client.perspective = MOB_PERSPECTIVE
|
||||
src.occupant.loc = src.loc
|
||||
src.occupant.forceMove(src.loc)
|
||||
src.occupant = null
|
||||
src.icon_state = "scanner_0"
|
||||
return
|
||||
@@ -177,7 +176,7 @@
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(src.loc)
|
||||
ex_act(severity)
|
||||
//Foreach goto(35)
|
||||
//SN src = null
|
||||
@@ -186,7 +185,7 @@
|
||||
if(2.0)
|
||||
if (prob(50))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(src.loc)
|
||||
ex_act(severity)
|
||||
//Foreach goto(108)
|
||||
//SN src = null
|
||||
@@ -195,7 +194,7 @@
|
||||
if(3.0)
|
||||
if (prob(25))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(src.loc)
|
||||
ex_act(severity)
|
||||
//Foreach goto(181)
|
||||
//SN src = null
|
||||
@@ -234,8 +233,7 @@
|
||||
/obj/machinery/computer/scan_consolenew/attackby(obj/item/I as obj, mob/user as mob)
|
||||
if (istype(I, /obj/item/weapon/disk/data)) //INSERT SOME diskS
|
||||
if (!src.disk)
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
user.drop_from_inventory(I,src)
|
||||
src.disk = I
|
||||
user << "You insert [I]."
|
||||
SSnanoui.update_uis(src) // update all UIs attached to src
|
||||
@@ -632,7 +630,7 @@
|
||||
if(href_list["ejectBeaker"])
|
||||
if(connected.beaker)
|
||||
var/obj/item/weapon/reagent_containers/glass/B = connected.beaker
|
||||
B.loc = connected.loc
|
||||
B.forceMove(connected.loc)
|
||||
connected.beaker = null
|
||||
return 1
|
||||
|
||||
@@ -657,7 +655,7 @@
|
||||
if (bufferOption == "ejectDisk")
|
||||
if (!src.disk)
|
||||
return
|
||||
src.disk.loc = get_turf(src)
|
||||
src.disk.forceMove(get_turf(src))
|
||||
src.disk = null
|
||||
return 1
|
||||
|
||||
@@ -761,7 +759,7 @@
|
||||
I.buf = buf
|
||||
waiting_for_user_input=0
|
||||
if(success)
|
||||
I.loc = src.loc
|
||||
I.forceMove(src.loc)
|
||||
I.name += " ([buf.name])"
|
||||
//src.temphtml = "Injector created."
|
||||
src.injector_ready = 0
|
||||
|
||||
@@ -384,7 +384,7 @@ var/global/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","E
|
||||
for(var/obj/T in C)
|
||||
qdel(T)
|
||||
|
||||
O.loc = C.loc
|
||||
O.forceMove(C.loc)
|
||||
|
||||
O.UpdateAppearance()
|
||||
domutcheck(O, null)
|
||||
@@ -394,7 +394,7 @@ var/global/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","E
|
||||
O.adjustFireLoss(C.getFireLoss())
|
||||
O.stat = C.stat
|
||||
for (var/obj/item/weapon/implant/I in implants)
|
||||
I.loc = O
|
||||
I.forceMove(O)
|
||||
I.implanted = O
|
||||
|
||||
C.mind.transfer_to(O)
|
||||
|
||||
@@ -479,8 +479,6 @@ var/global/list/rnwords = list("ire","ego","nahlizet","certum","veri","jatkaa","
|
||||
R.word1=cultwords["travel"]
|
||||
R.word2=cultwords["self"]
|
||||
R.word3=beacon
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("itemport")
|
||||
var/list/words = list("ire", "ego", "nahlizet", "certum", "veri", "jatkaa", "balaq", "mgar", "karazet", "geeri")
|
||||
var/beacon
|
||||
@@ -489,137 +487,93 @@ var/global/list/rnwords = list("ire","ego","nahlizet","certum","veri","jatkaa","
|
||||
R.word1=cultwords["travel"]
|
||||
R.word2=cultwords["other"]
|
||||
R.word3=beacon
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("tome")
|
||||
R.word1=cultwords["see"]
|
||||
R.word2=cultwords["blood"]
|
||||
R.word3=cultwords["hell"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("armor")
|
||||
R.word1=cultwords["hell"]
|
||||
R.word2=cultwords["destroy"]
|
||||
R.word3=cultwords["other"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("convert")
|
||||
R.word1=cultwords["join"]
|
||||
R.word2=cultwords["blood"]
|
||||
R.word3=cultwords["self"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("tear in reality")
|
||||
R.word1=cultwords["hell"]
|
||||
R.word2=cultwords["join"]
|
||||
R.word3=cultwords["self"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("emp")
|
||||
R.word1=cultwords["destroy"]
|
||||
R.word2=cultwords["see"]
|
||||
R.word3=cultwords["technology"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("drain")
|
||||
R.word1=cultwords["travel"]
|
||||
R.word2=cultwords["blood"]
|
||||
R.word3=cultwords["self"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("seer")
|
||||
R.word1=cultwords["see"]
|
||||
R.word2=cultwords["hell"]
|
||||
R.word3=cultwords["join"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("raise")
|
||||
R.word1=cultwords["blood"]
|
||||
R.word2=cultwords["join"]
|
||||
R.word3=cultwords["hell"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("obscure")
|
||||
R.word1=cultwords["hide"]
|
||||
R.word2=cultwords["see"]
|
||||
R.word3=cultwords["blood"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("astral journey")
|
||||
R.word1=cultwords["hell"]
|
||||
R.word2=cultwords["travel"]
|
||||
R.word3=cultwords["self"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("manifest")
|
||||
R.word1=cultwords["blood"]
|
||||
R.word2=cultwords["see"]
|
||||
R.word3=cultwords["travel"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("imbue talisman")
|
||||
R.word1=cultwords["hell"]
|
||||
R.word2=cultwords["technology"]
|
||||
R.word3=cultwords["join"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("sacrifice")
|
||||
R.word1=cultwords["hell"]
|
||||
R.word2=cultwords["blood"]
|
||||
R.word3=cultwords["join"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("reveal")
|
||||
R.word1=cultwords["blood"]
|
||||
R.word2=cultwords["see"]
|
||||
R.word3=cultwords["hide"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("wall")
|
||||
R.word1=cultwords["destroy"]
|
||||
R.word2=cultwords["travel"]
|
||||
R.word3=cultwords["self"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("freedom")
|
||||
R.word1=cultwords["travel"]
|
||||
R.word2=cultwords["technology"]
|
||||
R.word3=cultwords["other"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("cultsummon")
|
||||
R.word1=cultwords["join"]
|
||||
R.word2=cultwords["other"]
|
||||
R.word3=cultwords["self"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("deafen")
|
||||
R.word1=cultwords["hide"]
|
||||
R.word2=cultwords["other"]
|
||||
R.word3=cultwords["see"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("blind")
|
||||
R.word1=cultwords["destroy"]
|
||||
R.word2=cultwords["see"]
|
||||
R.word3=cultwords["other"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("bloodboil")
|
||||
R.word1=cultwords["destroy"]
|
||||
R.word2=cultwords["see"]
|
||||
R.word3=cultwords["blood"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("communicate")
|
||||
R.word1=cultwords["self"]
|
||||
R.word2=cultwords["other"]
|
||||
R.word3=cultwords["technology"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
if("stun")
|
||||
R.word1=cultwords["join"]
|
||||
R.word2=cultwords["hide"]
|
||||
R.word3=cultwords["technology"]
|
||||
R.loc = user.loc
|
||||
R.check_icon()
|
||||
R.forceMove(user.loc)
|
||||
R.check_icon()
|
||||
|
||||
@@ -38,7 +38,7 @@ var/list/sacrificed = list()
|
||||
user.visible_message("<span class='danger'>[user] disappears in a flash of red light!</span>", \
|
||||
"<span class='danger'>You feel as your body gets dragged through the dimension of Nar-Sie!</span>", \
|
||||
"<span class='danger'>You hear a sickening crunch and sloshing of viscera.</span>")
|
||||
user.loc = allrunesloc[rand(1,index)]
|
||||
user.forceMove(allrunesloc[rand(1,index)])
|
||||
return
|
||||
if(istype(src,/obj/effect/rune))
|
||||
return fizzle(user) //Use friggin manuals, Dorf, your list was of zero length.
|
||||
@@ -76,9 +76,9 @@ var/list/sacrificed = list()
|
||||
"<span class='warning'>You smell ozone.</span>")
|
||||
for(var/obj/O in src.loc)
|
||||
if(!O.anchored)
|
||||
O.loc = IP.loc
|
||||
O.forceMove(IP.loc)
|
||||
for(var/mob/M in src.loc)
|
||||
M.loc = IP.loc
|
||||
M.forceMove(IP.loc)
|
||||
return
|
||||
|
||||
return fizzle(user)
|
||||
@@ -880,7 +880,7 @@ var/list/sacrificed = list()
|
||||
if(cultist.buckled || cultist.handcuffed || (!isturf(cultist.loc) && !istype(cultist.loc, /obj/structure/closet)))
|
||||
user << "<span class='warning'>You cannot summon \the [cultist], for \his shackles of blood are strong.</span>"
|
||||
return fizzle(user)
|
||||
cultist.loc = src.loc
|
||||
cultist.forceMove(src.loc)
|
||||
cultist.lying = 1
|
||||
cultist.regenerate_icons()
|
||||
|
||||
|
||||
@@ -98,7 +98,7 @@
|
||||
|
||||
playsound(src, 'sound/effects/supermatter.ogg', 50, 1)
|
||||
|
||||
user.drop_from_inventory(W)
|
||||
user.drop_from_inventory(W,src)
|
||||
Consume(W)
|
||||
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
if(L.buckled && istype(L.buckled,/obj/structure/bed/))
|
||||
var/turf/O = L.buckled
|
||||
do_teleport(O, pick(endgame_safespawns))
|
||||
L.loc = O.loc
|
||||
L.forceMove(O.loc)
|
||||
else
|
||||
do_teleport(L, pick(endgame_safespawns)) //dead-on precision
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ In my current plan for it, 'solid' will be defined as anything with density == 1
|
||||
qdel(src)
|
||||
|
||||
if(clong && prob(25))
|
||||
src.loc = clong.loc
|
||||
src.forceMove(clong.loc)
|
||||
|
||||
/proc/immovablerod()
|
||||
var/startx = 0
|
||||
|
||||
@@ -62,25 +62,25 @@ datum/hSB
|
||||
if("hsbsuit")
|
||||
var/mob/living/carbon/human/P = usr
|
||||
if(P.wear_suit)
|
||||
P.wear_suit.loc = P.loc
|
||||
P.wear_suit.forceMove(P.loc)
|
||||
P.wear_suit.layer = initial(P.wear_suit.layer)
|
||||
P.wear_suit = null
|
||||
P.wear_suit = new/obj/item/clothing/suit/space(P)
|
||||
P.wear_suit.layer = 20
|
||||
if(P.head)
|
||||
P.head.loc = P.loc
|
||||
P.head.forceMove(P.loc)
|
||||
P.head.layer = initial(P.head.layer)
|
||||
P.head = null
|
||||
P.head = new/obj/item/clothing/head/helmet/space(P)
|
||||
P.head.layer = 20
|
||||
if(P.wear_mask)
|
||||
P.wear_mask.loc = P.loc
|
||||
P.wear_mask.forceMove(P.loc)
|
||||
P.wear_mask.layer = initial(P.wear_mask.layer)
|
||||
P.wear_mask = null
|
||||
P.wear_mask = new/obj/item/clothing/mask/gas(P)
|
||||
P.wear_mask.layer = 20
|
||||
if(P.back)
|
||||
P.back.loc = P.loc
|
||||
P.back.forceMove(P.loc)
|
||||
P.back.layer = initial(P.back.layer)
|
||||
P.back = null
|
||||
P.back = new/obj/item/weapon/tank/jetpack(P)
|
||||
@@ -89,11 +89,11 @@ datum/hSB
|
||||
if("hsbmetal")
|
||||
var/obj/item/stack/sheet/hsb = new/obj/item/stack/sheet/metal
|
||||
hsb.amount = 50
|
||||
hsb.loc = usr.loc
|
||||
hsb.forceMove(usr.loc)
|
||||
if("hsbglass")
|
||||
var/obj/item/stack/sheet/hsb = new/obj/item/stack/sheet/glass
|
||||
hsb.amount = 50
|
||||
hsb.loc = usr.loc
|
||||
hsb.forceMove(usr.loc)
|
||||
if("hsbairlock")
|
||||
var/obj/machinery/door/hsb = new/obj/machinery/door/airlock
|
||||
|
||||
@@ -104,7 +104,7 @@ datum/hSB
|
||||
if(alert(usr, "Will this airlock require [get_access_desc(A)] access?", "Sandbox:", "Yes", "No") == "Yes")
|
||||
hsb.req_access += A
|
||||
|
||||
hsb.loc = usr.loc
|
||||
hsb.forceMove(usr.loc)
|
||||
usr << "<b>Sandbox: Created an airlock.</b>"
|
||||
if("hsbcanister")
|
||||
var/list/hsbcanisters = typesof(/obj/machinery/portable_atmospherics/canister/) - /obj/machinery/portable_atmospherics/canister/
|
||||
@@ -113,19 +113,19 @@ datum/hSB
|
||||
new hsbcanister(usr.loc)
|
||||
if("hsbfueltank")
|
||||
//var/obj/hsb = new/obj/weldfueltank
|
||||
//hsb.loc = usr.loc
|
||||
//hsb.forceMove(usr.loc)
|
||||
if("hsbwatertank")
|
||||
//var/obj/hsb = new/obj/watertank
|
||||
//hsb.loc = usr.loc
|
||||
//hsb.forceMove(usr.loc)
|
||||
if("hsbtoolbox")
|
||||
var/obj/item/weapon/storage/hsb = new/obj/item/weapon/storage/toolbox/mechanical
|
||||
for(var/obj/item/device/radio/T in hsb)
|
||||
qdel(T)
|
||||
new/obj/item/weapon/crowbar (hsb)
|
||||
hsb.loc = usr.loc
|
||||
hsb.forceMove(usr.loc)
|
||||
if("hsbmedkit")
|
||||
var/obj/item/weapon/storage/firstaid/hsb = new/obj/item/weapon/storage/firstaid/regular
|
||||
hsb.loc = usr.loc
|
||||
hsb.forceMove(usr.loc)
|
||||
if("hsbobj")
|
||||
if(!hsboxspawn) return
|
||||
|
||||
|
||||
@@ -453,7 +453,7 @@
|
||||
icon_state = "veil_ghost"
|
||||
|
||||
last_valid_turf = get_turf(owner.loc)
|
||||
owner.loc = src
|
||||
owner.forceMove(src)
|
||||
|
||||
desc += " Its features look faintly alike [owner.name]'s."
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
var/turf/T = loc
|
||||
Beacon = new /obj/item/device/radio/beacon
|
||||
Beacon.invisibility = INVISIBILITY_MAXIMUM
|
||||
Beacon.loc = T
|
||||
Beacon.forceMove(T)
|
||||
|
||||
hide(!T.is_plating())
|
||||
|
||||
@@ -45,10 +45,10 @@
|
||||
var/turf/T = loc
|
||||
Beacon = new /obj/item/device/radio/beacon
|
||||
Beacon.invisibility = INVISIBILITY_MAXIMUM
|
||||
Beacon.loc = T
|
||||
Beacon.forceMove(T)
|
||||
if(Beacon)
|
||||
if(Beacon.loc != loc)
|
||||
Beacon.loc = loc
|
||||
Beacon.forceMove(loc)
|
||||
|
||||
updateicon()
|
||||
|
||||
|
||||
@@ -57,11 +57,9 @@
|
||||
|
||||
/obj/machinery/optable/MouseDrop_T(obj/O as obj, mob/user as mob)
|
||||
|
||||
if ((!( istype(O, /obj/item/weapon) ) || user.get_active_hand() != O))
|
||||
if (!istype(O, /obj/item/weapon))
|
||||
return
|
||||
user.drop_item()
|
||||
if (O.loc != src.loc)
|
||||
step(O, get_dir(O, src))
|
||||
user.drop_from_inventory(O,get_turf(src))
|
||||
return
|
||||
|
||||
/obj/machinery/optable/proc/check_victim()
|
||||
@@ -87,9 +85,9 @@
|
||||
C.client.perspective = EYE_PERSPECTIVE
|
||||
C.client.eye = src
|
||||
C.resting = 1
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
for(var/obj/O in src)
|
||||
O.loc = src.loc
|
||||
O.forceMove(src.loc)
|
||||
src.add_fingerprint(user)
|
||||
if(ishuman(C))
|
||||
var/mob/living/carbon/human/H = C
|
||||
|
||||
@@ -146,8 +146,7 @@
|
||||
if(istype(I, /obj/item/weapon/reagent_containers/glass))
|
||||
if(!beaker)
|
||||
beaker = I
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
user.drop_from_inventory(I,src)
|
||||
user.visible_message("<span class='notice'>\The [user] adds \a [I] to \the [src].</span>", "<span class='notice'>You add \a [I] to \the [src].</span>")
|
||||
else
|
||||
user << "<span class='warning'>\The [src] has a beaker already.</span>"
|
||||
@@ -236,7 +235,7 @@
|
||||
if(M.client)
|
||||
M.client.perspective = EYE_PERSPECTIVE
|
||||
M.client.eye = src
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
update_use_power(2)
|
||||
occupant = M
|
||||
update_icon()
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
usr.pulling = null
|
||||
usr.client.perspective = EYE_PERSPECTIVE
|
||||
usr.client.eye = src
|
||||
usr.loc = src
|
||||
usr.forceMove(src)
|
||||
src.occupant = usr
|
||||
update_use_power(2)
|
||||
src.icon_state = "body_scanner_1"
|
||||
@@ -84,12 +84,12 @@
|
||||
|
||||
last_occupant_name = src.occupant.name
|
||||
for(var/obj/O in src)
|
||||
O.loc = src.loc
|
||||
O.forceMove(src.loc)
|
||||
//Foreach goto(30)
|
||||
if (src.occupant.client)
|
||||
src.occupant.client.eye = src.occupant.client.mob
|
||||
src.occupant.client.perspective = MOB_PERSPECTIVE
|
||||
src.occupant.loc = src.loc
|
||||
src.occupant.forceMove(src.loc)
|
||||
src.occupant = null
|
||||
update_use_power(1)
|
||||
src.icon_state = "body_scanner_0"
|
||||
@@ -162,12 +162,12 @@
|
||||
if (M.client)
|
||||
M.client.perspective = EYE_PERSPECTIVE
|
||||
M.client.eye = src
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
src.occupant = M
|
||||
update_use_power(2)
|
||||
src.icon_state = "body_scanner_1"
|
||||
for(var/obj/Obj in src)
|
||||
Obj.loc = src.loc
|
||||
Obj.forceMove(src.loc)
|
||||
//Foreach goto(154)
|
||||
src.add_fingerprint(user)
|
||||
//G = null
|
||||
@@ -177,7 +177,7 @@
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(src.loc)
|
||||
ex_act(severity)
|
||||
//Foreach goto(35)
|
||||
//SN src = null
|
||||
@@ -186,7 +186,7 @@
|
||||
if(2.0)
|
||||
if (prob(50))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(src.loc)
|
||||
ex_act(severity)
|
||||
//Foreach goto(108)
|
||||
//SN src = null
|
||||
@@ -195,7 +195,7 @@
|
||||
if(3.0)
|
||||
if (prob(25))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = src.loc
|
||||
A.forceMove(src.loc)
|
||||
ex_act(severity)
|
||||
//Foreach goto(181)
|
||||
//SN src = null
|
||||
|
||||
@@ -796,7 +796,7 @@
|
||||
if(do_after(user,20))
|
||||
user << "You pry out the circuit!"
|
||||
var/obj/item/weapon/airalarm_electronics/circuit = new /obj/item/weapon/airalarm_electronics()
|
||||
circuit.loc = user.loc
|
||||
circuit.forceMove(user.loc)
|
||||
buildstage = 0
|
||||
update_icon()
|
||||
return
|
||||
|
||||
@@ -178,7 +178,7 @@ update_flag
|
||||
update_icon()
|
||||
|
||||
if (src.holding)
|
||||
src.holding.loc = src.loc
|
||||
src.holding.forceMove(src.loc)
|
||||
src.holding = null
|
||||
|
||||
return 1
|
||||
@@ -354,7 +354,7 @@ update_flag
|
||||
release_log += "Valve was <b>closed</b> by [usr] ([usr.ckey]), stopping the transfer into the [holding]<br>"
|
||||
if(istype(holding, /obj/item/weapon/tank))
|
||||
holding.manipulated_by = usr.real_name
|
||||
holding.loc = loc
|
||||
holding.forceMove(loc)
|
||||
holding = null
|
||||
|
||||
if (href_list["pressure_adj"])
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
air_contents.volume = volume
|
||||
air_contents.temperature = T20C
|
||||
|
||||
|
||||
var/obj/machinery/atmospherics/portables_connector/port = locate() in loc
|
||||
if(port)
|
||||
connect(port)
|
||||
@@ -103,8 +103,7 @@
|
||||
if (src.holding)
|
||||
return
|
||||
var/obj/item/weapon/tank/T = W
|
||||
user.drop_item()
|
||||
T.loc = src
|
||||
user.drop_from_inventory(T,src)
|
||||
src.holding = T
|
||||
update_icon()
|
||||
return
|
||||
@@ -160,10 +159,9 @@
|
||||
|
||||
var/obj/item/weapon/cell/C = I
|
||||
|
||||
user.drop_item()
|
||||
user.drop_from_inventory(C,src)
|
||||
C.add_fingerprint(user)
|
||||
cell = C
|
||||
C.loc = src
|
||||
user.visible_message("<span class='notice'>[user] opens the panel on [src] and inserts [C].</span>", "<span class='notice'>You open the panel on [src] and insert [C].</span>")
|
||||
power_change()
|
||||
return
|
||||
@@ -175,7 +173,7 @@
|
||||
|
||||
user.visible_message("<span class='notice'>[user] opens the panel on [src] and removes [cell].</span>", "<span class='notice'>You open the panel on [src] and remove [cell].</span>")
|
||||
cell.add_fingerprint(user)
|
||||
cell.loc = src.loc
|
||||
cell.forceMove(src.loc)
|
||||
cell = null
|
||||
power_change()
|
||||
return
|
||||
|
||||
@@ -158,7 +158,7 @@
|
||||
. = 1
|
||||
if (href_list["remove_tank"])
|
||||
if(holding)
|
||||
holding.loc = loc
|
||||
holding.forceMove(loc)
|
||||
holding = null
|
||||
. = 1
|
||||
if (href_list["pressure_adj"])
|
||||
|
||||
@@ -132,7 +132,7 @@
|
||||
. = 1
|
||||
if (href_list["remove_tank"])
|
||||
if(holding)
|
||||
holding.loc = loc
|
||||
holding.forceMove(loc)
|
||||
holding = null
|
||||
. = 1
|
||||
if (href_list["volume_adj"])
|
||||
|
||||
@@ -319,7 +319,7 @@
|
||||
user << "<span class='notice'>]The [src] is already loaded.</span>"
|
||||
else
|
||||
user.remove_from_mob(O)
|
||||
O.loc = src
|
||||
O.forceMove(src)
|
||||
beaker = O
|
||||
updateUsrDialog()
|
||||
else if(processing)
|
||||
@@ -355,7 +355,7 @@
|
||||
user << "<span class='notice'>\The [src] is full! Activate it.</span>"
|
||||
else
|
||||
user.remove_from_mob(O)
|
||||
O.loc = src
|
||||
O.forceMove(src)
|
||||
user << "<span class='notice'>You put \the [O] in \the [src]</span>"
|
||||
update_icon()
|
||||
return
|
||||
@@ -507,7 +507,7 @@
|
||||
activate()
|
||||
if("detach")
|
||||
if(beaker)
|
||||
beaker.loc = src.loc
|
||||
beaker.forceMove(src.loc)
|
||||
beaker = null
|
||||
update_icon()
|
||||
if("create")
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
// Meat for biomass.
|
||||
if(!prints_prosthetics && istype(W, /obj/item/weapon/reagent_containers/food/snacks/meat))
|
||||
stored_matter += 50
|
||||
user.drop_item()
|
||||
user.drop_from_inventory(W,src)
|
||||
user << "<span class='info'>\The [src] processes \the [W]. Levels of stored biomass now: [stored_matter]</span>"
|
||||
qdel(W)
|
||||
return
|
||||
@@ -78,9 +78,9 @@
|
||||
if(prints_prosthetics && istype(W, /obj/item/stack/material) && W.get_material_name() == DEFAULT_WALL_MATERIAL)
|
||||
var/obj/item/stack/S = W
|
||||
stored_matter += S.amount * 10
|
||||
user.drop_item()
|
||||
user.drop_from_inventory(W,src)
|
||||
user << "<span class='info'>\The [src] processes \the [W]. Levels of stored matter now: [stored_matter]</span>"
|
||||
qdel(W)
|
||||
return
|
||||
|
||||
|
||||
return..()
|
||||
|
||||
@@ -90,8 +90,7 @@
|
||||
/obj/machinery/bot/mulebot/attackby(var/obj/item/I, var/mob/user)
|
||||
if(istype(I,/obj/item/weapon/cell) && open && !cell)
|
||||
var/obj/item/weapon/cell/C = I
|
||||
user.drop_item()
|
||||
C.loc = src
|
||||
user.drop_from_inventory(C,src)
|
||||
cell = C
|
||||
updateDialog()
|
||||
else if(isscrewdriver(I))
|
||||
@@ -276,9 +275,8 @@
|
||||
if(open && !cell)
|
||||
var/obj/item/weapon/cell/C = usr.get_active_hand()
|
||||
if(istype(C))
|
||||
usr.drop_item()
|
||||
usr.drop_from_inventory(C,src)
|
||||
cell = C
|
||||
C.loc = src
|
||||
C.add_fingerprint(usr)
|
||||
|
||||
usr.visible_message("<span class='notice'>[usr] inserts a power cell into [src].</span>", "<span class='notice'>You insert the power cell into [src].</span>")
|
||||
@@ -405,11 +403,11 @@
|
||||
if(istype(crate))
|
||||
crate.close()
|
||||
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
sleep(2)
|
||||
if(C.loc != src.loc) //To prevent you from going onto more thano ne bot.
|
||||
return
|
||||
C.loc = src
|
||||
C.forceMove(src)
|
||||
load = C
|
||||
|
||||
C.pixel_y += 9
|
||||
@@ -436,7 +434,7 @@
|
||||
mode = 1
|
||||
cut_overlays()
|
||||
|
||||
load.loc = src.loc
|
||||
load.forceMove(src.loc)
|
||||
load.pixel_y -= 9
|
||||
load.layer = initial(load.layer)
|
||||
if(ismob(load))
|
||||
@@ -452,7 +450,7 @@
|
||||
if(CanPass(load,T))//Can't get off onto anything that wouldn't let you pass normally
|
||||
step(load, dirn)
|
||||
else
|
||||
load.loc = src.loc//Drops you right there, so you shouldn't be able to get yourself stuck
|
||||
load.forceMove(src.loc)//Drops you right there, so you shouldn't be able to get yourself stuck
|
||||
|
||||
load = null
|
||||
|
||||
@@ -463,7 +461,7 @@
|
||||
for(var/atom/movable/AM in src)
|
||||
if(AM == cell || AM == botcard) continue
|
||||
|
||||
AM.loc = src.loc
|
||||
AM.forceMove(src.loc)
|
||||
AM.layer = initial(AM.layer)
|
||||
AM.pixel_y = initial(AM.pixel_y)
|
||||
if(ismob(AM))
|
||||
@@ -869,7 +867,7 @@
|
||||
new /obj/item/stack/rods(Tsec)
|
||||
new /obj/item/stack/cable_coil/cut(Tsec)
|
||||
if (cell)
|
||||
cell.loc = Tsec
|
||||
cell.forceMove(Tsec)
|
||||
cell.update_icon()
|
||||
cell = null
|
||||
|
||||
|
||||
@@ -144,7 +144,7 @@
|
||||
else if(iswelder(W) && (wires.CanDeconstruct() || (stat & BROKEN)))
|
||||
if(weld(W, user))
|
||||
if(assembly)
|
||||
assembly.loc = src.loc
|
||||
assembly.forceMove(src.loc)
|
||||
assembly.anchored = 1
|
||||
assembly.camera_name = c_tag
|
||||
assembly.camera_network = english_list(network, "Station", ",", ",")
|
||||
|
||||
@@ -96,7 +96,7 @@
|
||||
|
||||
state = 4
|
||||
var/obj/machinery/camera/C = new(src.loc)
|
||||
src.loc = C
|
||||
src.forceMove(C)
|
||||
C.assembly = src
|
||||
|
||||
C.auto_turn()
|
||||
@@ -128,7 +128,7 @@
|
||||
user << "You attach \the [W] into the assembly inner circuits."
|
||||
upgrades += W
|
||||
user.remove_from_mob(W)
|
||||
W.loc = src
|
||||
W.forceMove(src)
|
||||
return
|
||||
|
||||
// Taking out upgrades
|
||||
@@ -137,7 +137,7 @@
|
||||
if(U)
|
||||
user << "You unattach an upgrade from the assembly."
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1)
|
||||
U.loc = get_turf(src)
|
||||
U.forceMove(get_turf(src))
|
||||
upgrades -= U
|
||||
return
|
||||
|
||||
|
||||
@@ -53,8 +53,7 @@
|
||||
user << "<span class='warning'>The [name] blinks red as you try to insert the cell!</span>"
|
||||
return
|
||||
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
user.drop_from_inventory(W,src)
|
||||
charging = W
|
||||
user.visible_message("[user] inserts a cell into the charger.", "You insert a cell into the charger.")
|
||||
chargelevel = -1
|
||||
|
||||
@@ -235,7 +235,7 @@
|
||||
else if(istype(W, /obj/item/weapon/reagent_containers/food/snacks/meat))
|
||||
user << "<span class='notice'>\The [src] processes \the [W].</span>"
|
||||
biomass += 50
|
||||
user.drop_item()
|
||||
user.drop_from_inventory(W,src)
|
||||
qdel(W)
|
||||
return
|
||||
else if(iswrench(W))
|
||||
@@ -313,7 +313,7 @@
|
||||
if(occupant.client)
|
||||
occupant.client.eye = occupant.client.mob
|
||||
occupant.client.perspective = MOB_PERSPECTIVE
|
||||
occupant.loc = loc
|
||||
occupant.forceMove(loc)
|
||||
eject_wait = 0 //If it's still set somehow.
|
||||
domutcheck(occupant) //Waiting until they're out before possible transforming.
|
||||
occupant = null
|
||||
@@ -347,21 +347,21 @@
|
||||
switch(severity)
|
||||
if(1.0)
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = loc
|
||||
A.forceMove(loc)
|
||||
ex_act(severity)
|
||||
qdel(src)
|
||||
return
|
||||
if(2.0)
|
||||
if(prob(50))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = loc
|
||||
A.forceMove(loc)
|
||||
ex_act(severity)
|
||||
qdel(src)
|
||||
return
|
||||
if(3.0)
|
||||
if(prob(25))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.loc = loc
|
||||
A.forceMove(loc)
|
||||
ex_act(severity)
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
@@ -43,8 +43,7 @@
|
||||
user << "<span class='notice'>You place the circuit board inside the frame.</span>"
|
||||
icon_state = "1"
|
||||
circuit = P
|
||||
user.drop_item()
|
||||
P.loc = src
|
||||
user.drop_from_inventory(P,src)
|
||||
if(isscrewdriver(P) && circuit)
|
||||
playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
|
||||
user << "<span class='notice'>You screw the circuit board into place.</span>"
|
||||
@@ -55,7 +54,7 @@
|
||||
user << "<span class='notice'>You remove the circuit board.</span>"
|
||||
state = 1
|
||||
icon_state = "0"
|
||||
circuit.loc = loc
|
||||
circuit.forceMove(loc)
|
||||
circuit = null
|
||||
if(2)
|
||||
if(isscrewdriver(P) && circuit)
|
||||
@@ -139,8 +138,7 @@
|
||||
if(M.brainmob.mind)
|
||||
clear_antag_roles(M.brainmob.mind, 1)
|
||||
|
||||
user.drop_item()
|
||||
P.loc = src
|
||||
user.drop_from_inventory(P,src)
|
||||
brain = P
|
||||
usr << "Added [P]."
|
||||
icon_state = "3b"
|
||||
@@ -148,7 +146,7 @@
|
||||
if(iscrowbar(P) && brain)
|
||||
playsound(loc, 'sound/items/Crowbar.ogg', 50, 1)
|
||||
user << "<span class='notice'>You remove the brain.</span>"
|
||||
brain.loc = loc
|
||||
brain.forceMove(loc)
|
||||
brain = null
|
||||
icon_state = "3"
|
||||
|
||||
@@ -200,7 +198,7 @@
|
||||
transfer.aiRestorePowerRoutine = 0
|
||||
transfer.control_disabled = 0
|
||||
transfer.aiRadio.disabledAi = 0
|
||||
transfer.loc = get_turf(src)
|
||||
transfer.forceMove(get_turf(src))
|
||||
transfer.create_eyeobj()
|
||||
transfer.cancel_camera()
|
||||
user << "<span class='notice'>Transfer successful:</span> [transfer.name] ([rand(1000,9999)].exe) downloaded to host terminal. Local copy wiped."
|
||||
|
||||
@@ -44,8 +44,7 @@
|
||||
user << "<span class='notice'>You place the circuit board inside the frame.</span>"
|
||||
src.icon_state = "1"
|
||||
src.circuit = P
|
||||
user.drop_item()
|
||||
P.loc = src
|
||||
user.drop_from_inventory(P,src)
|
||||
else
|
||||
user << "<span class='warning'>This frame does not accept circuit boards of this type!</span>"
|
||||
if(isscrewdriver(P) && circuit)
|
||||
@@ -58,7 +57,7 @@
|
||||
user << "<span class='notice'>You remove the circuit board.</span>"
|
||||
src.state = 1
|
||||
src.icon_state = "0"
|
||||
circuit.loc = src.loc
|
||||
circuit.forceMove(src.loc)
|
||||
src.circuit = null
|
||||
if(2)
|
||||
if(isscrewdriver(P) && circuit)
|
||||
|
||||
@@ -92,8 +92,7 @@
|
||||
/obj/machinery/computer/cloning/attackby(obj/item/W as obj, mob/user as mob)
|
||||
if (istype(W, /obj/item/weapon/disk/data)) //INSERT SOME DISKETTES
|
||||
if (!src.diskette)
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
user.drop_from_inventory(W,src)
|
||||
src.diskette = W
|
||||
user << "You insert [W]."
|
||||
src.updateUsrDialog()
|
||||
@@ -293,7 +292,7 @@
|
||||
src.temp = "Load successful."
|
||||
if("eject")
|
||||
if (!isnull(src.diskette))
|
||||
src.diskette.loc = src.loc
|
||||
src.diskette.forceMove(src.loc)
|
||||
src.diskette = null
|
||||
|
||||
else if (href_list["save_disk"]) //Save to disk!
|
||||
|
||||
@@ -101,7 +101,7 @@
|
||||
A.circuit = M
|
||||
A.anchored = 1
|
||||
for (var/obj/C in src)
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
if (src.stat & BROKEN)
|
||||
user << "<span class='notice'>The broken glass falls out.</span>"
|
||||
new /obj/item/weapon/material/shard( src.loc )
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
/obj/machinery/computer/guestpass/attackby(obj/O, mob/user)
|
||||
if(istype(O, /obj/item/weapon/card/id))
|
||||
if(!giver && user.unEquip(O))
|
||||
O.loc = src
|
||||
O.forceMove(src)
|
||||
giver = O
|
||||
updateUsrDialog()
|
||||
else if(giver)
|
||||
@@ -152,18 +152,18 @@
|
||||
if ("id")
|
||||
if (giver)
|
||||
if(ishuman(usr))
|
||||
giver.loc = usr.loc
|
||||
giver.forceMove(usr.loc)
|
||||
if(!usr.get_active_hand())
|
||||
usr.put_in_hands(giver)
|
||||
giver = null
|
||||
else
|
||||
giver.loc = src.loc
|
||||
giver.forceMove(src.loc)
|
||||
giver = null
|
||||
accesses.Cut()
|
||||
else
|
||||
var/obj/item/I = usr.get_active_hand()
|
||||
if (istype(I, /obj/item/weapon/card/id) && usr.unEquip(I))
|
||||
I.loc = src
|
||||
I.forceMove(src)
|
||||
giver = I
|
||||
updateUsrDialog()
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
if(scan)
|
||||
usr << "You remove \the [scan] from \the [src]."
|
||||
scan.loc = get_turf(src)
|
||||
scan.forceMove(get_turf(src))
|
||||
if(!usr.get_active_hand() && istype(usr,/mob/living/carbon/human))
|
||||
usr.put_in_hands(scan)
|
||||
scan = null
|
||||
@@ -39,7 +39,7 @@
|
||||
|
||||
/obj/machinery/computer/med_data/attackby(var/obj/item/O, var/mob/user)
|
||||
if(istype(O, /obj/item/weapon/card/id) && !scan && user.unEquip(O))
|
||||
O.loc = src
|
||||
O.forceMove(src)
|
||||
scan = O
|
||||
user << "You insert \the [O]."
|
||||
else
|
||||
@@ -173,7 +173,7 @@
|
||||
if (src.scan)
|
||||
|
||||
if(ishuman(usr))
|
||||
scan.loc = usr.loc
|
||||
scan.forceMove(usr.loc)
|
||||
|
||||
if(!usr.get_active_hand())
|
||||
usr.put_in_hands(scan)
|
||||
@@ -181,14 +181,13 @@
|
||||
scan = null
|
||||
|
||||
else
|
||||
src.scan.loc = src.loc
|
||||
src.scan.forceMove(src.loc)
|
||||
src.scan = null
|
||||
|
||||
else
|
||||
var/obj/item/I = usr.get_active_hand()
|
||||
if (istype(I, /obj/item/weapon/card/id))
|
||||
usr.drop_item()
|
||||
I.loc = src
|
||||
usr.drop_from_inventory(I,src)
|
||||
src.scan = I
|
||||
|
||||
else if (href_list["logout"])
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
screen = 2
|
||||
src.spark_system.queue()
|
||||
var/obj/item/weapon/paper/monitorkey/MK = new/obj/item/weapon/paper/monitorkey
|
||||
MK.loc = src.loc
|
||||
MK.forceMove(src.loc)
|
||||
// Will help make emagging the console not so easy to get away with.
|
||||
MK.info += "<br><br><font color='red'>£%@%(*$%&(£&?*(%&£/{}</font>"
|
||||
addtimer(CALLBACK(src, .proc/UnmagConsole), 100 * length(linkedServer.decryptkey))
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
M = new /obj/item/weapon/circuitboard/pod( A )
|
||||
|
||||
for (var/obj/C in src)
|
||||
C.loc = loc
|
||||
C.forceMove(loc)
|
||||
M.id = id
|
||||
A.circuit = M
|
||||
A.state = 3
|
||||
@@ -96,7 +96,7 @@
|
||||
M = new /obj/item/weapon/circuitboard/pod( A )
|
||||
|
||||
for (var/obj/C in src)
|
||||
C.loc = loc
|
||||
C.forceMove(loc)
|
||||
M.id = id
|
||||
A.circuit = M
|
||||
A.state = 4
|
||||
|
||||
@@ -33,7 +33,7 @@ var/prison_shuttle_timeleft = 0
|
||||
var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc )
|
||||
var/obj/item/weapon/circuitboard/prison_shuttle/M = new /obj/item/weapon/circuitboard/prison_shuttle( A )
|
||||
for (var/obj/C in src)
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
A.circuit = M
|
||||
A.anchored = 1
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
|
||||
if(scan)
|
||||
usr << "You remove \the [scan] from \the [src]."
|
||||
scan.loc = get_turf(src)
|
||||
scan.forceMove(get_turf(src))
|
||||
if(!usr.get_active_hand() && istype(usr,/mob/living/carbon/human))
|
||||
usr.put_in_hands(scan)
|
||||
scan = null
|
||||
@@ -47,8 +47,7 @@
|
||||
|
||||
/obj/machinery/computer/secure_data/attackby(obj/item/O as obj, user as mob)
|
||||
if(istype(O, /obj/item/weapon/card/id) && !scan)
|
||||
usr.drop_item()
|
||||
O.loc = src
|
||||
usr.drop_from_inventory(O,src)
|
||||
scan = O
|
||||
user << "You insert [O]."
|
||||
..()
|
||||
@@ -272,12 +271,12 @@ What a mess.*/
|
||||
if(istype(usr,/mob/living/carbon/human) && !usr.get_active_hand())
|
||||
usr.put_in_hands(scan)
|
||||
else
|
||||
scan.loc = get_turf(src)
|
||||
scan.forceMove(get_turf(src))
|
||||
scan = null
|
||||
else
|
||||
var/obj/item/I = usr.get_active_hand()
|
||||
if (istype(I, /obj/item/weapon/card/id) && usr.unEquip(I))
|
||||
I.loc = src
|
||||
I.forceMove(src)
|
||||
scan = I
|
||||
|
||||
if("Log Out")
|
||||
|
||||
@@ -29,8 +29,7 @@
|
||||
|
||||
/obj/machinery/computer/sentencing/attackby(obj/item/O as obj, user as mob)
|
||||
if( istype( O, /obj/item/weapon/paper/incident ) && menu_screen == "import_incident" )
|
||||
usr.drop_item()
|
||||
O.loc = src
|
||||
usr.drop_from_inventory(O,src)
|
||||
|
||||
if( import( O ))
|
||||
ping( "\The [src] pings, \"Successfully imported incident report!\"" )
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
/obj/machinery/computer/skills/attackby(obj/item/O as obj, var/mob/user)
|
||||
if(istype(O, /obj/item/weapon/card/id) && !scan && user.unEquip(O))
|
||||
O.loc = src
|
||||
O.forceMove(src)
|
||||
scan = O
|
||||
user << "You insert [O]."
|
||||
else
|
||||
@@ -46,7 +46,7 @@
|
||||
|
||||
if(scan)
|
||||
usr << "You remove \the [scan] from \the [src]."
|
||||
scan.loc = get_turf(src)
|
||||
scan.forceMove(get_turf(src))
|
||||
if(!usr.get_active_hand() && istype(usr,/mob/living/carbon/human))
|
||||
usr.put_in_hands(scan)
|
||||
scan = null
|
||||
@@ -226,7 +226,7 @@ What a mess.*/
|
||||
else
|
||||
var/obj/item/I = usr.get_active_hand()
|
||||
if (istype(I, /obj/item/weapon/card/id) && usr.unEquip(I))
|
||||
I.loc = src
|
||||
I.forceMove(src)
|
||||
scan = I
|
||||
|
||||
if("Log Out")
|
||||
|
||||
@@ -55,8 +55,7 @@
|
||||
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
user << "<span class='notice'>You add the circuit board to the frame.</span>"
|
||||
circuit = P
|
||||
user.drop_item()
|
||||
P.loc = src
|
||||
user.drop_from_inventory(P,src)
|
||||
icon_state = "box_2"
|
||||
state = 3
|
||||
components = list()
|
||||
@@ -85,14 +84,14 @@
|
||||
if(iscrowbar(P))
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1)
|
||||
state = 2
|
||||
circuit.loc = src.loc
|
||||
circuit.forceMove(src.loc)
|
||||
circuit = null
|
||||
if(components.len == 0)
|
||||
user << "<span class='notice'>You remove the circuit board.</span>"
|
||||
else
|
||||
user << "<span class='notice'>You remove the circuit board and other components.</span>"
|
||||
for(var/obj/item/weapon/W in components)
|
||||
W.loc = src.loc
|
||||
W.forceMove(src.loc)
|
||||
desc = initial(desc)
|
||||
req_components = null
|
||||
components = null
|
||||
@@ -146,8 +145,7 @@
|
||||
req_components[I] -= camt
|
||||
update_desc()
|
||||
break
|
||||
user.drop_item()
|
||||
P.loc = src
|
||||
user.drop_from_inventory(P,src)
|
||||
components += P
|
||||
req_components[I]--
|
||||
update_desc()
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
var/turf/T = loc
|
||||
T.contents += contents
|
||||
if(beaker)
|
||||
beaker.loc = get_step(loc, SOUTH) //Beaker is carefully ejected from the wreckage of the cryotube
|
||||
beaker.forceMove(get_step(loc, SOUTH)) //Beaker is carefully ejected from the wreckage of the cryotube
|
||||
return ..()
|
||||
|
||||
/obj/machinery/atmospherics/unary/cryo_cell/atmos_init()
|
||||
@@ -159,7 +159,7 @@
|
||||
|
||||
if(href_list["ejectBeaker"])
|
||||
if(beaker)
|
||||
beaker.loc = get_step(loc, SOUTH)
|
||||
beaker.forceMove(get_step(loc, SOUTH))
|
||||
beaker = null
|
||||
|
||||
if(href_list["ejectOccupant"])
|
||||
@@ -177,8 +177,7 @@
|
||||
return
|
||||
|
||||
beaker = G
|
||||
user.drop_item()
|
||||
G.loc = src
|
||||
user.drop_from_inventory(G,src)
|
||||
user.visible_message("[user] adds \a [G] to \the [src]!", "You add \a [G] to \the [src]!")
|
||||
else if(istype(G, /obj/item/weapon/grab))
|
||||
var/obj/item/weapon/grab/grab = G
|
||||
@@ -322,11 +321,11 @@
|
||||
if(!( occupant ))
|
||||
return
|
||||
//for(var/obj/O in src)
|
||||
// O.loc = loc
|
||||
// O.forceMove(loc)
|
||||
if (occupant.client)
|
||||
occupant.client.eye = occupant.client.mob
|
||||
occupant.client.perspective = MOB_PERSPECTIVE
|
||||
occupant.loc = get_step(loc, SOUTH) //this doesn't account for walls or anything, but i don't forsee that being a problem.
|
||||
occupant.forceMove(get_step(loc, SOUTH)) //this doesn't account for walls or anything, but i don't forsee that being a problem.
|
||||
if (occupant.bodytemperature < 261 && occupant.bodytemperature >= 70) //Patch by Aranclanos to stop people from taking burn damage after being ejected
|
||||
occupant.bodytemperature = 261 // Changed to 70 from 140 by Zuhayr due to reoccurance of bug.
|
||||
// occupant.metabslow = 0
|
||||
@@ -355,7 +354,7 @@
|
||||
M.client.perspective = EYE_PERSPECTIVE
|
||||
M.client.eye = src
|
||||
M.stop_pulling()
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
M.ExtinguishMob()
|
||||
if(M.health > -100 && (M.health < 0 || M.sleeping))
|
||||
M << "<span class='notice'><b>You feel a cold liquid surround you. Your skin starts to freeze up.</b></span>"
|
||||
|
||||
@@ -279,8 +279,7 @@
|
||||
/obj/machinery/cryopod/proc/despawn_occupant()
|
||||
//Drop all items into the pod.
|
||||
for(var/obj/item/W in occupant)
|
||||
occupant.drop_from_inventory(W)
|
||||
W.forceMove(src)
|
||||
occupant.drop_from_inventory(W,src)
|
||||
|
||||
if(W.contents.len) //Make sure we catch anything not handled by qdel() on the items.
|
||||
for(var/obj/item/O in W.contents)
|
||||
@@ -313,7 +312,7 @@
|
||||
else
|
||||
if(control_computer && control_computer.allow_items)
|
||||
control_computer.frozen_items += W
|
||||
W.loc = null
|
||||
W.forceMove(null)
|
||||
else
|
||||
W.forceMove(src.loc)
|
||||
|
||||
@@ -417,7 +416,7 @@
|
||||
if(do_after(user, 20))
|
||||
if(!L) return
|
||||
|
||||
L.loc = src
|
||||
L.forceMove(src)
|
||||
|
||||
if(L.client)
|
||||
L.client.perspective = EYE_PERSPECTIVE
|
||||
|
||||
@@ -1245,7 +1245,7 @@ About the new airlock wires panel:
|
||||
assembly_type = assembly.type
|
||||
|
||||
electronics = assembly.electronics
|
||||
electronics.loc = src
|
||||
electronics.forceMove(src)
|
||||
|
||||
//update the door's access to match the electronics'
|
||||
secured_wires = electronics.secure
|
||||
|
||||
@@ -263,15 +263,13 @@
|
||||
|
||||
return .
|
||||
|
||||
/obj/machinery/door_timer/attackby(obj/item/O as obj, user as mob)
|
||||
/obj/machinery/door_timer/attackby(obj/item/O as obj, var/mob/user as mob)
|
||||
if( istype( O, /obj/item/weapon/paper/incident ))
|
||||
if( !incident )
|
||||
if( import( O, user ))
|
||||
usr.drop_item()
|
||||
O.loc = src
|
||||
|
||||
ping( "\The [src] pings, \"Successfully imported incident report!\"" )
|
||||
qdel( O )
|
||||
user.drop_from_inventory(O,get_turf(src))
|
||||
qdel(O)
|
||||
src.updateUsrDialog()
|
||||
else
|
||||
user << "<span class='alert'>\The [src] buzzes, \"There's already an active sentence!\"</span>"
|
||||
|
||||
@@ -287,7 +287,7 @@
|
||||
else
|
||||
repairing = stack.split(amount_needed)
|
||||
if (repairing)
|
||||
repairing.loc = src
|
||||
repairing.forceMove(src)
|
||||
transfer = repairing.amount
|
||||
|
||||
if (transfer)
|
||||
@@ -315,7 +315,7 @@
|
||||
if(repairing && iscrowbar(I))
|
||||
user << "<span class='notice'>You remove \the [repairing].</span>"
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 100, 1)
|
||||
repairing.loc = user.loc
|
||||
repairing.forceMove(user.loc)
|
||||
repairing = null
|
||||
return
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
else
|
||||
ae = electronics
|
||||
electronics = null
|
||||
ae.loc = src.loc
|
||||
ae.forceMove(src.loc)
|
||||
if(operating == -1)
|
||||
ae.icon_state = "door_electronics_smoked"
|
||||
operating = 0
|
||||
@@ -209,7 +209,7 @@
|
||||
else
|
||||
ae = electronics
|
||||
electronics = null
|
||||
ae.loc = src.loc
|
||||
ae.forceMove(src.loc)
|
||||
ae.icon_state = "door_electronics_smoked"
|
||||
|
||||
operating = 0
|
||||
|
||||
@@ -123,7 +123,7 @@
|
||||
playsound(src.loc, 'sound/items/Crowbar.ogg', 50, 1)
|
||||
spawn(20)
|
||||
var/obj/item/weapon/firealarm_electronics/circuit = new /obj/item/weapon/firealarm_electronics()
|
||||
circuit.loc = user.loc
|
||||
circuit.forceMove(user.loc)
|
||||
buildstage = 0
|
||||
update_icon()
|
||||
if(0)
|
||||
|
||||
@@ -78,9 +78,9 @@
|
||||
if(ishuman(user))
|
||||
if(!user.get_active_hand())
|
||||
user.put_in_hands(cell)
|
||||
cell.loc = user.loc
|
||||
cell.forceMove(user.loc)
|
||||
else
|
||||
cell.loc = loc
|
||||
cell.forceMove(loc)
|
||||
|
||||
cell.add_fingerprint(user)
|
||||
cell.update_icon()
|
||||
@@ -127,8 +127,7 @@
|
||||
if(cell)
|
||||
user << "There is a power cell already installed."
|
||||
else
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
user.drop_from_inventory(W,src)
|
||||
cell = W
|
||||
user << "You insert the power cell."
|
||||
update_icon()
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
var/obj/item/stack/tile/E = input("Choose remove tile type.", "Tiles") as null|anything in contents
|
||||
if(E)
|
||||
user << "<span class='notice'>You remove the [E] from /the [src].</span>"
|
||||
E.loc = src.loc
|
||||
E.forceMove(src.loc)
|
||||
T = null
|
||||
return
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
|
||||
/obj/machinery/floorlayer/proc/TakeTile(var/obj/item/stack/tile/tile)
|
||||
if(!T) T = tile
|
||||
tile.loc = src
|
||||
tile.forceMove(src)
|
||||
|
||||
SortStacks()
|
||||
|
||||
|
||||
@@ -235,7 +235,7 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
|
||||
var/tempicon = getFlatIcon(caller_id)
|
||||
|
||||
hologram.name = "[caller_id.name] (Hologram)"
|
||||
hologram.loc = get_step(src,1)
|
||||
hologram.forceMove(get_step(src,1))
|
||||
masters[caller_id] = hologram
|
||||
hologram.icon = getHologramIcon(icon(tempicon)) // Add the callers image as an overlay to keep coloration!
|
||||
else
|
||||
|
||||
@@ -61,8 +61,7 @@
|
||||
user << "There is already a reagent container loaded!"
|
||||
return
|
||||
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
user.drop_from_inventory(W,src)
|
||||
src.beaker = W
|
||||
user << "You attach \the [W] to \the [src]."
|
||||
src.update_icon()
|
||||
@@ -132,7 +131,7 @@
|
||||
if (isAI(user))
|
||||
return
|
||||
if(src.beaker)
|
||||
src.beaker.loc = get_turf(src)
|
||||
src.beaker.forceMove(get_turf(src))
|
||||
src.beaker = null
|
||||
update_icon()
|
||||
else
|
||||
|
||||
@@ -391,20 +391,20 @@
|
||||
var/obj/temp = new /obj(src) //To prevent infinite loops, all results will be moved into a temporary location so they're not considered as inputs for other recipes
|
||||
|
||||
for (var/atom/movable/AM in results)
|
||||
AM.loc = temp
|
||||
AM.forceMove(temp)
|
||||
|
||||
//making multiple copies of a recipe from one container. For example, tons of fries
|
||||
while (select_recipe(RECIPE_LIST(appliancetype), C) == recipe)
|
||||
var/list/TR = list()
|
||||
TR += recipe.make_food(C)
|
||||
for (var/atom/movable/AM in TR) //Move results to buffer
|
||||
AM.loc = temp
|
||||
AM.forceMove(temp)
|
||||
results += TR
|
||||
|
||||
|
||||
for (var/r in results)
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/R = r
|
||||
R.loc = C //Move everything from the buffer back to the container
|
||||
R.forceMove(C) //Move everything from the buffer back to the container
|
||||
R.cooked |= cook_type
|
||||
|
||||
QDEL_NULL(temp) //delete buffer object
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
|
||||
if(M.loc == input_plate
|
||||
)
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
M.gib()
|
||||
|
||||
|
||||
@@ -99,6 +99,7 @@
|
||||
|
||||
else if(istype(W, /obj/item/organ))
|
||||
user.drop_from_inventory(W)
|
||||
//TODO: Gibber Animations
|
||||
qdel(W)
|
||||
user.visible_message("<span class='danger'>\The [user] feeds \the [W] into \the [src], obliterating it.</span>")
|
||||
|
||||
@@ -147,7 +148,7 @@
|
||||
if(victim.client)
|
||||
victim.client.perspective = EYE_PERSPECTIVE
|
||||
victim.client.eye = src
|
||||
victim.loc = src
|
||||
victim.forceMove(src)
|
||||
src.occupant = victim
|
||||
update_icon()
|
||||
|
||||
@@ -166,11 +167,11 @@
|
||||
if(operating || !src.occupant)
|
||||
return
|
||||
for(var/obj/O in src)
|
||||
O.loc = src.loc
|
||||
O.forceMove(src.loc)
|
||||
if (src.occupant.client)
|
||||
src.occupant.client.eye = src.occupant.client.mob
|
||||
src.occupant.client.perspective = MOB_PERSPECTIVE
|
||||
src.occupant.loc = src.loc
|
||||
src.occupant.forceMove(src.loc)
|
||||
src.occupant = null
|
||||
update_icon()
|
||||
return
|
||||
@@ -234,7 +235,7 @@
|
||||
if(istype(thing,/obj/item/organ) && prob(80))
|
||||
qdel(thing)
|
||||
continue
|
||||
thing.loc = get_turf(thing) // Drop it onto the turf for throwing.
|
||||
thing.forceMove(get_turf(thing)) // Drop it onto the turf for throwing.
|
||||
thing.throw_at(get_edge_target_turf(src,gib_throw_dir),rand(0,3),emagged ? 100 : 50) // Being pelted with bits of meat and bone would hurt.
|
||||
|
||||
update_icon()
|
||||
|
||||
@@ -116,8 +116,7 @@
|
||||
return
|
||||
else
|
||||
// user.remove_from_mob(O) //This just causes problems so far as I can tell. -Pete
|
||||
user.drop_item()
|
||||
O.loc = src
|
||||
user.drop_from_inventory(O,src)
|
||||
user.visible_message( \
|
||||
"<span class='notice'>\The [user] has added \the [O] to \the [src].</span>", \
|
||||
"<span class='notice'>You add \the [O] to \the [src].</span>")
|
||||
@@ -259,7 +258,7 @@
|
||||
wzhzhzh(16)
|
||||
muck_finish()
|
||||
cooked = fail()
|
||||
cooked.loc = src.loc
|
||||
cooked.forceMove(src.loc)
|
||||
return
|
||||
else if (has_extra_item())
|
||||
if (!wzhzhzh(16))
|
||||
@@ -267,7 +266,7 @@
|
||||
return
|
||||
broke()
|
||||
cooked = fail()
|
||||
cooked.loc = src.loc
|
||||
cooked.forceMove(src.loc)
|
||||
return
|
||||
else
|
||||
if (!wzhzhzh(40))
|
||||
@@ -275,7 +274,7 @@
|
||||
return
|
||||
stop()
|
||||
cooked = fail()
|
||||
cooked.loc = src.loc
|
||||
cooked.forceMove(src.loc)
|
||||
return
|
||||
else
|
||||
var/halftime = round((recipe.time*4)/10/2)
|
||||
@@ -285,7 +284,7 @@
|
||||
if (!wzhzhzh(halftime))
|
||||
abort()
|
||||
cooked = fail()
|
||||
cooked.loc = src.loc
|
||||
cooked.forceMove(src.loc)
|
||||
return
|
||||
|
||||
|
||||
@@ -300,7 +299,7 @@
|
||||
cooked_items += things
|
||||
//Move cooked things to the buffer so they're not considered as ingredients
|
||||
for (var/atom/movable/AM in things)
|
||||
AM.loc = temp
|
||||
AM.forceMove(temp)
|
||||
|
||||
valid = 0
|
||||
recipe = select_recipe(RECIPE_LIST(appliancetype),src)
|
||||
@@ -310,7 +309,7 @@
|
||||
|
||||
for (var/r in cooked_items)
|
||||
var/atom/movable/R = r
|
||||
R.loc = src //Move everything from the buffer back to the container
|
||||
R.forceMove(src) //Move everything from the buffer back to the container
|
||||
|
||||
qdel(temp)//Delete buffer object
|
||||
temp = null
|
||||
|
||||
@@ -148,7 +148,7 @@
|
||||
item_quants[S.name]--
|
||||
S.name = "dried [S.name]"
|
||||
S.color = "#AAAAAA"
|
||||
S.loc = loc
|
||||
S.forceMove(loc)
|
||||
else
|
||||
var/D = S.dried_type
|
||||
new D(loc)
|
||||
@@ -206,7 +206,7 @@
|
||||
return 1
|
||||
else
|
||||
user.remove_from_mob(O)
|
||||
O.loc = src
|
||||
O.forceMove(src)
|
||||
if(item_quants[O.name])
|
||||
item_quants[O.name]++
|
||||
else
|
||||
@@ -314,7 +314,7 @@
|
||||
var/i = amount
|
||||
for(var/obj/O in contents)
|
||||
if(O.name == K)
|
||||
O.loc = loc
|
||||
O.forceMove(loc)
|
||||
i--
|
||||
if(i <= 0)
|
||||
return 1
|
||||
@@ -335,7 +335,7 @@
|
||||
item_quants[O]--
|
||||
for(var/obj/T in contents)
|
||||
if(T.name == O)
|
||||
T.loc = src.loc
|
||||
T.forceMove(src.loc)
|
||||
throw_item = T
|
||||
break
|
||||
break
|
||||
|
||||
@@ -359,7 +359,7 @@ Class Procs:
|
||||
R.handle_item_insertion(G, 1)
|
||||
component_parts -= G
|
||||
component_parts += B
|
||||
B.loc = src
|
||||
B.forceMove(src)
|
||||
user << "<span class='notice'>[G.name] replaced with [B.name].</span>"
|
||||
break
|
||||
for(var/obj/item/weapon/stock_parts/A in component_parts)
|
||||
@@ -375,7 +375,7 @@ Class Procs:
|
||||
R.handle_item_insertion(A, 1)
|
||||
component_parts -= A
|
||||
component_parts += B
|
||||
B.loc = src
|
||||
B.forceMove(src)
|
||||
user << "<span class='notice'>[A.name] replaced with [B.name].</span>"
|
||||
break
|
||||
RefreshParts()
|
||||
@@ -393,7 +393,7 @@ Class Procs:
|
||||
M.state = 2
|
||||
M.icon_state = "box_1"
|
||||
for(var/obj/I in component_parts)
|
||||
I.loc = loc
|
||||
I.forceMove(loc)
|
||||
qdel(src)
|
||||
return 1
|
||||
|
||||
|
||||
@@ -45,7 +45,6 @@
|
||||
if(W.autodrobe_no_remove)
|
||||
continue
|
||||
H.drop_from_inventory(W,gearbox)
|
||||
W.forceMove(gearbox)
|
||||
H.put_in_any_hand_if_possible(gearbox)
|
||||
|
||||
H << "<span class='notice'>You feel a pleasant breeze as the autolocker whisks away all of your clothes, packing them neatly in a box.</span>"
|
||||
|
||||
@@ -752,15 +752,14 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
|
||||
/obj/machinery/newscaster/proc/AttachPhoto(mob/user as mob)
|
||||
if(photo_data)
|
||||
if(!photo_data.is_synth)
|
||||
photo_data.photo.loc = src.loc
|
||||
photo_data.photo.forceMove(src.loc)
|
||||
if(!issilicon(user))
|
||||
user.put_in_inactive_hand(photo_data.photo)
|
||||
qdel(photo_data)
|
||||
|
||||
if(istype(user.get_active_hand(), /obj/item/weapon/photo))
|
||||
var/obj/item/photo = user.get_active_hand()
|
||||
user.drop_item()
|
||||
photo.loc = src
|
||||
user.drop_from_inventory(photo,src)
|
||||
photo_data = new(photo, 0)
|
||||
else if(istype(user,/mob/living/silicon))
|
||||
var/mob/living/silicon/tempAI = user
|
||||
@@ -964,7 +963,7 @@ obj/item/weapon/newspaper/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
NEWSPAPER.news_content += FC
|
||||
if(SSnews.wanted_issue)
|
||||
NEWSPAPER.important_message = SSnews.wanted_issue
|
||||
NEWSPAPER.loc = get_turf(src)
|
||||
NEWSPAPER.forceMove(get_turf(src))
|
||||
src.paper_remaining--
|
||||
return
|
||||
|
||||
|
||||
@@ -73,8 +73,7 @@ var/bomb_set
|
||||
|
||||
if (src.extended)
|
||||
if (istype(O, /obj/item/weapon/disk/nuclear))
|
||||
usr.drop_item()
|
||||
O.loc = src
|
||||
usr.drop_from_inventory(O,src)
|
||||
src.auth = O
|
||||
src.add_fingerprint(user)
|
||||
return attack_hand(user)
|
||||
@@ -231,14 +230,13 @@ var/bomb_set
|
||||
|
||||
if (href_list["auth"])
|
||||
if (auth)
|
||||
auth.loc = loc
|
||||
auth.forceMove(loc)
|
||||
yes_code = 0
|
||||
auth = null
|
||||
else
|
||||
var/obj/item/I = usr.get_active_hand()
|
||||
if (istype(I, /obj/item/weapon/disk/nuclear))
|
||||
usr.drop_item()
|
||||
I.loc = src
|
||||
usr.drop_from_inventory(I,src)
|
||||
auth = I
|
||||
if (is_auth(usr))
|
||||
if (href_list["type"])
|
||||
|
||||
@@ -102,7 +102,7 @@
|
||||
src.add_fingerprint(usr)
|
||||
if (istype(W, /obj/item/pipe) || istype(W, /obj/item/pipe_meter))
|
||||
usr << "<span class='notice'>You put [W] back to [src].</span>"
|
||||
user.drop_item()
|
||||
user.drop_from_inventory(W,get_turf(src))
|
||||
qdel(W)
|
||||
return
|
||||
else if (iswrench(W))
|
||||
|
||||
@@ -740,8 +740,7 @@
|
||||
user << "<span class='notice'>\the [I] is stuck to your hand, you cannot put it in \the [src]</span>"
|
||||
return
|
||||
user << "<span class='notice'>You install [I] into the turret.</span>"
|
||||
user.drop_item()
|
||||
E.loc = src
|
||||
user.drop_from_inventory(E,src)
|
||||
target_type = /obj/machinery/porta_turret
|
||||
installation = I.type //installation becomes I.type
|
||||
build_step = 4
|
||||
@@ -879,7 +878,7 @@
|
||||
if(!installation)
|
||||
return
|
||||
build_step = 3
|
||||
E.loc = src.loc
|
||||
E.forceMove(src.loc)
|
||||
installation = null
|
||||
cut_overlays()
|
||||
icon_state = "turret_frame_3_[case_sprite_set]"
|
||||
|
||||
@@ -77,8 +77,7 @@
|
||||
user << "<span class='warning'>\The [name] blinks red as you try to insert the item!</span>"
|
||||
return
|
||||
|
||||
user.drop_item()
|
||||
G.forceMove(src)
|
||||
user.drop_from_inventory(G,src)
|
||||
charging = G
|
||||
update_icon()
|
||||
|
||||
|
||||
@@ -357,7 +357,7 @@ var/list/obj/machinery/requests_console/allConsoles = list()
|
||||
if(lid) //More of that restocking business
|
||||
var/obj/item/weapon/paper_bundle/C = O
|
||||
paperstock += C.amount
|
||||
user.drop_item(C)
|
||||
user.drop_from_inventory(C,get_turf(src))
|
||||
qdel(C)
|
||||
for (var/mob/U in hearers(4, src.loc))
|
||||
U.show_message(text("\icon[src] *The Requests Console beeps: 'Paper added.'"))
|
||||
@@ -366,7 +366,7 @@ var/list/obj/machinery/requests_console/allConsoles = list()
|
||||
else if (istype(O, /obj/item/weapon/paper))
|
||||
if(lid) //Stocking them papers
|
||||
var/obj/item/weapon/paper/C = O
|
||||
user.drop_item(C)
|
||||
user.drop_from_inventory(C,get_turf(src))
|
||||
qdel(C)
|
||||
paperstock++
|
||||
for (var/mob/U in hearers(4, src.loc))
|
||||
|
||||
@@ -126,7 +126,7 @@ Please wait until completion...</TT><BR>
|
||||
|
||||
spawn (build_time)
|
||||
if (!isnull(src.being_built))
|
||||
src.being_built.loc = get_turf(src)
|
||||
src.being_built.forceMove(get_turf(src))
|
||||
src.being_built = null
|
||||
src.update_use_power(1)
|
||||
src.operating = 0
|
||||
|
||||
@@ -56,9 +56,8 @@
|
||||
// insert cell
|
||||
var/obj/item/weapon/cell/C = usr.get_active_hand()
|
||||
if(istype(C))
|
||||
user.drop_item()
|
||||
user.drop_from_inventory(C,src)
|
||||
cell = C
|
||||
C.loc = src
|
||||
C.add_fingerprint(usr)
|
||||
|
||||
user.visible_message("<span class='notice'>[user] inserts a power cell into [src].</span>", "<span class='notice'>You insert the power cell into [src].</span>")
|
||||
@@ -139,9 +138,8 @@
|
||||
if(panel_open && !cell)
|
||||
var/obj/item/weapon/cell/C = usr.get_active_hand()
|
||||
if(istype(C))
|
||||
usr.drop_item()
|
||||
usr.drop_from_inventory(C,src)
|
||||
cell = C
|
||||
C.loc = src
|
||||
C.add_fingerprint(usr)
|
||||
power_change()
|
||||
usr.visible_message("<span class='notice'>[usr] inserts \the [C] into \the [src].</span>", "<span class='notice'>You insert \the [C] into \the [src].</span>")
|
||||
|
||||
@@ -250,7 +250,7 @@
|
||||
if(!src.HELMET)
|
||||
return //Do I even need this sanity check? Nyoro~n
|
||||
else
|
||||
src.HELMET.loc = src.loc
|
||||
src.HELMET.forceMove(src.loc)
|
||||
src.HELMET = null
|
||||
return
|
||||
|
||||
@@ -259,7 +259,7 @@
|
||||
if(!src.SUIT)
|
||||
return
|
||||
else
|
||||
src.SUIT.loc = src.loc
|
||||
src.SUIT.forceMove(src.loc)
|
||||
src.SUIT = null
|
||||
return
|
||||
|
||||
@@ -268,7 +268,7 @@
|
||||
if(!src.MASK)
|
||||
return
|
||||
else
|
||||
src.MASK.loc = src.loc
|
||||
src.MASK.forceMove(src.loc)
|
||||
src.MASK = null
|
||||
return
|
||||
|
||||
@@ -276,13 +276,13 @@
|
||||
/obj/machinery/suit_storage_unit/proc/dump_everything()
|
||||
src.islocked = 0 //locks go free
|
||||
if(src.SUIT)
|
||||
src.SUIT.loc = src.loc
|
||||
src.SUIT.forceMove(src.loc)
|
||||
src.SUIT = null
|
||||
if(src.HELMET)
|
||||
src.HELMET.loc = src.loc
|
||||
src.HELMET.forceMove(src.loc)
|
||||
src.HELMET = null
|
||||
if(src.MASK)
|
||||
src.MASK.loc = src.loc
|
||||
src.MASK.forceMove(src.loc)
|
||||
src.MASK = null
|
||||
if(src.OCCUPANT)
|
||||
src.eject_occupant(OCCUPANT)
|
||||
@@ -405,7 +405,7 @@
|
||||
if (!src.OCCUPANT)
|
||||
return
|
||||
// for(var/obj/O in src)
|
||||
// O.loc = src.loc
|
||||
// O.forceMove(src.loc
|
||||
|
||||
if (src.OCCUPANT.client)
|
||||
if(user != OCCUPANT)
|
||||
@@ -415,7 +415,7 @@
|
||||
|
||||
src.OCCUPANT.client.eye = src.OCCUPANT.client.mob
|
||||
src.OCCUPANT.client.perspective = MOB_PERSPECTIVE
|
||||
src.OCCUPANT.loc = src.loc
|
||||
src.OCCUPANT.forceMove(src.loc)
|
||||
src.OCCUPANT = null
|
||||
if(!src.isopen)
|
||||
src.isopen = 1
|
||||
@@ -458,7 +458,7 @@
|
||||
usr.stop_pulling()
|
||||
usr.client.perspective = EYE_PERSPECTIVE
|
||||
usr.client.eye = src
|
||||
usr.loc = src
|
||||
usr.forceMove(src)
|
||||
// usr.metabslow = 1
|
||||
src.OCCUPANT = usr
|
||||
src.isopen = 0 //Close the thing after the guy gets inside
|
||||
@@ -504,12 +504,12 @@
|
||||
if (M.client)
|
||||
M.client.perspective = EYE_PERSPECTIVE
|
||||
M.client.eye = src
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
src.OCCUPANT = M
|
||||
src.isopen = 0 //close ittt
|
||||
|
||||
//for(var/obj/O in src)
|
||||
// O.loc = src.loc
|
||||
// O.forceMove(src.loc
|
||||
src.add_fingerprint(user)
|
||||
qdel(G)
|
||||
src.updateUsrDialog()
|
||||
@@ -524,8 +524,7 @@
|
||||
user << "<font color='blue'>The unit already contains a suit.</font>"
|
||||
return
|
||||
user << "You load the [S.name] into the storage compartment."
|
||||
user.drop_item()
|
||||
S.loc = src
|
||||
user.drop_from_inventory(S,src)
|
||||
src.SUIT = S
|
||||
src.update_icon()
|
||||
src.updateUsrDialog()
|
||||
@@ -538,8 +537,7 @@
|
||||
user << "<font color='blue'>The unit already contains a helmet.</font>"
|
||||
return
|
||||
user << "You load the [H.name] into the storage compartment."
|
||||
user.drop_item()
|
||||
H.loc = src
|
||||
user.drop_from_inventory(H,src)
|
||||
src.HELMET = H
|
||||
src.update_icon()
|
||||
src.updateUsrDialog()
|
||||
@@ -552,8 +550,7 @@
|
||||
user << "<font color='blue'>The unit already contains a mask.</font>"
|
||||
return
|
||||
user << "You load the [M.name] into the storage compartment."
|
||||
user.drop_item()
|
||||
M.loc = src
|
||||
user.drop_from_inventory(M,src)
|
||||
src.MASK = M
|
||||
src.update_icon()
|
||||
src.updateUsrDialog()
|
||||
@@ -703,7 +700,7 @@
|
||||
if (M.client)
|
||||
M.client.perspective = EYE_PERSPECTIVE
|
||||
M.client.eye = src
|
||||
M.loc = src
|
||||
M.forceMove(src)
|
||||
src.occupant = M
|
||||
|
||||
src.add_fingerprint(user)
|
||||
@@ -734,8 +731,7 @@
|
||||
return
|
||||
|
||||
user << "You fit \the [I] into the suit cycler."
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
user.drop_from_inventory(I,src)
|
||||
helmet = I
|
||||
|
||||
src.update_icon()
|
||||
@@ -757,8 +753,7 @@
|
||||
return
|
||||
|
||||
user << "You fit \the [I] into the suit cycler."
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
user.drop_from_inventory(I,src)
|
||||
suit = I
|
||||
|
||||
src.update_icon()
|
||||
@@ -835,11 +830,11 @@
|
||||
/obj/machinery/suit_cycler/Topic(href, href_list)
|
||||
if(href_list["eject_suit"])
|
||||
if(!suit) return
|
||||
suit.loc = get_turf(src)
|
||||
suit.forceMove(get_turf(src))
|
||||
suit = null
|
||||
else if(href_list["eject_helmet"])
|
||||
if(!helmet) return
|
||||
helmet.loc = get_turf(src)
|
||||
helmet.forceMove(get_turf(src))
|
||||
helmet = null
|
||||
else if(href_list["select_department"])
|
||||
var/choice = input("Please select the target department paintjob.","Suit cycler",null) as null|anything in departments
|
||||
@@ -986,7 +981,7 @@
|
||||
occupant.client.eye = occupant.client.mob
|
||||
occupant.client.perspective = MOB_PERSPECTIVE
|
||||
|
||||
occupant.loc = get_turf(occupant)
|
||||
occupant.forceMove(get_turf(occupant))
|
||||
occupant = null
|
||||
|
||||
add_fingerprint(usr)
|
||||
|
||||
@@ -198,7 +198,7 @@
|
||||
new /obj/item/weapon/material/shard( src.loc )
|
||||
var/obj/item/weapon/circuitboard/comm_server/M = new /obj/item/weapon/circuitboard/comm_server( A )
|
||||
for (var/obj/C in src)
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
A.circuit = M
|
||||
A.state = 3
|
||||
A.icon_state = "3"
|
||||
@@ -209,7 +209,7 @@
|
||||
var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc )
|
||||
var/obj/item/weapon/circuitboard/comm_server/M = new /obj/item/weapon/circuitboard/comm_server( A )
|
||||
for (var/obj/C in src)
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
A.circuit = M
|
||||
A.state = 4
|
||||
A.icon_state = "4"
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
// Drop all the component stuff
|
||||
if(contents.len > 0)
|
||||
for(var/obj/x in src)
|
||||
x.loc = user.loc
|
||||
x.forceMove(user.loc)
|
||||
else
|
||||
|
||||
// If the machine wasn't made during runtime, probably doesn't have components:
|
||||
@@ -87,17 +87,17 @@
|
||||
for(var/i = 1, i <= C.req_components[I], i++)
|
||||
newpath = text2path(I)
|
||||
var/obj/item/s = new newpath
|
||||
s.loc = user.loc
|
||||
s.forceMove(user.loc)
|
||||
if(iscoil(P))
|
||||
var/obj/item/stack/cable_coil/A = P
|
||||
A.amount = 1
|
||||
|
||||
// Drop a circuit board too
|
||||
C.loc = user.loc
|
||||
C.forceMove(user.loc)
|
||||
|
||||
// Create a machine frame and delete the current machine
|
||||
var/obj/machinery/constructable_frame/machine_frame/F = new
|
||||
F.loc = src.loc
|
||||
F.forceMove(src.loc)
|
||||
qdel(src)
|
||||
|
||||
update_icon()
|
||||
|
||||
@@ -133,7 +133,7 @@
|
||||
new /obj/item/weapon/material/shard( src.loc )
|
||||
var/obj/item/weapon/circuitboard/comm_monitor/M = new /obj/item/weapon/circuitboard/comm_monitor( A )
|
||||
for (var/obj/C in src)
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
A.circuit = M
|
||||
A.state = 3
|
||||
A.icon_state = "3"
|
||||
@@ -144,7 +144,7 @@
|
||||
var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc )
|
||||
var/obj/item/weapon/circuitboard/comm_monitor/M = new /obj/item/weapon/circuitboard/comm_monitor( A )
|
||||
for (var/obj/C in src)
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
A.circuit = M
|
||||
A.state = 4
|
||||
A.icon_state = "4"
|
||||
|
||||
@@ -216,7 +216,7 @@
|
||||
new /obj/item/weapon/material/shard( src.loc )
|
||||
var/obj/item/weapon/circuitboard/comm_traffic/M = new /obj/item/weapon/circuitboard/comm_traffic( A )
|
||||
for (var/obj/C in src)
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
A.circuit = M
|
||||
A.state = 3
|
||||
A.icon_state = "3"
|
||||
@@ -227,7 +227,7 @@
|
||||
var/obj/structure/computerframe/A = new /obj/structure/computerframe( src.loc )
|
||||
var/obj/item/weapon/circuitboard/comm_traffic/M = new /obj/item/weapon/circuitboard/comm_traffic( A )
|
||||
for (var/obj/C in src)
|
||||
C.loc = src.loc
|
||||
C.forceMove(src.loc)
|
||||
A.circuit = M
|
||||
A.state = 4
|
||||
A.icon_state = "4"
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
if(istype(L, /obj/effect/landmark/) && istype(L.loc, /turf))
|
||||
usr << "You insert the coordinates into the machine."
|
||||
usr << "A message flashes across the screen reminding the traveller that the nuclear authentication disk is to remain on the station at all times."
|
||||
user.drop_item()
|
||||
user.drop_from_inventory(I,get_turf(src))
|
||||
qdel(I)
|
||||
|
||||
if(C.data == "Clown Land")
|
||||
@@ -293,7 +293,7 @@
|
||||
if(tmploc==null)
|
||||
return
|
||||
|
||||
M.loc = tmploc
|
||||
M.forceMove(tmploc)
|
||||
sleep(2)
|
||||
|
||||
var/datum/effect/effect/system/spark_spread/s = new /datum/effect/effect/system/spark_spread
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
var/move_dir = get_dir(loc, AM.loc)
|
||||
var/mob/living/carbon/human/H = AM
|
||||
if((transform_standing || H.lying) && move_dir == EAST)
|
||||
AM.loc = src.loc
|
||||
AM.forceMove(src.loc)
|
||||
make_robot(AM)
|
||||
|
||||
/obj/machinery/transformer/proc/make_robot(var/mob/living/carbon/human/H)
|
||||
|
||||
@@ -228,8 +228,7 @@
|
||||
attack_hand(user)
|
||||
return
|
||||
else if(istype(W, /obj/item/weapon/coin) && premium.len > 0)
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
user.drop_from_inventory(W,src)
|
||||
coin = W
|
||||
categories |= CAT_COIN
|
||||
user << "<span class='notice'>You insert \the [W] into \the [src].</span>"
|
||||
@@ -308,7 +307,7 @@
|
||||
cashmoney_bundle.worth -= currently_vending.price
|
||||
|
||||
if(cashmoney_bundle.worth <= 0)
|
||||
usr.drop_from_inventory(cashmoney_bundle)
|
||||
usr.drop_from_inventory(cashmoney_bundle,get_turf(src))
|
||||
qdel(cashmoney_bundle)
|
||||
else
|
||||
cashmoney_bundle.update_icon()
|
||||
@@ -320,7 +319,7 @@
|
||||
|
||||
visible_message("<span class='info'>\The [usr] inserts a bill into \the [src].</span>")
|
||||
var/left = cashmoney.worth - currently_vending.price
|
||||
usr.drop_from_inventory(cashmoney)
|
||||
usr.drop_from_inventory(cashmoney,get_turf(src))
|
||||
qdel(cashmoney)
|
||||
|
||||
if(left)
|
||||
@@ -505,7 +504,7 @@
|
||||
usr << "There is no coin in this machine."
|
||||
return
|
||||
|
||||
coin.loc = src.loc
|
||||
coin.forceMove(src.loc)
|
||||
if(!usr.get_active_hand())
|
||||
usr.put_in_hands(coin)
|
||||
usr << "<span class='notice'>You remove the [coin] from the [src]</span>"
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
|
||||
sleep(20)
|
||||
if(state in list(1,3,6) )
|
||||
usr.loc = src.loc
|
||||
usr.forceMove(src.loc)
|
||||
|
||||
|
||||
/obj/machinery/washing_machine/update_icon()
|
||||
@@ -79,9 +79,8 @@
|
||||
if(istype(W,/obj/item/weapon/pen/crayon) || istype(W,/obj/item/weapon/stamp))
|
||||
if( state in list( 1, 3, 6 ) )
|
||||
if(!crayon)
|
||||
user.drop_item()
|
||||
user.drop_from_inventory(W,src)
|
||||
crayon = W
|
||||
crayon.loc = src
|
||||
else
|
||||
..()
|
||||
else
|
||||
@@ -90,7 +89,7 @@
|
||||
if( (state == 1) && hacked)
|
||||
var/obj/item/weapon/grab/G = W
|
||||
if(ishuman(G.assailant) && iscorgi(G.affecting))
|
||||
G.affecting.loc = src
|
||||
G.affecting.forceMove(src)
|
||||
qdel(G)
|
||||
state = 3
|
||||
else
|
||||
@@ -144,8 +143,7 @@
|
||||
|
||||
if(contents.len < 5)
|
||||
if ( state in list(1, 3) )
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
user.drop_from_inventory(W,src)
|
||||
state = 3
|
||||
else
|
||||
user << "<span class='notice'>You can't put the item in right now.</span>"
|
||||
@@ -162,13 +160,13 @@
|
||||
if(2)
|
||||
state = 1
|
||||
for(var/atom/movable/O in contents)
|
||||
O.loc = src.loc
|
||||
O.forceMove(src.loc)
|
||||
if(3)
|
||||
state = 4
|
||||
if(4)
|
||||
state = 3
|
||||
for(var/atom/movable/O in contents)
|
||||
O.loc = src.loc
|
||||
O.forceMove(src.loc)
|
||||
crayon = null
|
||||
state = 1
|
||||
if(5)
|
||||
@@ -182,7 +180,7 @@
|
||||
var/mob/M = locate(/mob,contents)
|
||||
M.gib()
|
||||
for(var/atom/movable/O in contents)
|
||||
O.loc = src.loc
|
||||
O.forceMove(src.loc)
|
||||
crayon = null
|
||||
state = 1
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@
|
||||
|
||||
/obj/mecha/combat/marauder/relaymove(mob/user,direction)
|
||||
if(user != src.occupant) //While not "realistic", this piece is player friendly.
|
||||
user.loc = get_turf(src)
|
||||
user.forceMove(get_turf(src))
|
||||
user << "You climb out from [src]"
|
||||
return 0
|
||||
if(!can_move)
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
if(can_move)
|
||||
can_move = 0
|
||||
flick("phazon-phase", src)
|
||||
src.loc = get_step(src,src.dir)
|
||||
src.forceMove(get_step(src,src.dir))
|
||||
src.use_power(phasing_energy_drain)
|
||||
sleep(step_in*3)
|
||||
can_move = 1
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
/obj/item/mecha_parts/mecha_equipment/proc/attach(obj/mecha/M as obj)
|
||||
M.equipment += src
|
||||
chassis = M
|
||||
src.loc = M
|
||||
src.forceMove(M)
|
||||
M.log_message("[src] initialized.")
|
||||
if(!M.selected)
|
||||
M.selected = src
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
if(do_after_cooldown(target))
|
||||
if(T == chassis.loc && src == chassis.selected)
|
||||
cargo_holder.cargo += O
|
||||
O.loc = chassis
|
||||
O.forceMove(chassis)
|
||||
O.anchored = 0
|
||||
occupant_message("<span class='notice'>[target] succesfully loaded.</span>")
|
||||
log_message("Loaded [O]. Cargo compartment capacity: [cargo_holder.cargo_capacity - cargo_holder.cargo.len]")
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
if(chassis.occupant)
|
||||
for(var/obj/effect/speech_bubble/B in range(1, chassis))
|
||||
if(B.parent == chassis.occupant)
|
||||
B.loc = chassis.loc
|
||||
B.forceMove(chassis.loc)
|
||||
if(move_result)
|
||||
wait = 1
|
||||
chassis.use_power(energy_drain)
|
||||
|
||||
@@ -72,8 +72,7 @@
|
||||
user << span("warning", "[M] already has a tracker installed. Please remove the existing one.")
|
||||
return
|
||||
|
||||
user.drop_from_inventory(src)
|
||||
src.forceMove(M)
|
||||
user.drop_from_inventory(src,M)
|
||||
playsound(get_turf(user), 'sound/items/Deconstruct.ogg', 50, 1)
|
||||
exo_beacons.Add(src)
|
||||
user.visible_message("[user] installs [src] in [M].", "You install [src] in [M]")
|
||||
|
||||
@@ -754,7 +754,7 @@
|
||||
var/obj/item/mecha_parts/mecha_equipment/E = W
|
||||
spawn()
|
||||
if(E.can_attach(src))
|
||||
user.drop_item()
|
||||
user.drop_item() //TODO: Look into attach
|
||||
E.attach(src)
|
||||
user.visible_message("[user] attaches [W] to [src]", "You attach [W] to [src]")
|
||||
else
|
||||
@@ -830,8 +830,7 @@
|
||||
if(state==3)
|
||||
if(!src.cell)
|
||||
user << "You install the powercell"
|
||||
user.drop_item()
|
||||
W.forceMove(src)
|
||||
user.drop_from_inventory(W,src)
|
||||
src.cell = W
|
||||
src.log_message("Powercell installed")
|
||||
else
|
||||
@@ -1278,7 +1277,7 @@
|
||||
if(istype(mob_container, /obj/item/device/mmi))
|
||||
var/obj/item/device/mmi/mmi = mob_container
|
||||
if(mmi.brainmob)
|
||||
occupant.loc = mmi
|
||||
occupant.forceMove(mmi)
|
||||
mmi.mecha = null
|
||||
src.occupant.canmove = 0
|
||||
src.verbs += /obj/mecha/verb/eject
|
||||
|
||||
@@ -566,7 +566,7 @@
|
||||
custom_action(step, atom/used_atom, mob/user)
|
||||
user.visible_message("[user] has connected [used_atom] to [holder].", "You connect [used_atom] to [holder]")
|
||||
holder.add_overlay("[used_atom.icon_state]+o")
|
||||
user.drop_item()
|
||||
user.drop_from_inventory(used_atom,get_turf(holder))
|
||||
qdel(used_atom)
|
||||
return 1
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
if(!isemptylist(crowbar_salvage))
|
||||
var/obj/S = pick(crowbar_salvage)
|
||||
if(S)
|
||||
S.loc = get_turf(user)
|
||||
S.forceMove(get_turf(user))
|
||||
crowbar_salvage -= S
|
||||
user.visible_message("[user] pries [S] from [src].", "You pry [S] from [src].")
|
||||
return
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
/obj/mecha/working/ripley/Destroy()
|
||||
for(var/atom/movable/A in src.cargo)
|
||||
A.loc = loc
|
||||
A.forceMove(loc)
|
||||
var/turf/T = loc
|
||||
if(istype(T))
|
||||
T.Entered(A)
|
||||
|
||||
@@ -14,11 +14,11 @@
|
||||
for(var/mob/M in src)
|
||||
if(M==src.occupant)
|
||||
continue
|
||||
M.loc = get_turf(src)
|
||||
M.forceMove(get_turf(src))
|
||||
M.loc.Entered(M)
|
||||
step_rand(M)
|
||||
for(var/atom/movable/A in src.cargo)
|
||||
A.loc = get_turf(src)
|
||||
A.forceMove(get_turf(src))
|
||||
var/turf/T = get_turf(A)
|
||||
if(T)
|
||||
T.Entered(A)
|
||||
@@ -32,7 +32,7 @@
|
||||
var/obj/O = locate(href_list["drop_from_cargo"])
|
||||
if(O && O in src.cargo)
|
||||
src.occupant_message("<span class='notice'>You unload [O].</span>")
|
||||
O.loc = get_turf(src)
|
||||
O.forceMove(get_turf(src))
|
||||
src.cargo -= O
|
||||
var/turf/T = get_turf(O)
|
||||
if(T)
|
||||
|
||||
@@ -21,11 +21,11 @@ var/list/obj/effect/bump_teleporter/BUMP_TELEPORTERS = list()
|
||||
|
||||
/obj/effect/bump_teleporter/CollidedWith(atom/user)
|
||||
if(!ismob(user))
|
||||
//user.loc = src.loc //Stop at teleporter location
|
||||
//user.forceMove(src.loc) //Stop at teleporter location
|
||||
return
|
||||
|
||||
if(!id_target)
|
||||
//user.loc = src.loc //Stop at teleporter location, there is nowhere to teleport to.
|
||||
//user.forceMove(src.loc) //Stop at teleporter location, there is nowhere to teleport to.
|
||||
return
|
||||
|
||||
for(var/obj/effect/bump_teleporter/BT in BUMP_TELEPORTERS)
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
/obj/structure/foamedmetal/attackby(var/obj/item/I, var/mob/user)
|
||||
if(istype(I, /obj/item/weapon/grab))
|
||||
var/obj/item/weapon/grab/G = I
|
||||
G.affecting.loc = src.loc
|
||||
G.affecting.forceMove(src.loc)
|
||||
visible_message("<span class='warning'>[G.assailant] smashes [G.affecting] through the foamed metal wall.</span>")
|
||||
qdel(I)
|
||||
qdel(src)
|
||||
|
||||
@@ -155,8 +155,8 @@
|
||||
|
||||
/obj/structure/sign/poster/proc/roll_and_drop(turf/newloc)
|
||||
var/obj/item/weapon/contraband/poster/P = new(src, serial_number)
|
||||
P.loc = newloc
|
||||
src.loc = P
|
||||
P.forceMove(newloc)
|
||||
src.forceMove(P)
|
||||
qdel(src)
|
||||
|
||||
/datum/poster
|
||||
|
||||
@@ -133,7 +133,7 @@
|
||||
|
||||
I.loc = null
|
||||
|
||||
I.loc = T
|
||||
I.forceMove(T)
|
||||
|
||||
/obj/item/examine(mob/user, var/distance = -1)
|
||||
var/size
|
||||
|
||||
@@ -349,8 +349,7 @@
|
||||
)
|
||||
var/obj/item/weapon/tank/T = W
|
||||
internal_tank = T
|
||||
user.drop_from_inventory(T)
|
||||
T.forceMove(src)
|
||||
user.drop_from_inventory(T,src)
|
||||
use_internal_tank = 1
|
||||
START_PROCESSING(SSfast_process, src)
|
||||
return
|
||||
|
||||
@@ -136,7 +136,7 @@ move an amendment</a> to the drawing.</p>
|
||||
/obj/item/blueprints/proc/move_turfs_to_area(var/list/turf/turfs, var/area/A)
|
||||
A.contents.Add(turfs)
|
||||
//oldarea.contents.Remove(usr.loc) // not needed
|
||||
//T.loc = A //error: cannot change constant value
|
||||
//T.forceMove(A) //error: cannot change constant value
|
||||
|
||||
|
||||
/obj/item/blueprints/proc/edit_area()
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user