mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-18 10:33:30 +01:00
conflict fixing.
This commit is contained in:
@@ -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 */
|
||||
)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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'
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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))
|
||||
|
||||
@@ -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()
|
||||
@@ -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))
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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]!")
|
||||
|
||||
|
||||
@@ -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
|
||||
Reference in New Issue
Block a user