mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-27 14:07:51 +01:00
Final fixes
This commit is contained in:
@@ -177,7 +177,7 @@ var/global/list/all_cults = list()
|
||||
C.Grant(cult_mind.current)
|
||||
cult_mind.current.create_attack_log("<span class='danger'>Has been converted to the cult!</span>")
|
||||
if(jobban_isbanned(cult_mind.current, ROLE_CULTIST) || jobban_isbanned(cult_mind.current, ROLE_SYNDICATE))
|
||||
replace_jobbaned_player(cult_mind.current, ROLE_CULTIST)
|
||||
replace_jobbanned_player(cult_mind.current, ROLE_CULTIST)
|
||||
update_cult_icons_added(cult_mind)
|
||||
if(GAMEMODE_IS_CULT)
|
||||
var/datum/game_mode/cult/cult_mode = ticker.mode
|
||||
|
||||
@@ -440,7 +440,7 @@ proc/get_nt_opposed()
|
||||
nukecode = bomb.r_code
|
||||
return nukecode
|
||||
|
||||
/datum/game_mode/proc/replace_jobbaned_player(mob/living/M, role_type)
|
||||
/datum/game_mode/proc/replace_jobbanned_player(mob/living/M, role_type)
|
||||
var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as a [role_type]?", role_type, 0, 100)
|
||||
var/mob/dead/observer/theghost = null
|
||||
if(candidates.len)
|
||||
|
||||
@@ -145,7 +145,7 @@
|
||||
if(client.statpanel == "Status")
|
||||
stat("Chemicals", chemicals)
|
||||
|
||||
/mob/living/simple_animal/borer/say(message)
|
||||
/mob/living/simple_animal/borer/say(var/message)
|
||||
var/datum/language/dialect = parse_language(message)
|
||||
if(!dialect)
|
||||
dialect = get_default_language()
|
||||
|
||||
@@ -249,7 +249,7 @@
|
||||
rev_mind.special_role = SPECIAL_ROLE_REV
|
||||
update_rev_icons_added(rev_mind)
|
||||
if(jobban_isbanned(rev_mind.current, ROLE_REV) || jobban_isbanned(rev_mind.current, ROLE_SYNDICATE))
|
||||
replace_jobbaned_player(rev_mind.current, ROLE_REV)
|
||||
replace_jobbanned_player(rev_mind.current, ROLE_REV)
|
||||
return 1
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
//Deals with players being converted from the revolution (Not a rev anymore)// // Modified to handle borged MMIs. Accepts another var if the target is being borged at the time -- Polymorph.
|
||||
|
||||
@@ -163,7 +163,7 @@ Made by Xhuis
|
||||
to_chat(new_thrall_mind.current, "<span class='shadowling'>Though not nearly as powerful as your masters, you possess some weak powers. These can be found in the Thrall Abilities tab.</span>")
|
||||
to_chat(new_thrall_mind.current, "<span class='shadowling'>You may communicate with your allies by speaking in the Shadowling Hivemind (:8).</span>")
|
||||
if(jobban_isbanned(new_thrall_mind.current, ROLE_SHADOWLING) || jobban_isbanned(new_thrall_mind.current, ROLE_SYNDICATE))
|
||||
replace_jobbaned_player(new_thrall_mind.current, ROLE_SHADOWLING)
|
||||
replace_jobbanned_player(new_thrall_mind.current, ROLE_SHADOWLING)
|
||||
|
||||
return 1
|
||||
|
||||
|
||||
@@ -39,19 +39,23 @@
|
||||
else
|
||||
layer = open_layer
|
||||
|
||||
update_dir()
|
||||
update_freelook_sight()
|
||||
airlocks += src
|
||||
|
||||
/obj/machinery/door/setDir(newdir)
|
||||
..()
|
||||
update_dir()
|
||||
|
||||
/obj/machinery/door/proc/update_dir()
|
||||
if(width > 1)
|
||||
if(dir in list(EAST, WEST))
|
||||
bound_width = width * world.icon_size
|
||||
bound_height = world.icon_size
|
||||
else
|
||||
bound_width = world.icon_size
|
||||
bound_height = width * world.icon_size
|
||||
|
||||
update_freelook_sight()
|
||||
airlocks += src
|
||||
return
|
||||
|
||||
bound_height = width * world.icon_size
|
||||
|
||||
/obj/machinery/door/initialize()
|
||||
air_update_turf(1)
|
||||
..()
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
//NOT using the existing /obj/machinery/door type, since that has some complications on its own, mainly based on its
|
||||
//machineryness
|
||||
|
||||
//NOT using the existing /obj/machinery/door type, since that has some complications on its own, mainly based on its machineryness
|
||||
/obj/structure/mineral_door
|
||||
name = "metal door"
|
||||
density = 1
|
||||
@@ -19,7 +17,8 @@
|
||||
var/sheetType = /obj/item/stack/sheet/metal
|
||||
var/sheetAmount = 7
|
||||
var/openSound = 'sound/effects/stonedoor_openclose.ogg'
|
||||
var/closeSound = 'sound/effects/stonedoor_openclose.ogg'
|
||||
var/closeSound = 'sound/effects/stonedoor_openclose.ogg'
|
||||
var/damageSound = null
|
||||
|
||||
/obj/structure/mineral_door/New(location)
|
||||
..()
|
||||
@@ -135,16 +134,26 @@
|
||||
/obj/structure/mineral_door/attackby(obj/item/weapon/W, mob/user, params)
|
||||
if(istype(W, /obj/item/weapon/pickaxe))
|
||||
var/obj/item/weapon/pickaxe/digTool = W
|
||||
to_chat(user, "<span class='notice'>You start digging the [name].</span>")
|
||||
to_chat(user, "<span class='notice'>You start digging \the [src].</span>")
|
||||
if(do_after(user, digTool.digspeed * hardness, target = src) && src)
|
||||
to_chat(user, "You finished digging.")
|
||||
to_chat(user, "<span class='notice'>You finished digging.</span>")
|
||||
deconstruct(TRUE)
|
||||
else if(istype(W, /obj/item/weapon)) //not sure, can't not just weapons get passed to this proc?
|
||||
hardness -= W.force/100
|
||||
to_chat(user, "<span class='danger'>You hit the [name] with your [W.name]!</span>")
|
||||
CheckHardness()
|
||||
else
|
||||
else if(user.a_intent != I_HARM)
|
||||
attack_hand(user)
|
||||
else
|
||||
attacked_by(W, user)
|
||||
|
||||
/obj/structure/mineral_door/proc/attacked_by(obj/item/I, mob/user)
|
||||
if(I.damtype != STAMINA)
|
||||
user.changeNext_move(CLICK_CD_MELEE)
|
||||
user.do_attack_animation(src)
|
||||
visible_message("<span class='notice'>[user] hits \the [src] with \the [I].</span>")
|
||||
if(damageSound)
|
||||
playsound(loc, damageSound, 100, 1)
|
||||
else
|
||||
playsound(loc, I.hitsound, 100, 1)
|
||||
hardness -= I.force / 100
|
||||
CheckHardness()
|
||||
|
||||
/obj/structure/mineral_door/proc/CheckHardness()
|
||||
if(hardness <= 0)
|
||||
@@ -251,12 +260,9 @@
|
||||
close_delay = 100
|
||||
openSound = 'sound/effects/attackblob.ogg'
|
||||
closeSound = 'sound/effects/attackblob.ogg'
|
||||
damageSound = 'sound/effects/attackblob.ogg'
|
||||
sheetType = null
|
||||
|
||||
/obj/structure/mineral_door/resin/TryToSwitchState(atom/user)
|
||||
if(isalien(user))
|
||||
return ..()
|
||||
|
||||
/obj/structure/mineral_door/resin/CheckHardness()
|
||||
playsound(loc, 'sound/effects/attackblob.ogg', 100, 1)
|
||||
..()
|
||||
|
||||
@@ -494,11 +494,10 @@
|
||||
ask_verb = "sings"
|
||||
exclaim_verb = "sings"
|
||||
colour = "alien"
|
||||
key = "w"
|
||||
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))
|
||||
|
||||
@@ -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,18 +57,19 @@
|
||||
else
|
||||
difficulty += 2
|
||||
|
||||
if(!P.detonate)
|
||||
user.show_message("<span class=warning>The target PDA does not seem to respond to the detonation command.</span>", 1)
|
||||
else 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, 'sound/items/Ratchet.ogg', 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
|
||||
|
||||
@@ -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)
|
||||
@@ -143,7 +146,7 @@
|
||||
if(has_gravity(src))
|
||||
return 1
|
||||
|
||||
if(pulledby && !istype(buckled_mob)) // no pulling the vehicle you're driving through space!
|
||||
if(pulledby && pulledby != buckled_mob) // no pulling the vehicle you're driving through space!
|
||||
return 1
|
||||
|
||||
if(needs_gravity)
|
||||
@@ -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