mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-19 20:15:47 +01:00
Resolved Conflicts:
code/game/gamemodes/gang/dominator.dm
This commit is contained in:
@@ -89,10 +89,11 @@
|
||||
var/mob/M = user
|
||||
if(isigniter(S.a_left) == isigniter(S.a_right)) //Check if either part of the assembly has an igniter, but if both parts are igniters, then fuck it
|
||||
return
|
||||
if(!M.drop_item()) //Remove the assembly from your hands
|
||||
return
|
||||
|
||||
var/obj/item/device/onetankbomb/R = new /obj/item/device/onetankbomb(loc)
|
||||
|
||||
M.drop_item() //Remove the assembly from your hands
|
||||
M.remove_from_mob(src) //Remove the tank from your character,in case you were holding it
|
||||
M.put_in_hands(R) //Equips the bomb if possible, or puts it on the floor.
|
||||
|
||||
|
||||
@@ -235,7 +235,8 @@ BLIND // can't see anything
|
||||
return 0
|
||||
else
|
||||
if(user)
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
hastie = I
|
||||
I.loc = src
|
||||
if(user && notifyAttach)
|
||||
|
||||
@@ -196,7 +196,8 @@
|
||||
var/obj/item/device/flashlight/seclite/S = A
|
||||
if(can_flashlight)
|
||||
if(!F)
|
||||
user.drop_item()
|
||||
if(!user.unEquip(A))
|
||||
return
|
||||
user << "<span class='notice'>You click [S] into place on [src].</span>"
|
||||
if(S.on)
|
||||
SetLuminosity(0)
|
||||
@@ -228,7 +229,8 @@
|
||||
if(helmetCam)
|
||||
user << "<span class='notice'>[src] already has a mounted camera.</span>"
|
||||
return
|
||||
user.drop_item()
|
||||
if(!user.unEquip(A))
|
||||
return
|
||||
helmetCam = new /obj/machinery/camera/portable(src)
|
||||
helmetCam.assembly = A
|
||||
A.loc = helmetCam
|
||||
|
||||
@@ -44,7 +44,8 @@
|
||||
else if((ingredients.len >= ingMax) || (reagents.total_volume >= volume))
|
||||
user << "<span class='warning'>You can't add more ingredients to [src]!</span>"
|
||||
else
|
||||
user.drop_item()
|
||||
if(!user.unEquip(I))
|
||||
return
|
||||
if(S.trash)
|
||||
new S.trash(get_turf(user))
|
||||
S.trash = null //we remove the plate before adding the ingredient
|
||||
|
||||
@@ -63,7 +63,8 @@
|
||||
if(istype(O, /obj/item/weapon/reagent_containers/food/drinks/drinkingglass))
|
||||
var/obj/item/weapon/reagent_containers/food/drinks/drinkingglass/DG = O
|
||||
if(!DG.reagents.total_volume) //glass is empty
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
qdel(DG)
|
||||
glasses++
|
||||
user << "<span class='notice'>The [src] accepts the drinking glass, sterilizing it.</span>"
|
||||
@@ -72,7 +73,8 @@
|
||||
user << "<span class='warning'>The [src] is at full capacity.</span>"
|
||||
else
|
||||
var/obj/item/weapon/reagent_containers/food/snacks/S = O
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
S.loc = src
|
||||
if(stored_food[sanitize(S.name)])
|
||||
stored_food[sanitize(S.name)]++
|
||||
|
||||
@@ -60,7 +60,8 @@
|
||||
if(target.stat == 0)
|
||||
user << "<span class='danger'>The monkey is struggling far too much to put it in the recycler.</span>"
|
||||
else
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
qdel(target)
|
||||
user << "<span class='notice'>You stuff the monkey in the machine.</span>"
|
||||
playsound(src.loc, 'sound/machines/juicer.ogg', 50, 1)
|
||||
|
||||
@@ -897,7 +897,7 @@ obj/item/weapon/reagent_containers/food/snacks/grown/shell/eggy/add_juice()
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grown/tomato/blue/bluespace/attack_self(var/mob/user)
|
||||
squish(user)
|
||||
user.drop_item()
|
||||
user.unEquip(src)
|
||||
src.visible_message("[user] squashes the [src.name].","<span class='italics'>You hear a smack.</span>")
|
||||
qdel(src)
|
||||
|
||||
|
||||
@@ -63,7 +63,8 @@
|
||||
|
||||
if(2)
|
||||
if(is_type_in_list(I, allowed_books))
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
I.loc = src
|
||||
update_icon()
|
||||
else if(istype(I, /obj/item/weapon/storage/bag/books))
|
||||
|
||||
@@ -447,7 +447,8 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums
|
||||
|
||||
/obj/machinery/libraryscanner/attackby(var/obj/O as obj, var/mob/user as mob, params)
|
||||
if(istype(O, /obj/item/weapon/book))
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
O.loc = src
|
||||
|
||||
/obj/machinery/libraryscanner/attack_hand(var/mob/user as mob)
|
||||
@@ -505,7 +506,8 @@ var/global/list/datum/cachedbook/cachedbooks // List of our cached book datums
|
||||
if(busy)
|
||||
user << "<span class='warning'>The book binder is busy. Please wait for completion of previous operation.</span>"
|
||||
return
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
O.loc = src
|
||||
user.visible_message("[user] loads some paper into [src].", "You load some paper into [src].")
|
||||
src.visible_message("[src] begins to hum as it warms up its printing drums.")
|
||||
|
||||
@@ -89,7 +89,8 @@
|
||||
if(istype(W,/obj/item/weapon/card/id))
|
||||
var/obj/item/weapon/card/id/I = usr.get_active_hand()
|
||||
if(istype(I) && !istype(inserted_id))
|
||||
usr.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
I.loc = src
|
||||
inserted_id = I
|
||||
interact(user)
|
||||
@@ -184,7 +185,8 @@
|
||||
else if(href_list["choice"] == "insert")
|
||||
var/obj/item/weapon/card/id/I = usr.get_active_hand()
|
||||
if(istype(I))
|
||||
usr.drop_item()
|
||||
if(!usr.drop_item())
|
||||
return
|
||||
I.loc = src
|
||||
inserted_id = I
|
||||
else usr << "<span class='warning'>No valid ID.</span>"
|
||||
@@ -333,7 +335,8 @@
|
||||
else if(href_list["choice"] == "insert")
|
||||
var/obj/item/weapon/card/id/I = usr.get_active_hand()
|
||||
if(istype(I))
|
||||
usr.drop_item()
|
||||
if(!usr.drop_item())
|
||||
return
|
||||
I.loc = src
|
||||
inserted_id = I
|
||||
else usr << "<span class='danger'>No valid ID.</span>"
|
||||
@@ -356,7 +359,8 @@
|
||||
if(istype(I,/obj/item/weapon/card/id))
|
||||
var/obj/item/weapon/card/id/C = usr.get_active_hand()
|
||||
if(istype(C) && !istype(inserted_id))
|
||||
usr.drop_item()
|
||||
if(!usr.drop_item())
|
||||
return
|
||||
C.loc = src
|
||||
inserted_id = C
|
||||
interact(user)
|
||||
|
||||
@@ -86,7 +86,8 @@
|
||||
else if(href_list["choice"] == "insert")
|
||||
var/obj/item/weapon/card/id/prisoner/I = usr.get_active_hand()
|
||||
if(istype(I))
|
||||
usr.drop_item()
|
||||
if(!usr.drop_item())
|
||||
return
|
||||
I.loc = src
|
||||
inserted_id = I
|
||||
else usr << "<span class='warning'>Invalid ID.</span>"
|
||||
|
||||
@@ -60,8 +60,9 @@
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/coin))
|
||||
var/obj/item/weapon/coin/C = W
|
||||
if(!user.drop_item())
|
||||
return
|
||||
user << "<span class='notice'>You add the [C.name] into the bag.</span>"
|
||||
usr.drop_item()
|
||||
contents += C
|
||||
if (istype(W, /obj/item/weapon/moneybag))
|
||||
var/obj/item/weapon/moneybag/C = W
|
||||
|
||||
@@ -11,7 +11,8 @@
|
||||
|
||||
/obj/structure/ore_box/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
|
||||
if (istype(W, /obj/item/weapon/ore))
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
W.loc = src
|
||||
if (istype(W, /obj/item/weapon/storage))
|
||||
var/obj/item/weapon/storage/S = W
|
||||
|
||||
@@ -41,6 +41,8 @@
|
||||
user << "<span class='warning'>You aren't sure where this brain came from, but you're pretty sure it's a useless brain!</span>"
|
||||
return
|
||||
|
||||
if(!user.unEquip(src))
|
||||
return
|
||||
var/mob/living/carbon/brain/B = newbrain.brainmob
|
||||
if(!B.key)
|
||||
var/mob/dead/observer/ghost = B.get_ghost()
|
||||
@@ -58,7 +60,6 @@
|
||||
dead_mob_list -= brainmob //Update dem lists
|
||||
living_mob_list += brainmob
|
||||
|
||||
user.drop_item()
|
||||
newbrain.loc = src //P-put your brain in it
|
||||
brain = newbrain
|
||||
|
||||
|
||||
@@ -450,7 +450,8 @@
|
||||
else if(cell)
|
||||
user << "<span class='warning'>There is a power cell already installed!</span>"
|
||||
else
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
W.loc = src
|
||||
cell = W
|
||||
user << "<span class='notice'>You insert the power cell.</span>"
|
||||
@@ -525,27 +526,29 @@
|
||||
else if(istype(W, /obj/item/borg/upgrade/))
|
||||
var/obj/item/borg/upgrade/U = W
|
||||
if(!opened)
|
||||
usr << "<span class='warning'>You must access the borgs internals!</span>"
|
||||
user << "<span class='warning'>You must access the borgs internals!</span>"
|
||||
else if(!src.module && U.require_module)
|
||||
usr << "<span class='warning'>The borg must choose a module before it can be upgraded!</span>"
|
||||
user << "<span class='warning'>The borg must choose a module before it can be upgraded!</span>"
|
||||
else if(U.locked)
|
||||
usr << "<span class='warning'>The upgrade is locked and cannot be used yet!</span>"
|
||||
user << "<span class='warning'>The upgrade is locked and cannot be used yet!</span>"
|
||||
else
|
||||
if(!user.drop_item())
|
||||
return
|
||||
if(U.action(src))
|
||||
usr << "<span class='notice'>You apply the upgrade to [src].</span>"
|
||||
usr.drop_item()
|
||||
user << "<span class='notice'>You apply the upgrade to [src].</span>"
|
||||
U.loc = src
|
||||
else
|
||||
usr << "<span class='danger'>Upgrade error.</span>"
|
||||
user << "<span class='danger'>Upgrade error.</span>"
|
||||
|
||||
else if(istype(W, /obj/item/device/toner))
|
||||
if(toner >= tonermax)
|
||||
usr << "<span class='warning'>The toner level of [src] is at it's highest level possible!</span>"
|
||||
user << "<span class='warning'>The toner level of [src] is at it's highest level possible!</span>"
|
||||
else
|
||||
if(!user.drop_item())
|
||||
return
|
||||
toner = 40
|
||||
usr.drop_item()
|
||||
qdel(W)
|
||||
usr << "<span class='notice'>You fill the toner level of [src] to its max capacity.</span>"
|
||||
user << "<span class='notice'>You fill the toner level of [src] to its max capacity.</span>"
|
||||
|
||||
else
|
||||
if(W.force && W.damtype != STAMINA) //only sparks if real damage is dealt.
|
||||
|
||||
@@ -28,7 +28,8 @@
|
||||
|
||||
/obj/item/weapon/clipboard/attackby(obj/item/weapon/W, mob/user, params)
|
||||
if(istype(W, /obj/item/weapon/paper))
|
||||
user.drop_item()
|
||||
if(!user.unEquip(W))
|
||||
return
|
||||
W.loc = src
|
||||
toppaper = W
|
||||
user << "<span class='notice'>You clip the paper onto \the [src].</span>"
|
||||
@@ -76,7 +77,8 @@
|
||||
if(!haspen)
|
||||
if(istype(usr.get_active_hand(), /obj/item/weapon/pen))
|
||||
var/obj/item/weapon/pen/W = usr.get_active_hand()
|
||||
usr.drop_item()
|
||||
if(!usr.unEquip(W))
|
||||
return
|
||||
W.loc = src
|
||||
haspen = W
|
||||
usr << "<span class='notice'>You slot [W] into [src].</span>"
|
||||
|
||||
@@ -43,8 +43,9 @@
|
||||
|
||||
/obj/structure/filingcabinet/attackby(obj/item/P, mob/user, params)
|
||||
if(istype(P, /obj/item/weapon/paper) || istype(P, /obj/item/weapon/folder) || istype(P, /obj/item/weapon/photo) || istype(P, /obj/item/documents))
|
||||
if(!user.drop_item())
|
||||
return
|
||||
user << "<span class='notice'>You put [P] in [src].</span>"
|
||||
user.drop_item()
|
||||
P.loc = src
|
||||
icon_state = "[initial(icon_state)]-open"
|
||||
sleep(5)
|
||||
|
||||
@@ -31,7 +31,8 @@
|
||||
|
||||
/obj/item/weapon/folder/attackby(obj/item/weapon/W, mob/user, params)
|
||||
if(istype(W, /obj/item/weapon/paper) || istype(W, /obj/item/weapon/photo) || istype(W, /obj/item/documents))
|
||||
user.drop_item()
|
||||
if(!user.unEquip(W))
|
||||
return
|
||||
W.loc = src
|
||||
user << "<span class='notice'>You put [W] into [src].</span>"
|
||||
update_icon()
|
||||
|
||||
@@ -55,8 +55,9 @@
|
||||
/obj/item/weapon/hand_labeler/attackby(obj/item/I as obj, mob/user as mob, params)
|
||||
..()
|
||||
if(istype(I, /obj/item/hand_labeler_refill))
|
||||
if(!user.unEquip(I))
|
||||
return
|
||||
user << "<span class='notice'>You insert [I] into [src].</span>"
|
||||
user.drop_item()
|
||||
qdel(I)
|
||||
labels_left = initial(labels_left)
|
||||
return
|
||||
|
||||
@@ -71,7 +71,8 @@
|
||||
if(!istype(i))
|
||||
return ..()
|
||||
|
||||
user.drop_item()
|
||||
if(!user.unEquip(i))
|
||||
return
|
||||
i.loc = src
|
||||
user << "<span class='notice'>You put [i] in [src].</span>"
|
||||
papers.Add(i)
|
||||
|
||||
@@ -96,19 +96,25 @@
|
||||
if(M.client)
|
||||
M.mind_initialize() //give them a mind datum if they don't have one.
|
||||
if(user.mind in ticker.mode.A_bosses)
|
||||
if(ticker.mode.add_gangster(M.mind,"A"))
|
||||
M.Paralyse(5)
|
||||
cooldown(max(0,ticker.mode.B_gang.len - ticker.mode.A_gang.len))
|
||||
else
|
||||
user << "<span class='warning'>This mind is resistant to recruitment!</span>"
|
||||
var/recruitable = ticker.mode.add_gangster(M.mind,"A")
|
||||
switch(recruitable)
|
||||
if(2)
|
||||
M.Paralyse(5)
|
||||
cooldown(max(0,ticker.mode.B_gang.len - ticker.mode.A_gang.len))
|
||||
if(1)
|
||||
user << "<span class='warning'>This mind has already been recruited by another gang!</span>"
|
||||
else
|
||||
user << "<span class='warning'>This mind is resistant to recruitment!</span>"
|
||||
else if(user.mind in ticker.mode.B_bosses)
|
||||
if(ticker.mode.add_gangster(M.mind,"B"))
|
||||
M.Paralyse(5)
|
||||
cooldown(max(0,ticker.mode.A_gang.len - ticker.mode.B_gang.len))
|
||||
else
|
||||
user << "<span class='warning'>This mind is resistant to recruitment!</span>"
|
||||
else
|
||||
user << "<span class='warning'>This mind is so vacant that it is not susceptible to influence!</span>"
|
||||
var/recruitable = ticker.mode.add_gangster(M.mind,"B")
|
||||
switch(recruitable)
|
||||
if(2)
|
||||
M.Paralyse(5)
|
||||
cooldown(max(0,ticker.mode.A_gang.len - ticker.mode.B_gang.len))
|
||||
if(1)
|
||||
user << "<span class='warning'>This mind has already been recruited by another gang!</span>"
|
||||
else
|
||||
user << "<span class='warning'>This mind is resistant to recruitment!</span>"
|
||||
|
||||
/obj/item/weapon/pen/gang/proc/cooldown(modifier)
|
||||
cooldown = 1
|
||||
|
||||
@@ -223,7 +223,8 @@
|
||||
/obj/machinery/photocopier/attackby(obj/item/O, mob/user, params)
|
||||
if(istype(O, /obj/item/weapon/paper))
|
||||
if(copier_empty())
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
copy = O
|
||||
O.loc = src
|
||||
user << "<span class='notice'>You insert [O] into [src].</span>"
|
||||
@@ -234,7 +235,8 @@
|
||||
|
||||
else if(istype(O, /obj/item/weapon/photo))
|
||||
if(copier_empty())
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
photocopy = O
|
||||
O.loc = src
|
||||
user << "<span class='notice'>You insert [O] into [src].</span>"
|
||||
@@ -245,7 +247,8 @@
|
||||
|
||||
else if(istype(O, /obj/item/device/toner))
|
||||
if(toner <= 0)
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
qdel(O)
|
||||
toner = 40
|
||||
user << "<span class='notice'>You insert [O] into [src].</span>"
|
||||
|
||||
@@ -140,8 +140,9 @@
|
||||
if(pictures_left)
|
||||
user << "<span class='notice'>[src] still has some film in it!</span>"
|
||||
return
|
||||
if(!user.unEquip(I))
|
||||
return
|
||||
user << "<span class='notice'>You insert [I] into [src].</span>"
|
||||
user.drop_item()
|
||||
qdel(I)
|
||||
pictures_left = pictures_max
|
||||
return
|
||||
|
||||
@@ -413,7 +413,8 @@
|
||||
if (stat & MAINT)
|
||||
user << "<span class='warning'>There is no connector for your power cell!</span>"
|
||||
return
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
W.loc = src
|
||||
cell = W
|
||||
user.visible_message(\
|
||||
|
||||
@@ -347,6 +347,8 @@
|
||||
src.add_fingerprint(user)
|
||||
var/obj/item/weapon/light/L = W
|
||||
if(istype(L, light_type))
|
||||
if(!user.drop_item())
|
||||
return
|
||||
status = L.status
|
||||
user << "<span class='notice'>You insert the [L.name].</span>"
|
||||
switchcount = L.switchcount
|
||||
@@ -355,7 +357,6 @@
|
||||
on = has_power()
|
||||
update()
|
||||
|
||||
user.drop_item() //drop the item to update overlays and such
|
||||
qdel(L)
|
||||
|
||||
if(on && rigged)
|
||||
|
||||
@@ -64,7 +64,8 @@ var/global/list/rad_collectors = list()
|
||||
if(src.P)
|
||||
user << "<span class='warning'>There's already a plasma tank loaded!</span>"
|
||||
return 1
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return 1
|
||||
src.P = W
|
||||
W.loc = src
|
||||
update_icons()
|
||||
|
||||
@@ -253,8 +253,9 @@
|
||||
|
||||
if(!tracker)
|
||||
if(istype(W, /obj/item/weapon/tracker_electronics))
|
||||
if(!user.drop_item())
|
||||
return
|
||||
tracker = 1
|
||||
user.drop_item()
|
||||
qdel(W)
|
||||
user.visible_message("[user] inserts the electronics into the solar assembly.", "<span class='notice'>You insert the electronics into the solar assembly.</span>")
|
||||
return 1
|
||||
|
||||
@@ -232,7 +232,8 @@
|
||||
desc = "Its nerf or nothing! ... Although, this one doesn't look too safe."
|
||||
user << "<span class='notice'>You pop the safety cap off of [src].</span>"
|
||||
else if ((istype(A, /obj/item/weapon/pen)) && modified && !BB.contents.len)
|
||||
user.drop_item()
|
||||
if(!user.unEquip(A))
|
||||
return
|
||||
A.loc = BB
|
||||
BB.damage = 5
|
||||
BB.nodamage = 0
|
||||
|
||||
@@ -134,6 +134,17 @@
|
||||
..()
|
||||
icon_state = "45-[ammo_count() ? "8" : "0"]"
|
||||
|
||||
/obj/item/ammo_box/magazine/uzim9mm
|
||||
name = "uzi magazine (9mm)"
|
||||
icon_state = "uzi9mm-32"
|
||||
ammo_type = /obj/item/ammo_casing/c9mm
|
||||
caliber = "9mm"
|
||||
max_ammo = 32
|
||||
|
||||
/obj/item/ammo_box/magazine/uzim9mm/update_icon()
|
||||
..()
|
||||
icon_state = "uzi9mm-[round(ammo_count(),4)]"
|
||||
|
||||
/obj/item/ammo_box/magazine/smgm9mm
|
||||
name = "SMG magazine (9mm)"
|
||||
icon_state = "smg9mm-20"
|
||||
@@ -157,11 +168,11 @@
|
||||
..()
|
||||
icon_state = "c20r45-[round(ammo_count(),2)]"
|
||||
|
||||
obj/item/ammo_box/magazine/tommygunm9mm
|
||||
name = "drum magazine (9mm)"
|
||||
obj/item/ammo_box/magazine/tommygunm45
|
||||
name = "drum magazine (.45)"
|
||||
icon_state = "drum45"
|
||||
ammo_type = /obj/item/ammo_casing/c9mm
|
||||
caliber = "9mm"
|
||||
ammo_type = /obj/item/ammo_casing/c45
|
||||
caliber = ".45"
|
||||
max_ammo = 50
|
||||
|
||||
/obj/item/ammo_box/magazine/m50
|
||||
|
||||
@@ -98,8 +98,8 @@
|
||||
if(heavy_weapon)
|
||||
if(user.get_inactive_hand())
|
||||
if(prob(15))
|
||||
user.visible_message("<span class='danger'>[src] flies out of [user]'s hands!</span>", "<span class='userdanger'>[src] kicks out of your grip!</span>")
|
||||
user.drop_item()
|
||||
if(user.drop_item())
|
||||
user.visible_message("<span class='danger'>[src] flies out of [user]'s hands!</span>", "<span class='userdanger'>[src] kicks out of your grip!</span>")
|
||||
|
||||
/obj/item/weapon/gun/emp_act(severity)
|
||||
for(var/obj/O in contents)
|
||||
@@ -235,7 +235,8 @@
|
||||
if(user.l_hand != src && user.r_hand != src)
|
||||
user << "<span class='warning'>You'll need [src] in your hands to do that!</span>"
|
||||
return
|
||||
user.drop_item()
|
||||
if(!user.unEquip(A))
|
||||
return
|
||||
user << "<span class='notice'>You click [S] into place on [src].</span>"
|
||||
if(S.on)
|
||||
SetLuminosity(0)
|
||||
|
||||
@@ -20,7 +20,8 @@
|
||||
|
||||
if((istype(I, /obj/item/weapon/grenade)))
|
||||
if(grenades.len < max_grenades)
|
||||
user.drop_item()
|
||||
if(!user.unEquip(I))
|
||||
return
|
||||
I.loc = src
|
||||
grenades += I
|
||||
user << "<span class='notice'>You put the grenade in the grenade launcher.</span>"
|
||||
|
||||
@@ -68,7 +68,8 @@
|
||||
if(user.l_hand != src && user.r_hand != src)
|
||||
user << "<span class='notice'>You'll need [src] in your hands to do that.</span>"
|
||||
return
|
||||
user.drop_item()
|
||||
if(!user.unEquip(A))
|
||||
return
|
||||
user << "<span class='notice'>You screw [S] onto [src].</span>"
|
||||
suppressed = A
|
||||
S.oldsound = fire_sound
|
||||
|
||||
@@ -106,7 +106,13 @@
|
||||
icon_state = "c20r[magazine ? "-[Ceiling(get_ammo(0)/4)*4]" : ""][chambered ? "" : "-e"][suppressed ? "-suppressed" : ""]"
|
||||
return
|
||||
|
||||
|
||||
/obj/item/weapon/gun/projectile/automatic/mini_uzi
|
||||
name = "uzi"
|
||||
desc = "A lightweight, burst-fire submachine gun, for when you really want someone dead. Uses 9mm rounds."
|
||||
icon_state = "mini-uzi"
|
||||
origin_tech = "combat=5;materials=2;syndicate=8"
|
||||
mag_type = /obj/item/ammo_box/magazine/uzim9mm
|
||||
burst_size = 2
|
||||
|
||||
/obj/item/weapon/gun/projectile/automatic/l6_saw
|
||||
name = "syndicate LMG"
|
||||
@@ -237,7 +243,7 @@
|
||||
w_class = 5
|
||||
slot_flags = 0
|
||||
origin_tech = "combat=5;materials=1;syndicate=2"
|
||||
mag_type = /obj/item/ammo_box/magazine/tommygunm9mm
|
||||
mag_type = /obj/item/ammo_box/magazine/tommygunm45
|
||||
fire_sound = 'sound/weapons/Gunshot_smg.ogg'
|
||||
can_suppress = 0
|
||||
burst_size = 4
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
playsound(user, fire_sound, 50, 1)
|
||||
user << "<span class='userdanger'>[src] blows up in your face!</span>"
|
||||
user.take_organ_damage(0,20)
|
||||
user.drop_item()
|
||||
user.unEquip(src)
|
||||
qdel(src)
|
||||
return 0
|
||||
..()
|
||||
|
||||
@@ -63,7 +63,8 @@
|
||||
/obj/item/weapon/gun/syringe/attackby(var/obj/item/A as obj, mob/user as mob, params, var/show_msg = 1)
|
||||
if(istype(A, /obj/item/weapon/reagent_containers/syringe))
|
||||
if(syringes.len < max_syringes)
|
||||
user.drop_item()
|
||||
if(!user.unEquip(A))
|
||||
return
|
||||
user << "<span class='notice'>You load [A] into \the [src].</span>"
|
||||
syringes.Add(A)
|
||||
A.loc = src
|
||||
|
||||
@@ -30,7 +30,8 @@
|
||||
user << "<span class ='notice'>You remove [G]'s old pin.</span>"
|
||||
|
||||
if(!G.pin)
|
||||
user.drop_item()
|
||||
if(!user.unEquip(src))
|
||||
return
|
||||
gun_insert(user, G)
|
||||
user << "<span class ='notice'>You insert [src] into [G].</span>"
|
||||
else
|
||||
|
||||
@@ -155,9 +155,10 @@
|
||||
if(src.beaker)
|
||||
user << "<span class='warning'>A beaker is already loaded into the machine!</span>"
|
||||
return
|
||||
if(!user.drop_item())
|
||||
return
|
||||
|
||||
src.beaker = B
|
||||
user.drop_item()
|
||||
B.loc = src
|
||||
user << "<span class='notice'>You add the beaker to the machine.</span>"
|
||||
SSnano.update_uis(src) // update all UIs attached to src
|
||||
@@ -290,8 +291,10 @@
|
||||
if(src.beaker)
|
||||
user << "<span class='warning'>A beaker is already loaded into the machine!</span>"
|
||||
return
|
||||
if(!user.drop_item())
|
||||
return
|
||||
|
||||
src.beaker = B
|
||||
user.drop_item()
|
||||
B.loc = src
|
||||
user << "<span class='notice'>You add the beaker to the machine.</span>"
|
||||
src.updateUsrDialog()
|
||||
@@ -301,8 +304,10 @@
|
||||
if(src.loaded_pill_bottle)
|
||||
user << "<span class='warning'>A pill bottle is already loaded into the machine!</span>"
|
||||
return
|
||||
if(!user.drop_item())
|
||||
return
|
||||
|
||||
src.loaded_pill_bottle = B
|
||||
user.drop_item()
|
||||
B.loc = src
|
||||
user << "<span class='notice'>You add the pill bottle into the dispenser slot.</span>"
|
||||
src.updateUsrDialog()
|
||||
@@ -619,8 +624,10 @@
|
||||
if(src.beaker)
|
||||
user << "<span class='warning'>A beaker is already loaded into the machine!</span>"
|
||||
return
|
||||
if(!user.drop_item())
|
||||
return
|
||||
|
||||
src.beaker = B
|
||||
user.drop_item()
|
||||
B.loc = src
|
||||
user << "<span class='notice'>You add the beaker to the machine.</span>"
|
||||
src.updateUsrDialog()
|
||||
@@ -630,8 +637,10 @@
|
||||
if(src.loaded_pill_bottle)
|
||||
user << "<span class='warning'>A pill bottle is already loaded into the machine!</span>"
|
||||
return
|
||||
if(!user.drop_item())
|
||||
return
|
||||
|
||||
src.loaded_pill_bottle = B
|
||||
user.drop_item()
|
||||
B.loc = src
|
||||
user << "<span class='notice'>You add the pill bottle into the dispenser slot.</span>"
|
||||
src.updateUsrDialog()
|
||||
@@ -919,9 +928,10 @@
|
||||
if(src.beaker)
|
||||
user << "<span class='warning'>A beaker is already loaded into the machine!</span>"
|
||||
return
|
||||
if(!user.drop_item())
|
||||
return
|
||||
|
||||
src.beaker = I
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
user << "<span class='notice'>You add the beaker to the machine.</span>"
|
||||
src.updateUsrDialog()
|
||||
@@ -1053,8 +1063,9 @@
|
||||
if (beaker)
|
||||
return 1
|
||||
else
|
||||
if(!user.drop_item())
|
||||
return 1
|
||||
src.beaker = O
|
||||
user.drop_item()
|
||||
O.loc = src
|
||||
update_icon()
|
||||
src.updateUsrDialog()
|
||||
@@ -1548,8 +1559,9 @@
|
||||
if (beaker)
|
||||
return 1
|
||||
else
|
||||
if(!user.drop_item())
|
||||
return 1
|
||||
src.beaker = O
|
||||
user.drop_item()
|
||||
O.loc = src
|
||||
update_icon()
|
||||
src.updateUsrDialog()
|
||||
|
||||
@@ -157,7 +157,8 @@
|
||||
|
||||
/obj/structure/reagent_dispensers/water_cooler/attackby(var/obj/item/I, var/mob/user, params)
|
||||
if(istype(I, /obj/item/weapon/paper))
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
qdel(I)
|
||||
cups++
|
||||
return
|
||||
|
||||
@@ -123,9 +123,9 @@
|
||||
stuff_mob_in(G.affecting, user)
|
||||
return
|
||||
|
||||
if(!I || I.flags & NODROP) return
|
||||
if(!user.drop_item())
|
||||
return
|
||||
|
||||
user.drop_item()
|
||||
I.loc = src
|
||||
user.visible_message("[user.name] places \the [I] into \the [src].", \
|
||||
"<span class='notice'>You place \the [I] into \the [src].</span>")
|
||||
|
||||
@@ -152,9 +152,10 @@
|
||||
if(O.reliability < 90 && O.crit_fail == 0)
|
||||
usr << "<span class='warning'>Item is neither reliable enough or broken enough to learn from.</span>"
|
||||
return
|
||||
if(!user.drop_item())
|
||||
return
|
||||
busy = 1
|
||||
loaded_item = O
|
||||
user.drop_item()
|
||||
O.loc = src
|
||||
user << "<span class='notice'>You add the [O.name] to the machine.</span>"
|
||||
flick("h_lathe_load", src)
|
||||
|
||||
@@ -157,7 +157,8 @@ won't update every console in existence) but it's more of a hassle to do. Also,
|
||||
else
|
||||
user << "<span class='danger'>Machine cannot accept disks in that format.</span>"
|
||||
return
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
D.loc = src
|
||||
user << "<span class='notice'>You add the disk to the machine!</span>"
|
||||
else
|
||||
|
||||
@@ -70,9 +70,10 @@
|
||||
if(full)
|
||||
user << "<span class='warning'>You can't seem to implant anything else into the [target]'s [target_zone]!</span>"
|
||||
else
|
||||
if(!user.drop_item())
|
||||
return
|
||||
user.visible_message("[user] inserts [implant] into the [target]'s [target_zone == "head" ? "brain" : target_zone]!", "<span class='notice'>You insert [implant] into the [target]'s [target_zone == "head" ? "brain" : target_zone].</span>")
|
||||
implant.owner = target
|
||||
implant.function()
|
||||
user.drop_item()
|
||||
target.internal_organs |= implant
|
||||
implant.loc = target
|
||||
@@ -71,6 +71,8 @@
|
||||
user << "<span class='warning'>That is the wrong robotic limb for this body part.</span>"
|
||||
return 0
|
||||
|
||||
if(!user.drop_item())
|
||||
return 0
|
||||
var/mob/living/carbon/human/H = target
|
||||
user.visible_message("[user] successfully augments [target]'s [parse_zone(target_zone)]!", "<span class='notice'>You successfully augment [target]'s [parse_zone(target_zone)].</span>")
|
||||
L.loc = get_turf(target)
|
||||
@@ -92,7 +94,6 @@
|
||||
H.organs += new /obj/item/organ/limb/robot/chest(src)
|
||||
for(var/datum/disease/appendicitis/A in H.viruses) //If they already have Appendicitis, Remove it
|
||||
A.cure(1)
|
||||
user.drop_item()
|
||||
qdel(tool)
|
||||
H.update_damage_overlays(0)
|
||||
H.update_augments() //Gives them the Cyber limb overlay
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
PoolOrNew(/obj/effect/effect/sparks, loc)
|
||||
playsound(src.loc, "sparks", 50, 1)
|
||||
blink_mob(user)
|
||||
user.drop_item()
|
||||
user.unEquip(src)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/bluespace_crystal/proc/blink_mob(var/mob/living/L)
|
||||
|
||||
@@ -58,7 +58,8 @@
|
||||
if(crystals.len >= max_crystals)
|
||||
user << "<span class='warning'>There are not enough crystal slots.</span>"
|
||||
return
|
||||
user.drop_item()
|
||||
if(!user.drop_item())
|
||||
return
|
||||
crystals += W
|
||||
W.loc = null
|
||||
user.visible_message("[user] inserts [W] into \the [src]'s crystal slot.", "<span class='notice'>You insert [W] into \the [src]'s crystal slot.</span>")
|
||||
|
||||
Reference in New Issue
Block a user