conflict fixing.

This commit is contained in:
Jovan
2017-03-11 05:08:19 -05:00
parent 054a4ce3f1
commit 22db913d9f
70 changed files with 403 additions and 364 deletions
+1
View File
@@ -2,6 +2,7 @@
var/list/admin_verbs_default = list(
/client/proc/deadmin_self, /*destroys our own admin datum so we can play as a regular player*/
/client/proc/hide_verbs, /*hides all our adminverbs*/
/client/proc/toggleadminhelpsound, /*toggles whether we hear bwoinks*/
/client/proc/cmd_mentor_check_new_players,
/client/proc/cmd_mentor_check_player_exp /* shows players by playtime */
)
+2 -2
View File
@@ -162,8 +162,8 @@
C.ckey_last_pm = ckey*/
//play the recieving admin the adminhelp sound (if they have them enabled)
//non-admins shouldn't be able to disable this
if(C.prefs.sound & SOUND_ADMINHELP)
//non-admins always hear the sound, as they cannot toggle it
if((!C.holder) || (C.prefs.sound & SOUND_ADMINHELP))
C << 'sound/effects/adminhelp.ogg'
log_admin("PM: [key_name(src)]->[key_name(C)]: [msg]")
@@ -36,7 +36,7 @@
/datum/gear/uniform/skirt/job/atmos
display_name = "skirt, atmos"
path = /obj/item/clothing/under/rank/atmospheric_technician/skirt
allowed_roles = list("Chief Engineer","Atmospheric Technician")
allowed_roles = list("Chief Engineer","Life Support Specialist")
/datum/gear/uniform/skirt/job/eng
display_name = "skirt, engineer"
@@ -36,8 +36,8 @@
to_chat(usr, "You will [(prefs.toggles & CHAT_RADIO) ? "now" : "no longer"] see radio chatter from radios or speakers")
feedback_add_details("admin_verb","THR") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
/client/verb/toggleadminhelpsound()
set name = "Hear/Silence Adminhelps"
/client/proc/toggleadminhelpsound()
set name = "Hear/Silence Admin Bwoinks"
set category = "Preferences"
set desc = "Toggle hearing a notification when admin PMs are recieved"
if(!holder) return
-23
View File
@@ -235,26 +235,3 @@
..(user)
if(magpulse)
to_chat(user, "It would be hard to take these off without relaxing your grip first.")//theoretically this message should only be seen by the wearer when the claws are equipped.
/obj/item/clothing/suit/space/eva/vox
name = "Vox EVA Suit"
icon_state = "voxspace"
item_state = "voxspace"
icon = 'icons/obj/clothing/species/vox/suits.dmi'
species_restricted = list("Vox", "Vox Armalis")
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/suit.dmi',
"Vox Armalis" = 'icons/mob/species/armalis/suit.dmi',
)
/obj/item/clothing/head/helmet/space/eva/vox
name = "Vox EVA Suit"
icon_state = "voxspace"
item_state = "voxspace"
icon = 'icons/obj/clothing/species/vox/hats.dmi'
species_restricted = list("Vox","Vox Armalis")
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/head.dmi',
"Vox Armalis" = 'icons/mob/species/armalis/head.dmi',
)
@@ -147,7 +147,7 @@
desc = "A lightweight space suit with the basic ability to protect the wearer from the vacuum of space during emergencies."
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 20)
species_restricted = list("exclude", "Diona", "Wryn")
species_fit = list("Vox","Vulpkanin")
species_fit = list("Vox", "Vulpkanin")
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/suit.dmi',
"Vulpkanin" = 'icons/mob/species/vulpkanin/suit.dmi'
@@ -165,7 +165,7 @@
armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 100, rad = 20)
flash_protect = 0
species_restricted = list("exclude", "Diona", "Wryn")
species_fit = list("Vox","Vulpkanin")
species_fit = list("Vox", "Vulpkanin")
sprite_sheets = list(
"Vox" = 'icons/mob/species/vox/helmet.dmi',
"Vulpkanin" = 'icons/mob/species/vulpkanin/helmet.dmi'
+3
View File
@@ -118,6 +118,9 @@ log transactions
to_chat(user, "<span class='warning'>Artificial unit recognized. Artificial units do not currently receive monetary compensation, as per Nanotrasen regulation #1005.</span>")
return
ui_interact(user)
/obj/machinery/atm/attack_ghost(mob/user)
ui_interact(user)
/obj/machinery/atm/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
user.set_machine(src)
+2 -2
View File
@@ -996,8 +996,8 @@
C.faction = list("plants")
///Diona Nymph Related Procs///
/obj/machinery/hydroponics/CanPass(atom/movable/mover, turf/target, height=0, air_group=0) //So nymphs can climb over top of trays.
if(air_group || (height==0))
/obj/machinery/hydroponics/CanPass(atom/movable/mover, turf/target, height=0) //So nymphs can climb over top of trays.
if(height==0)
return 1
if(istype(mover) && mover.checkpass(PASSTABLE))
+1 -1
View File
@@ -99,7 +99,7 @@ var/list/image/ghost_darkness_images = list() //this is a list of images for thi
updateallghostimages()
return ..()
/mob/dead/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
/mob/dead/CanPass(atom/movable/mover, turf/target, height=0)
return 1
+1 -2
View File
@@ -494,11 +494,10 @@
ask_verb = "sings"
exclaim_verb = "sings"
colour = "alien"
key = "x"
key = "bo"
flags = RESTRICTED | HIVEMIND
/datum/language/corticalborer/broadcast(mob/living/speaker, message, speaker_mask)
var/mob/living/simple_animal/borer/B
if(iscarbon(speaker))
@@ -73,7 +73,7 @@
var/mob/living/simple_animal/borer/borer = owner.has_brain_worms()
if(borer)
borer.detatch() //Should remove borer if the brain is removed - RR
borer.detach() //Should remove borer if the brain is removed - RR
if(owner.mind && !non_primary)//don't transfer if the owner does not have a mind.
B.transfer_identity(user)
@@ -114,7 +114,7 @@
B = I
if(B)
if(B.controlling && B.host == src)
B.detatch()
B.detach()
verbs -= /mob/living/carbon/proc/release_control
+3 -3
View File
@@ -42,7 +42,6 @@
var/area/my_area = get_area(src)
if(!lacks_power())
if(aiRestorePowerRoutine == 2)
to_chat(src, "Alert cancelled. Power has been restored without our assistance.")
aiRestorePowerRoutine = 0
@@ -53,8 +52,6 @@
aiRestorePowerRoutine = 0
clear_fullscreen("blind")
update_sight()
else
overlay_fullscreen("blind", /obj/screen/fullscreen/blind)
@@ -74,6 +71,8 @@
if(!lacks_power())
to_chat(src, "Alert cancelled. Power has been restored without our assistance.")
aiRestorePowerRoutine = 0
clear_fullscreen("blind")
update_sight()
return
to_chat(src, "Fault confirmed: missing external power. Shutting down main control system to save power.")
sleep(20)
@@ -112,6 +111,7 @@
to_chat(src, "Alert cancelled. Power has been restored without our assistance.")
aiRestorePowerRoutine = 0
clear_fullscreen("blind")
update_sight()
return
switch(PRP)
@@ -12,6 +12,7 @@
/obj/item/weapon/firealarm_electronics,
/obj/item/weapon/airalarm_electronics,
/obj/item/weapon/airlock_electronics,
/obj/item/weapon/firelock_electronics,
/obj/item/weapon/intercom_electronics,
/obj/item/weapon/apc_electronics,
/obj/item/weapon/stock_parts,
@@ -26,7 +27,8 @@
/obj/item/weapon/camera_assembly,
/obj/item/weapon/tank,
/obj/item/weapon/circuitboard,
/obj/item/stack/tile/light
/obj/item/stack/tile/light,
/obj/item/weapon/ore/bluespace_crystal
)
//Item currently being held.
+2 -1
View File
@@ -440,7 +440,8 @@ var/global/list/obj/item/device/pda/PDAs = list()
scanmode.scan_atom(A, user)
/obj/item/device/pda/proc/explode() //This needs tuning.
if(!src.detonate) return
if(!detonate)
return
var/turf/T = get_turf(src.loc)
if(ismob(loc))
+9 -6
View File
@@ -22,7 +22,7 @@
/datum/data/pda/messenger_plugin/virus/clown/user_act(mob/user as mob, obj/item/device/pda/P)
. = ..(user, P)
if(.)
user.show_message("<span class=notice>Virus sent!</span>", 1)
user.show_message("<span class='notice'>Virus sent!</span>", 1)
P.honkamt = (rand(15,20))
P.ttone = "honk"
@@ -33,7 +33,7 @@
/datum/data/pda/messenger_plugin/virus/mime/user_act(mob/user as mob, obj/item/device/pda/P)
. = ..(user, P)
if(.)
user.show_message("<span class=notice>Virus sent!</span>", 1)
user.show_message("<span class='notice'>Virus sent!</span>", 1)
var/datum/data/pda/app/M = P.find_program(/datum/data/pda/app/messenger)
if(M)
M.notify_silent = 1
@@ -57,16 +57,19 @@
else
difficulty += 2
if(prob(difficulty * 12) || (pda.hidden_uplink))
user.show_message("<span class=warning>An error flashes on your [pda].</span>", 1)
if(!P.detonate || P.hidden_uplink)
user.show_message("<span class='warning'>The target PDA does not seem to respond to the detonation command.</span>", 1)
pda.cartridge.charges++
else if(prob(difficulty * 12))
user.show_message("<span class='warning'>An error flashes on your [pda].</span>", 1)
else if(prob(difficulty * 3))
user.show_message("<span class=danger>Energy feeds back into your [pda]!</span>", 1)
user.show_message("<span class='danger'>Energy feeds back into your [pda]!</span>", 1)
pda.close(user)
pda.explode()
log_admin("[key_name(user)] just attempted to blow up [P] with the Detomatix cartridge but failed, blowing themselves up")
message_admins("[key_name_admin(user)] just attempted to blow up [P] with the Detomatix cartridge but failed, blowing themselves up", 1)
else
user.show_message("<span class=notice>Success!</span>", 1)
user.show_message("<span class='notice'>Success!</span>", 1)
log_admin("[key_name(user)] just attempted to blow up [P] with the Detomatix cartridge and succeded")
message_admins("[key_name_admin(user)] just attempted to blow up [P] with the Detomatix cartridge and succeded", 1)
P.explode()
+21 -21
View File
@@ -175,26 +175,6 @@
to_chat(user, "You can only attach the [nicetype] if the floor plating is removed.")
return
var/obj/structure/disposalpipe/CP = locate() in T
if(ptype>=6 && ptype <= 8) // Disposal or outlet
if(CP) // There's something there
if(!istype(CP,/obj/structure/disposalpipe/trunk))
to_chat(user, "The [nicetype] requires a trunk underneath it in order to work.")
return
else // Nothing under, fuck.
to_chat(user, "The [nicetype] requires a trunk underneath it in order to work.")
return
else
if(CP)
update()
var/pdir = CP.dpdir
if(istype(CP, /obj/structure/disposalpipe/broken))
pdir = CP.dir
if(pdir & dpdir)
to_chat(user, "There is already a [nicetype] at that location.")
return
if(istype(I, /obj/item/weapon/wrench))
if(anchored)
anchored = 0
@@ -214,8 +194,28 @@
to_chat(user, "You attach the [nicetype] to the underfloor.")
playsound(src.loc, I.usesound, 100, 1)
update()
return
var/obj/structure/disposalpipe/CP = locate() in T
if(ptype>=6 && ptype <= 8) // Disposal or outlet
if(CP) // There's something there
if(!istype(CP,/obj/structure/disposalpipe/trunk))
to_chat(user, "The [nicetype] requires a trunk underneath it in order to work.")
return
else // Nothing under, fuck.
to_chat(user, "The [nicetype] requires a trunk underneath it in order to work.")
return
else
if(CP)
update()
var/pdir = CP.dpdir
if(istype(CP, /obj/structure/disposalpipe/broken))
pdir = CP.dir
if(pdir & dpdir)
to_chat(user, "There is already a [nicetype] at that location.")
return
else if(istype(I, /obj/item/weapon/weldingtool))
if(istype(I, /obj/item/weapon/weldingtool))
if(anchored)
var/obj/item/weapon/weldingtool/W = I
if(W.remove_fuel(0,user))
+18 -4
View File
@@ -210,7 +210,8 @@
// leave the disposal
/obj/machinery/disposal/proc/go_out(mob/user)
user.forceMove(loc)
if(user)
user.forceMove(loc)
update()
// ai as human but can't flush
@@ -457,7 +458,7 @@
H.vent_gas(loc)
qdel(H)
/obj/machinery/disposal/CanPass(atom/movable/mover, turf/target, height=0, air_group=0)
/obj/machinery/disposal/CanPass(atom/movable/mover, turf/target, height=0)
if(istype(mover,/obj/item) && mover.throwing)
var/obj/item/I = mover
if(istype(I, /obj/item/projectile))
@@ -471,7 +472,7 @@
M.show_message("\the [I] bounces off of \the [src]'s rim!.", 3)
return 0
else
return ..(mover, target, height, air_group)
return ..(mover, target, height)
/obj/machinery/disposal/singularity_pull(S, current_size)
@@ -1145,6 +1146,19 @@
update()
return
/obj/structure/disposalpipe/trunk/Destroy()
if(istype(linked, /obj/structure/disposaloutlet))
var/obj/structure/disposaloutlet/O = linked
O.expel()
else if(istype(linked, /obj/machinery/disposal))
var/obj/machinery/disposal/D = linked
if(D.trunk == src)
D.go_out()
D.trunk = null
linked = null
return ..()
/obj/structure/disposalpipe/trunk/proc/getlinked()
linked = null
@@ -1285,7 +1299,7 @@
if(H)
for(var/atom/movable/AM in H)
AM.loc = src.loc
AM.forceMove(loc)
AM.pipe_eject(dir)
if(!istype(AM,/mob/living/silicon/robot/drone)) //Drones keep smashing windows from being fired out of chutes. Bad for the station. ~Z
spawn(5)
+1 -1
View File
@@ -7,7 +7,7 @@
/datum/station_goal/bluespace_cannon/get_report()
return {"<b>Bluespace Artillery position construction</b><br>
Our military presence is inadequate in your sector. We need you to construct BSA-[rand(1,99)] Artillery position aboard your station.
Our military presence is inadequate in your sector. We need you to construct a BSA-[rand(1,99)] Artillery position aboard your station.
<br><br>
Its base parts should be available for shipping by your cargo shuttle.
<br>
+2
View File
@@ -177,6 +177,8 @@ var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/human/monkey,/
plants_max = G.plant_count
dna_max = G.human_count
break
..()
/obj/machinery/dna_vault/Destroy()
for(var/V in fillers)
+1 -1
View File
@@ -9,7 +9,7 @@
return {"<b>Station Shield construction</b><br>
The station is located in a zone full of space debris. We have a prototype shielding system you will deploy to reduce collision related accidents.
<br><br>
You can order the satellites and control systems through cargo shuttle."}
You can order the satellites and control systems through the cargo shuttle."}
/datum/station_goal/station_shield/on_report()
//Unlock
+1 -1
View File
@@ -386,7 +386,7 @@
var/mob/living/simple_animal/borer/worm = H.has_brain_worms()
if(worm.controlling)
target.release_control()
worm.detatch()
worm.detach()
worm.leave_host()
user.visible_message("a slug like creature wiggles out of [H]'s [target_zone]!")
+4
View File
@@ -16,6 +16,7 @@
//Pixels
var/generic_pixel_x = 0 //All dirs show this pixel_x for the driver
var/generic_pixel_y = 0 //All dirs shwo this pixel_y for the driver
var/spaceworthy = FALSE
/obj/vehicle/New()
@@ -130,6 +131,8 @@
/obj/vehicle/Bump(atom/movable/M)
if(!spaceworthy && isspaceturf(get_turf(src)))
return 0
. = ..()
if(auto_door_open)
if(istype(M, /obj/machinery/door) && buckled_mob)
@@ -153,6 +156,7 @@
/obj/vehicle/space
pressure_resistance = INFINITY
spaceworthy = TRUE
/obj/vehicle/space/Process_Spacemove(direction)
return 1