Merge pull request #856 from Giacomand/reverse_pick

Re-added reverse pickpocketing. Resolves #792.
Pockets are now seperate
This commit is contained in:
KazeEspada
2013-07-10 19:15:01 -07:00
4 changed files with 42 additions and 18 deletions
@@ -395,10 +395,10 @@ In all, this is a lot like the monkey code. /N
dat += {"
<BR>
<BR><A href='?src=\ref[user];mach_close=mob[name]'>Close</A>
<BR><A href='?src=\ref[user];mach_close=mob\ref[src]'>Close</A>
"}
user << browse(dat, "window=mob[name];size=325x500")
onclose(user, "mob[name]")
user << browse(dat, "window=mob\ref[src];size=325x500")
onclose(user, "mob\ref[src]")
/mob/living/carbon/alien/humanoid/Topic(href, href_list)
+3 -3
View File
@@ -495,10 +495,10 @@
dat += {"
<BR>
<BR><A href='?src=\ref[user];mach_close=mob[name]'>Close</A>
<BR><A href='?src=\ref[user];mach_close=mob\ref[src]'>Close</A>
"}
user << browse(dat, "window=mob[name];size=325x500")
onclose(user, "mob[name]")
user << browse(dat, "window=mob\ref[src];size=325x500")
onclose(user, "mob\ref[src]")
/mob/living/carbon/Topic(href, href_list)
..()
+33 -9
View File
@@ -374,15 +374,16 @@
if(legcuffed)
dat += "<BR><A href='?src=\ref[src];item=[slot_legcuffed]'>Legcuffed</A>"
if(w_uniform)
dat += "<BR><A href='?src=\ref[src];pockets=1'>Empty Pockets</A>"
dat += "<BR><BR><A href='?src=\ref[src];pockets=left'>Left Pocket ([l_store ? "Full" : "Empty"])</A>"
dat += " - <A href='?src=\ref[src];pockets=right'>Right Pocket ([r_store ? "Full" : "Empty"])</A>"
dat += {"
<BR>
<BR><A href='?src=\ref[user];mach_close=mob[name]'>Close</A>
<BR><A href='?src=\ref[user];mach_close=mob\ref[src]'>Close</A>
"}
user << browse(dat, "window=mob[name];size=340x480")
onclose(user, "mob[name]")
user << browse(dat, "window=mob\ref[src];size=340x480")
onclose(user, "mob\ref[src]")
// called when something steps onto a human
@@ -478,15 +479,38 @@
//strip panel
if(!usr.stat && usr.canmove && !usr.restrained() && in_range(src, usr))
if(href_list["pockets"])
var/pocket_side = href_list["pockets"]
var/pocket_id = (pocket_side == "right" ? slot_r_store : slot_l_store)
var/obj/item/pocket_item = (pocket_id == slot_r_store ? src.r_store : src.l_store)
var/obj/item/place_item = usr.get_active_hand() // Item to place in the pocket, if it's empty
//visible_message("<span class='danger'>[usr] tries to empty [src]'s pockets.</span>", \
"<span class='userdanger'>[usr] tries to empty [src]'s pockets.</span>") // Pickpocketing!
usr << "<span class='notice'>You try to empty [src]'s pockets.</span>"
if(do_mob(usr, src, STRIP_DELAY * 0.5))
u_equip(r_store)
u_equip(l_store)
if(pocket_item)
usr << "<span class='notice'>You try to empty [src]'s [pocket_side] pocket.</span>"
else if(place_item && place_item.mob_can_equip(src, pocket_id, 1))
usr << "<span class='notice'>You try to place [place_item] into [src]'s [pocket_side] pocket.</span>"
else
return
if(do_mob(usr, src, STRIP_DELAY))
if(pocket_item)
u_equip(pocket_item)
else
if(place_item)
usr.u_equip(place_item)
equip_to_slot_if_possible(place_item, pocket_id, 0, 1)
// Update strip window
if(usr.machine == src && in_range(src, usr))
show_inv(usr)
else
// Display a warning if the user mocks up
src << "<span class='warning'>You feel your pockets being fumbled with!</span>"
src << "<span class='warning'>You feel your [pocket_side] pocket being fumbled with!</span>"
if(href_list["criminal"])
if(istype(usr, /mob/living/carbon/human))
+3 -3
View File
@@ -238,10 +238,10 @@ var/list/slot_equipment_priority = list( \
<HR>
<BR><B>Left Hand:</B> <A href='?src=\ref[src];item=[slot_l_hand]'> [l_hand ? l_hand : "Nothing"]</A>
<BR><B>Right Hand:</B> <A href='?src=\ref[src];item=[slot_r_hand]'> [r_hand ? r_hand : "Nothing"]</A>
<BR><A href='?src=\ref[user];mach_close=mob[name]'>Close</A>
<BR><A href='?src=\ref[user];mach_close=mob\ref[src]'>Close</A>
"}
user << browse(dat, "window=mob[name];size=325x500")
onclose(user, "mob[name]")
user << browse(dat, "window=mob\ref[src];size=325x500")
onclose(user, "mob\ref[src]")
/mob/verb/mode()