Resolved Conflicts:

code/game/gamemodes/gang/dominator.dm
This commit is contained in:
Ikarrus
2015-06-18 23:05:51 -06:00
133 changed files with 501 additions and 311 deletions
+2 -2
View File
@@ -379,8 +379,8 @@
M << "<span class='danger'>Your eyes start to bleed profusely!</span>"
if(prob(50))
if(M.stat != 2)
M << "<span class='danger'>You drop what you're holding and clutch at your eyes!</span>"
M.drop_item()
if(M.drop_item())
M << "<span class='danger'>You drop what you're holding and clutch at your eyes!</span>"
M.eye_blurry += 10
M.Paralyse(1)
M.Weaken(2)
@@ -349,8 +349,9 @@
for(var/entry in expandables)
if(istype(W,entry))
if(!user.unEquip(W))
return
bugtype = expandables[entry]
user.drop_item()
W.loc = src
expansion = W
user << "<span class='notice'>You add [W] to [src].</span>"
@@ -47,7 +47,8 @@
/obj/item/device/laser_pointer/attackby(obj/item/W, mob/user, params)
if(istype(W, /obj/item/weapon/stock_parts/micro_laser))
if(!diode)
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
diode = W
user << "<span class='notice'>You install a [diode.name] in [src].</span>"
@@ -88,9 +88,10 @@
var/obj/item/weapon/light/L = W
if(L.status == 0) // LIGHT OKAY
if(uses < max_uses)
if(!user.unEquip(W))
return
AddUses(1)
user << "<span class='notice'>You insert the [L.name] into the [src.name]. You have [uses] lights remaining.</span>"
user.drop_item()
qdel(L)
return
else
@@ -253,12 +253,14 @@
return
if(!keyslot)
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
keyslot = W
else
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
keyslot2 = W
@@ -608,7 +608,8 @@
return
if(!keyslot)
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
keyslot = W
@@ -33,7 +33,8 @@
/obj/item/device/taperecorder/attackby(obj/item/I, mob/user, params)
if(!mytape && istype(I, /obj/item/device/tape))
user.drop_item()
if(!user.unEquip(I))
return
I.loc = src
mytape = I
user << "<span class='notice'>You insert [I] into [src].</span>"
@@ -20,15 +20,17 @@
return
if(!tank_one)
if(!user.unEquip(item))
return
tank_one = item
user.drop_item()
item.loc = src
user << "<span class='notice'>You attach the tank to the transfer valve.</span>"
if(item.w_class > w_class)
w_class = item.w_class
else if(!tank_two)
if(!user.unEquip(item))
return
tank_two = item
user.drop_item()
item.loc = src
user << "<span class='notice'>You attach the tank to the transfer valve.</span>"
if(item.w_class > w_class)
+18 -9
View File
@@ -102,28 +102,32 @@
return
if(istype(W, /obj/item/robot_parts/l_leg))
if(src.l_leg) return
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
src.l_leg = W
src.updateicon()
if(istype(W, /obj/item/robot_parts/r_leg))
if(src.r_leg) return
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
src.r_leg = W
src.updateicon()
if(istype(W, /obj/item/robot_parts/l_arm))
if(src.l_arm) return
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
src.l_arm = W
src.updateicon()
if(istype(W, /obj/item/robot_parts/r_arm))
if(src.r_arm) return
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
src.r_arm = W
src.updateicon()
@@ -131,7 +135,8 @@
if(istype(W, /obj/item/robot_parts/chest))
if(src.chest) return
if(W:wires && W:cell)
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
src.chest = W
src.updateicon()
@@ -143,7 +148,8 @@
if(istype(W, /obj/item/robot_parts/head))
if(src.head) return
if(W:flash2 && W:flash1)
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
src.head = W
src.updateicon()
@@ -190,7 +196,8 @@
var/mob/living/silicon/robot/O = new /mob/living/silicon/robot(get_turf(loc))
if(!O) return
user.drop_item()
if(!user.unEquip(W))
return
O.invisibility = 0
//Transfer debug settings to new mob
@@ -297,7 +304,8 @@
user << "<span class='warning'>You have already inserted a cell!</span>"
return
else
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
src.cell = W
user << "<span class='notice'>You insert the cell.</span>"
@@ -324,7 +332,8 @@
user << "<span class='warning'>You can't use a broken flash!</span>"
return
else
user.drop_item()
if(!user.unEquip(W))
return
F.loc = src
if(src.flash1)
src.flash2 = F
+2 -1
View File
@@ -112,7 +112,8 @@ RCD
if((matter + R.ammoamt) > max_matter)
user << "<span class='warning'>The RCD can't hold any more matter-units!</span>"
return
user.drop_item()
if(!user.unEquip(W))
return
qdel(W)
matter += R.ammoamt
playsound(src.loc, 'sound/machines/click.ogg', 50, 1)
@@ -63,7 +63,8 @@
if(ink)
user << "<span class='notice'>\the [name] already contains \a [ink].</span>"
return
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
user << "<span class='notice'>You install \the [W] into \the [name].</span>"
ink = W
+2 -1
View File
@@ -112,7 +112,8 @@
if(C.maxcharge < paddles.revivecost)
user << "<span class='notice'>[src] requires a higher capacity cell.</span>"
return
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
bcell = W
user << "<span class='notice'>You install a cell in [src].</span>"
@@ -69,7 +69,8 @@
user << "<span class='notice'>You start planting the bomb...</span>"
if(do_after(user, 50) && in_range(user, target))
user.drop_item()
if(!user.unEquip(target))
return
src.target = target
loc = null
@@ -94,7 +94,8 @@
var/obj/item/device/assembly/igniter/I = W
if(I.secured) return
if(igniter) return
user.drop_item()
if(!user.unEquip(W))
return
I.loc = src
igniter = I
update_icon()
@@ -104,7 +105,8 @@
if(ptank)
user << "<span class='notice'>There appears to already be a plasma tank loaded in [src]!</span>"
return
user.drop_item()
if(!user.unEquip(W))
return
ptank = W
W.loc = src
update_icon()
@@ -68,8 +68,9 @@
return
else
if(I.reagents.total_volume)
if(!user.unEquip(I))
return
user << "<span class='notice'>You add [I] to the [initial(name)] assembly.</span>"
user.drop_item()
I.loc = src
beakers += I
else
@@ -79,8 +80,9 @@
var/obj/item/device/assembly_holder/A = I
if(isigniter(A.a_left) == isigniter(A.a_right)) //Check if either part of the assembly has an igniter, but if both parts are igniters, then fuck it
return
if(!user.unEquip(I))
return
user.drop_item()
nadeassembly = A
A.master = src
A.loc = src
@@ -263,8 +265,9 @@
//make a special case you might as well do it explicitly. -Sayu
/obj/item/weapon/grenade/chem_grenade/large/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/slime_extract) && stage == WIRED)
if(!user.unEquip(I))
return
user << "<span class='notice'>You add [I] to the [initial(name)] assembly.</span>"
user.drop_item()
I.loc = src
beakers += I
else
+2 -1
View File
@@ -49,7 +49,8 @@
/obj/item/weapon/restraints/handcuffs/proc/apply_cuffs(mob/living/carbon/target, mob/user)
if(!target.handcuffed)
user.drop_item()
if(!user.drop_item())
return
//target.throw_alert("handcuffed", src) // Can't do this because escaping cuffs isn't standardized. Also zipties.
if(trashtype)
target.handcuffed = new trashtype(target)
@@ -174,15 +174,15 @@
/obj/item/weapon/implant/loyalty/implanted(mob/target)
..()
if((target.mind in (ticker.mode.head_revolutionaries | ticker.mode.A_bosses | ticker.mode.B_bosses)) || is_shadow_or_thrall(target))
if((target.mind in ticker.mode.head_revolutionaries) || is_shadow_or_thrall(target))
target.visible_message("<span class='warning'>[target] seems to resist the implant!</span>", "<span class='warning'>You feel the corporate tendrils of Nanotrasen try to invade your mind!</span>")
return 0
if(target.mind in (ticker.mode.A_gang | ticker.mode.B_gang))
ticker.mode.remove_gangster(target.mind, exclude_bosses=0)
return 0
if(target.mind in ticker.mode.revolutionaries)
ticker.mode.remove_revolutionary(target.mind)
target << "<span class='notice'>You feel a surge of loyalty towards Nanotrasen.</span>"
if(target.mind in (ticker.mode.cult| ticker.mode.A_bosses | ticker.mode.B_bosses | ticker.mode.A_gang | ticker.mode.B_gang))
target << "<span class='warning'>You feel the corporate tendrils of Nanotrasen try to invade your mind!</span>"
else
target << "<span class='notice'>You feel a surge of loyalty towards Nanotrasen.</span>"
return 1
@@ -36,7 +36,8 @@
..()
if(istype(C, /obj/item/weapon/implantcase))
if(!case)
user.drop_item()
if(!user.unEquip(C))
return
C.loc = src
case = C
else
+2 -1
View File
@@ -8,8 +8,9 @@
/obj/item/weapon/pai_cable/proc/plugin(obj/machinery/M as obj, mob/user as mob)
if(istype(M, /obj/machinery/door) || istype(M, /obj/machinery/camera))
if(!user.drop_item())
return
user.visible_message("[user] inserts [src] into a data port on [M].", "<span class='notice'>You insert [src] into a data port on [M].</span>", "<span class='italics'>You hear the satisfying click of a wire jack fastening into place.</span>")
user.drop_item()
src.loc = M
src.machine = M
else
@@ -61,8 +61,9 @@
if(IW.w_class > src.w_class)
user << "<span class='warning'>\The [IW] is too large to fit into \the [src]!</span>"
return
if(!user.unEquip(W))
return
user << "<span class='notice'>You load \the [IW] into \the [src].</span>"
user.drop_item()
loadedItems.Add(IW)
loadedWeightClass += IW.w_class
IW.loc = src
@@ -127,9 +128,10 @@
if(src.tank)
user << "<span class='warning'>\The [src] already has a tank.</span>"
return
if(!user.unEquip(thetank))
return
user << "<span class='notice'>You hook \the [thetank] up to \the [src].</span>"
src.tank = thetank
user.drop_item()
thetank.loc = src
src.update_icons()
+2 -1
View File
@@ -71,7 +71,8 @@
if(C.maxcharge < hitcost)
user << "<span class='notice'>[src] requires a higher capacity cell.</span>"
return
user.drop_item()
if(!user.unEquip(W))
return
W.loc = src
bcell = W
user << "<span class='notice'>You install a cell in [src].</span>"
+5 -2
View File
@@ -41,11 +41,12 @@
anchored = 0
state = 0
if(istype(P, /obj/item/weapon/circuitboard/aicore) && !circuit)
if(!user.drop_item())
return
playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1)
user << "<span class='notice'>You place the circuit board inside the frame.</span>"
icon_state = "1"
circuit = P
user.drop_item()
P.loc = src
if(istype(P, /obj/item/weapon/screwdriver) && circuit)
playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
@@ -152,11 +153,13 @@
user << "<span class='warning'>This MMI is mindless!</span>"
return
if(!user.drop_item())
return
ticker.mode.remove_cultist(M.brainmob.mind, 1)
ticker.mode.remove_revolutionary(M.brainmob.mind, 1)
ticker.mode.remove_gangster(M.brainmob.mind, 1)
user.drop_item()
M.loc = src
brain = M
usr << "<span class='notice'>Added a brain.</span>"
+2 -1
View File
@@ -194,7 +194,8 @@ LINEN BINS
/obj/structure/bedsheetbin/attackby(obj/item/I as obj, mob/user as mob, params)
if(istype(I, /obj/item/weapon/bedsheet))
user.drop_item()
if(!user.drop_item())
return
I.loc = src
sheets.Add(I)
amount++
@@ -84,8 +84,7 @@
/obj/structure/closet/crate/bin/place(var/mob/user, var/obj/item/I)
if(contents.len >= storage_capacity)
return 1
if(!opened)
user.drop_item()
if(!opened && user.drop_item())
insert(I, 0, 1)
return 1
return 0
@@ -58,8 +58,9 @@
if(O:wielded)
user << "<span class='warning'>Unwield the axe first.</span>"
return
if(!user.drop_item())
return
fireaxe = O
user.drop_item()
src.contents += O
user << "<span class='caution'>You place the fire axe back in the [src.name].</span>"
update_icon()
@@ -286,8 +286,9 @@
return
else if(istype(W, /obj/item/device/electropack))
if(rigged)
if(!user.drop_item())
return
user << "<span class='notice'>You attach [W] to [src].</span>"
user.drop_item()
W.loc = src
return
else if(istype(W, /obj/item/weapon/wirecutters))
@@ -532,8 +532,9 @@
if(do_after(user, 40))
if( src.state != 1 )
return
if(!user.drop_item())
return
user.drop_item()
W.loc = src
user << "<span class='notice'>You install the airlock electronics.</span>"
src.state = 2
+2 -1
View File
@@ -29,7 +29,8 @@
return
if(istype(O, /obj/item/weapon/extinguisher))
if(!has_extinguisher && opened)
user.drop_item()
if(!user.drop_item())
return
contents += O
has_extinguisher = O
user << "<span class='notice'>You place [O] in [src].</span>"
+2 -1
View File
@@ -201,7 +201,8 @@
else if(istype(W, /obj/item/pipe))
var/obj/item/pipe/P = W
if (P.pipe_type in list(0, 1, 5)) //simple pipes, simple bends, and simple manifolds.
user.drop_item()
if(!user.drop_item())
return
P.loc = src.loc
user << "<span class='notice'>You fit the pipe into \the [src].</span>"
else
+2 -1
View File
@@ -39,7 +39,8 @@
return
if(istype(I, gun_category))
if(contents.len < capacity && open)
user.drop_item()
if(!user.drop_item())
return
contents += I
user << "<span class='notice'>You place [I] in [src].</span>"
update_icon()
+4 -2
View File
@@ -29,7 +29,8 @@
playsound(loc, 'sound/effects/slosh.ogg', 25, 1)
/obj/structure/janitorialcart/proc/put_in_cart(obj/item/I, mob/user)
user.drop_item()
if(!user.drop_item())
return
I.loc = src
updateUsrDialog()
user << "<span class='notice'>You put [I] into [src].</span>"
@@ -199,8 +200,9 @@
user << "Hold [I] in one of your hands while you drive this [callme]."
else if(istype(I, /obj/item/weapon/storage/bag/trash))
if(keytype == /obj/item/key/janitor)
if(!user.drop_item())
return
user << "<span class='notice'>You hook the trashbag onto the [callme].</span>"
user.drop_item()
I.loc = src
mybag = I
else if(istype(I, /obj/item/janiupgrade))
+2 -1
View File
@@ -19,9 +19,10 @@
/obj/structure/noticeboard/attackby(var/obj/item/weapon/O as obj, var/mob/user as mob, params)
if(istype(O, /obj/item/weapon/paper))
if(notices < 5)
if(!user.drop_item())
return
O.add_fingerprint(user)
add_fingerprint(user)
user.drop_item()
O.loc = src
notices++
icon_state = "nboard0[notices]" //update sprite
@@ -17,8 +17,9 @@
/obj/structure/stool/bed/chair/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
..()
if(istype(W, /obj/item/assembly/shock_kit))
if(!user.drop_item())
return
var/obj/item/assembly/shock_kit/SK = W
user.drop_item()
var/obj/structure/stool/bed/chair/e_chair/E = new /obj/structure/stool/bed/chair/e_chair(src.loc)
playsound(src.loc, 'sound/items/Deconstruct.ogg', 50, 1)
E.dir = dir
+2 -1
View File
@@ -625,8 +625,9 @@
/obj/item/weapon/rack_parts/attack_self(mob/user as mob)
user << "<span class='notice'>You start constructing rack...</span>"
if (do_after(user, 50))
if(!user.drop_item())
return
var/obj/structure/rack/R = new /obj/structure/rack( user.loc )
R.add_fingerprint(user)
user.drop_item()
qdel(src)
return
@@ -50,7 +50,8 @@
/obj/structure/dispenser/attackby(obj/item/I as obj, mob/user as mob, params)
if(istype(I, /obj/item/weapon/tank/internals/oxygen) || istype(I, /obj/item/weapon/tank/internals/air) || istype(I, /obj/item/weapon/tank/internals/anesthetic))
if(oxygentanks < 10)
user.drop_item()
if(!user.drop_item())
return
I.loc = src
oxytanks.Add(I)
oxygentanks++
@@ -59,7 +60,8 @@
user << "<span class='notice'>[src] is full.</span>"
if(istype(I, /obj/item/weapon/tank/internals/plasma))
if(plasmatanks < 10)
user.drop_item()
if(!user.drop_item())
return
I.loc = src
platanks.Add(I)
plasmatanks++
+1 -2
View File
@@ -23,11 +23,10 @@
/obj/structure/target_stake/attackby(obj/item/target/T, mob/user)
if(pinned_target)
return
if(istype(T))
if(istype(T) && user.drop_item())
pinned_target = T
T.pinnedLoc = src
T.density = 1
user.drop_item()
T.layer = OBJ_LAYER + 0.1
T.loc = loc
user << "<span class='notice'>You slide the target into the stake.</span>"
@@ -190,9 +190,10 @@
//Adding airlock electronics for access. Step 6 complete.
else if(istype(W, /obj/item/weapon/airlock_electronics))
if(!user.drop_item())
return
playsound(loc, 'sound/items/Screwdriver.ogg', 100, 1)
user.visible_message("[user] installs the electronics into the airlock assembly.", "<span class='notice'>You start to install electronics into the airlock assembly...</span>")
user.drop_item()
W.loc = src
if(do_after(user, 40))