Merge conflic fix

This commit is contained in:
MrStonedOne
2016-01-03 14:51:14 -08:00
249 changed files with 4185 additions and 3732 deletions
@@ -11,11 +11,14 @@
origin_tech = "syndicate=4;magnets=4"
var/can_use = 1
var/obj/effect/dummy/chameleon/active_dummy = null
var/saved_appearance = null
/*
var/saved_item = /obj/item/weapon/cigbutt
var/saved_icon = 'icons/obj/clothing/masks.dmi'
var/saved_icon_state = "cigbutt"
var/saved_overlays = null
var/saved_underlays = null
*/
/obj/item/device/chameleon/dropped()
disrupt()
@@ -32,14 +35,13 @@
if(istype(target,/obj/item) && !istype(target, /obj/item/weapon/disk/nuclear))
playsound(get_turf(src), 'sound/weapons/flash.ogg', 100, 1, -6)
user << "<span class='notice'>Scanned [target].</span>"
saved_item = target.type
saved_icon = target.icon
saved_icon_state = target.icon_state
saved_overlays = target.overlays
saved_underlays = target.underlays
var/obj/temp = new/obj()
temp.appearance = target.appearance
temp.layer = initial(target.layer) // scanning things in your inventory
saved_appearance = temp.appearance
/obj/item/device/chameleon/proc/toggle()
if(!can_use || !saved_item) return
if(!can_use || !saved_appearance) return
if(active_dummy)
eject_all()
playsound(get_turf(src), 'sound/effects/pop.ogg', 100, 1, -6)
@@ -53,11 +55,8 @@
qdel(T)
else
playsound(get_turf(src), 'sound/effects/pop.ogg', 100, 1, -6)
var/obj/O = new saved_item(src)
if(!O) return
var/obj/effect/dummy/chameleon/C = new/obj/effect/dummy/chameleon(usr.loc)
C.activate(O, usr, saved_icon, saved_icon_state, saved_overlays, saved_underlays, src)
qdel(O)
C.activate(usr, saved_appearance, src)
usr << "<span class='notice'>You activate \the [src].</span>"
var/obj/effect/overlay/T = new/obj/effect/overlay(get_turf(src))
T.icon = 'icons/effects/effects.dmi'
@@ -89,18 +88,11 @@
name = ""
desc = ""
density = 0
anchored = 1
var/can_move = 1
var/obj/item/device/chameleon/master = null
/obj/effect/dummy/chameleon/proc/activate(obj/O, mob/M, new_icon, new_iconstate, new_overlays, new_underlays, obj/item/device/chameleon/C)
name = O.name
desc = O.desc
icon = new_icon
icon_state = new_iconstate
overlays = new_overlays
underlays = new_underlays
dir = O.dir
/obj/effect/dummy/chameleon/proc/activate(mob/M, saved_appearance, obj/item/device/chameleon/C)
appearance = saved_appearance
M.loc = src
master = C
master.active_dummy = src
+8 -5
View File
@@ -17,11 +17,14 @@
var/is_cyborg = 0 // It's 1 if module is used by a cyborg, and uses its storage
var/datum/robot_energy_storage/source
var/cost = 1 // How much energy from storage it costs
var/merge_type = null // This path and its children should merge with this stack, defaults to src.type
/obj/item/stack/New(var/loc, var/amount=null)
..()
if (amount)
src.amount = amount
if(!merge_type)
merge_type = src.type
return
/obj/item/stack/Destroy()
@@ -208,19 +211,19 @@
S.add(transfer)
/obj/item/stack/Crossed(obj/o)
if(istype(o, src.type) && !o.throwing)
if(istype(o, merge_type) && !o.throwing)
merge(o)
return ..()
/obj/item/stack/hitby(atom/movable/AM, skip, hitpush)
if(istype(AM, src.type))
if(istype(AM, merge_type))
merge(AM)
return ..()
/obj/item/stack/attack_hand(mob/user)
if (user.get_inactive_hand() == src)
if(zero_amount()) return
var/obj/item/stack/F = new src.type( user, 1)
var/obj/item/stack/F = new src.type(user, 1)
. = F
F.copy_evidences(src)
user.put_in_hands(F)
@@ -234,7 +237,7 @@
return
/obj/item/stack/attackby(obj/item/W, mob/user, params)
if(istype(W, src.type))
if(istype(W, merge_type))
var/obj/item/stack/S = W
merge(S)
user << "<span class='notice'>Your [S.name] stack now contains [S.get_amount()] [S.singular_name]\s.</span>"
@@ -268,4 +271,4 @@
src.max_res_amount = max_res_amount
src.time = time
src.one_per_turf = one_per_turf
src.on_floor = on_floor
src.on_floor = on_floor
@@ -60,13 +60,6 @@ AI MODULES
user << "Upload complete. [reciever]'s laws have been modified."
reciever.show_laws()
reciever.law_change_counter++
if(isAI(reciever))
var/mob/living/silicon/ai/A = reciever
for(var/mob/living/silicon/robot/R in A.connected_robots)
if(R.lawupdate)
R << "From now on, these are your laws:"
R.show_laws()
R.law_change_counter++
var/time = time2text(world.realtime,"hh:mm:ss")
lawchanges.Add("[time] <B>:</B> [user.name]([user.key]) used [src.name] on [reciever.name]([reciever.key]).[law2log ? " The law specified [law2log]" : ""]")
@@ -145,15 +145,9 @@
step_towards(W,my_target)
if(!W || !W.reagents) return
W.reagents.reaction(get_turf(W))
for(var/atom/atm in get_turf(W))
for(var/A in get_turf(W))
if(!W) return
W.reagents.reaction(atm)
if(isliving(atm)) //For extinguishing mobs on fire
var/mob/living/M = atm
M.ExtinguishMob()
if(istype(atm,/obj/item))
var/obj/item/Item = atm
Item.extinguish()
W.reagents.reaction(A)
if(W.loc == my_target) break
sleep(2)
@@ -59,7 +59,7 @@
/obj/item/weapon/grenade/iedcasing/prime() //Blowing that can up
update_mob()
explosion(src.loc,-1,-1,-1, flame_range = range) // no explosive damage, only a large fireball.
explosion(src.loc,-1,-1,2, flame_range = 4) // small explosion, plus a very large fireball.
qdel(src)
/obj/item/weapon/grenade/iedcasing/examine(mob/user)
@@ -439,7 +439,7 @@
return
/obj/item/weapon/storage/backpack/dufflebag/syndie/m90glbundle
desc = "A large dufflebag containing a M90gl, a magazine, and a stimpack."
desc = "A large dufflebag containing an M90gl, a magazine, four additional grenades, and a pack of Syndicate cigarettes."
/obj/item/weapon/storage/backpack/dufflebag/syndie/m90glbundle/New()
..()
@@ -14,7 +14,7 @@
name = "oxygen tank"
desc = "A tank of oxygen."
icon_state = "oxygen"
distribute_pressure = 16
distribute_pressure = TANK_DEFAULT_RELEASE_PRESSURE
force = 10
@@ -156,7 +156,7 @@
slot_flags = SLOT_BELT
w_class = 2
force = 4
distribute_pressure = ONE_ATMOSPHERE*O2STANDARD
distribute_pressure = TANK_DEFAULT_RELEASE_PRESSURE
volume = 3 //Tiny. Real life equivalents only have 21 breaths of oxygen in them. They're EMERGENCY tanks anyway -errorage (dangercon 2011)
+4 -10
View File
@@ -1,7 +1,3 @@
#define TANK_MAX_RELEASE_PRESSURE (ONE_ATMOSPHERE*3)
#define TANK_MIN_RELEASE_PRESSURE 0
#define TANK_DEFAULT_RELEASE_PRESSURE (ONE_ATMOSPHERE*O2STANDARD)
/obj/item/weapon/tank
name = "tank"
icon = 'icons/obj/tank.dmi'
@@ -119,10 +115,10 @@
add_fingerprint(user)
ui_interact(user)
/obj/item/weapon/tank/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, force_open = 0)
ui = SSnano.try_update_ui(user, src, ui_key, ui, force_open = force_open)
/obj/item/weapon/tank/ui_interact(mob/user, ui_key = "main", var/datum/tgui/ui = null, force_open = 0)
ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open = force_open)
if (!ui)
ui = new(user, src, ui_key, "tanks", name, 525, 210, state = inventory_state)
ui = new(user, src, ui_key, "tanks", name, 400, 200, state = inventory_state)
ui.open()
/obj/item/weapon/tank/get_ui_data()
@@ -144,14 +140,12 @@
if(istype(location))
var/mask_check = 0
if(location.internal == src) // if tank is current internal
mask_check = 1
data["valveOpen"] = 1
else if(src in location) // or if tank is in the mobs possession
if(!location.internal) // and they do not have any active internals
mask_check = 1
if(mask_check)
if(location.wear_mask && (location.wear_mask.flags & MASKINTERNALS))
data["maskConnected"] = 1
@@ -163,7 +157,7 @@
switch(action)
if("pressure")
switch(params["set"])
switch(params["pressure"])
if("custom")
var/custom = input(usr, "What rate do you set the regulator to? The dial reads from 0 to [TANK_MAX_RELEASE_PRESSURE].") as null|num
if(isnum(custom))
@@ -74,6 +74,7 @@
m180.Turn(180)
animate(H, transform = m180, time = 3)
H.pixel_y = H.get_standard_pixel_y_offset(180)
qdel(G)
return
user << "<span class='danger'>You can't use that on the spike!</span>"
return
@@ -35,8 +35,11 @@
//for junctions, just swap the diagonals with each other
if(split_text.len == 3 && split_text[3] != "Pass")
split_text.Swap(2,3)
else if(length(split_text[1]) == 2 && length(split_text[2]) == 2) //diagonals
split_text[1] = copytext(split_text[1],1,2) + copytext(split_text[2],2,3)
split_text[2] = copytext(split_text[2],1,2) + ((copytext(split_text[2],2,3) == "E") ? "W" : "E")
//for curves, swap the diagonal direction that is not in the same axis as the cardinal direction
else
else
if(split_text[1] == "N" || split_text[1] == "S")
split_text[2] = copytext(split_text[2],1,2) + ((copytext(split_text[2],2,3) == "E") ? "W" : "E")
else