mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-20 19:44:09 +01:00
research (#18300)
This commit is contained in:
@@ -39,7 +39,7 @@ other types of metals and chemistry for reagents).
|
||||
var/construction_time //Amount of time required for building the object
|
||||
var/build_path = null //The file path of the object that gets created
|
||||
var/list/make_reagents = list() //Reagents produced. Format: "id" = amount. Currently only supported by the biogenerator.
|
||||
var/locked = 0 //If true it will spawn inside a lockbox with currently sec access
|
||||
var/locked = FALSE //If true it will spawn inside a lockbox with currently sec access
|
||||
var/access_requirement = list(ACCESS_ARMORY) //What special access requirements will the lockbox have? Defaults to armory.
|
||||
var/category = null //Primarily used for Mech Fabricators, but can be used for anything
|
||||
var/list/reagents_list = list() //List of reagents. Format: "id" = amount.
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
build_type = PROTOLATHE
|
||||
materials = list(MAT_SILVER = 2000, MAT_METAL = 5000, MAT_DIAMOND = 2000, MAT_BLUESPACE = 3000)
|
||||
build_path = /obj/item/gun/energy/wormhole_projector
|
||||
locked = 1
|
||||
locked = TRUE
|
||||
access_requirement = list(ACCESS_RD) //screw you, HoS, this aint yours; this is only for a man of science---and trouble.
|
||||
category = list("Weapons")
|
||||
|
||||
|
||||
@@ -83,11 +83,11 @@ Note: Must be placed within 3 tiles of the R&D Console
|
||||
if(!user.drop_item())
|
||||
to_chat(user, "<span class='warning'>[O] is stuck to your hand, you cannot put it in [src]!</span>")
|
||||
return
|
||||
busy = 1
|
||||
busy = TRUE
|
||||
loaded_item = O
|
||||
O.loc = src
|
||||
to_chat(user, "<span class='notice'>You add [O] to [src]!</span>")
|
||||
flick("d_analyzer_la", src)
|
||||
spawn(10)
|
||||
icon_state = "d_analyzer_l"
|
||||
busy = 0
|
||||
busy = FALSE
|
||||
|
||||
@@ -19,8 +19,8 @@
|
||||
name = "\improper E.X.P.E.R.I-MENTOR"
|
||||
icon = 'icons/obj/machines/heavy_lathe.dmi'
|
||||
icon_state = "h_lathe"
|
||||
density = 1
|
||||
anchored = 1
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
use_power = IDLE_POWER_USE
|
||||
var/recentlyExperimented = 0
|
||||
var/mob/trackedIan
|
||||
|
||||
@@ -80,7 +80,7 @@ won't update every console in existence) but it's more of a hassle to do. Also,
|
||||
var/wait_message_timer = 0
|
||||
|
||||
var/id = 0 //ID of the computer (for server restrictions).
|
||||
var/sync = 1 //If sync = 0, it doesn't show up on Server Control Console
|
||||
var/sync = TRUE //If sync if FALSE, it doesn't show up on Server Control Console
|
||||
|
||||
req_access = list(ACCESS_TOX) //Data and setting manipulation requires scientist access.
|
||||
|
||||
|
||||
@@ -4,13 +4,13 @@
|
||||
/obj/machinery/r_n_d
|
||||
name = "R&D Device"
|
||||
icon = 'icons/obj/machines/research.dmi'
|
||||
density = 1
|
||||
anchored = 1
|
||||
density = TRUE
|
||||
anchored = TRUE
|
||||
use_power = IDLE_POWER_USE
|
||||
var/busy = 0
|
||||
var/hacked = 0
|
||||
var/disabled = 0
|
||||
var/shocked = 0
|
||||
var/busy = FALSE
|
||||
var/hacked = FALSE
|
||||
var/disabled = FALSE
|
||||
var/shocked = FALSE
|
||||
var/list/wires = list()
|
||||
var/hack_wire
|
||||
var/disable_wire
|
||||
|
||||
@@ -352,7 +352,7 @@
|
||||
/obj/machinery/computer/rdservercontrol/emag_act(user as mob)
|
||||
if(!emagged)
|
||||
playsound(src.loc, 'sound/effects/sparks4.ogg', 75, 1)
|
||||
emagged = 1
|
||||
emagged = TRUE
|
||||
to_chat(user, "<span class='notice'>You you disable the security protocols</span>")
|
||||
src.updateUsrDialog()
|
||||
|
||||
|
||||
@@ -142,7 +142,7 @@
|
||||
desc = "A potent chemical mix that nullifies a slime's hunger, causing it to become docile and tame."
|
||||
icon = 'icons/obj/chemical.dmi'
|
||||
icon_state = "bottle19"
|
||||
var/being_used = 0
|
||||
var/being_used = FALSE
|
||||
|
||||
/obj/item/slimepotion/slime/docility/attack(mob/living/simple_animal/slime/M, mob/user)
|
||||
if(!isslime(M))
|
||||
@@ -160,11 +160,11 @@
|
||||
M.rabid = FALSE
|
||||
qdel(src)
|
||||
return
|
||||
M.docile = 1
|
||||
M.docile = TRUE
|
||||
M.set_nutrition(700)
|
||||
to_chat(M, "<span class='warning'>You absorb the potion and feel your intense desire to feed melt away.</span>")
|
||||
to_chat(user, "<span class='notice'>You feed the slime the potion, removing its hunger and calming it.</span>")
|
||||
being_used = 1
|
||||
being_used = TRUE
|
||||
var/newname = sanitize(copytext(input(user, "Would you like to give the slime a name?", "Name your new pet", "pet slime") as null|text,1,MAX_NAME_LEN))
|
||||
|
||||
if(!newname)
|
||||
@@ -180,7 +180,7 @@
|
||||
icon_state = "bottle19"
|
||||
origin_tech = "biotech=6"
|
||||
var/list/not_interested = list()
|
||||
var/being_used = 0
|
||||
var/being_used = FALSE
|
||||
var/sentience_type = SENTIENCE_ORGANIC
|
||||
|
||||
/obj/item/slimepotion/sentience/afterattack(mob/living/M, mob/user, proximity_flag)
|
||||
@@ -200,7 +200,7 @@
|
||||
return ..()
|
||||
|
||||
to_chat(user, "<span class='notice'>You offer [src] sentience potion to [SM]...</span>")
|
||||
being_used = 1
|
||||
being_used = TRUE
|
||||
|
||||
var/ghostmsg = "Play as [SM.name], pet of [user.name]?"
|
||||
var/list/candidates = SSghost_spawns.poll_candidates(ghostmsg, ROLE_SENTIENT, FALSE, 10 SECONDS, source = M)
|
||||
@@ -215,7 +215,7 @@
|
||||
SM.faction = user.faction
|
||||
SM.master_commander = user
|
||||
SM.sentience_act()
|
||||
SM.can_collar = 1
|
||||
SM.can_collar = TRUE
|
||||
to_chat(SM, "<span class='warning'>All at once it makes sense: you know what you are and who you are! Self awareness is yours!</span>")
|
||||
to_chat(SM, "<span class='userdanger'>You are grateful to be self aware and owe [user] a great debt. Serve [user], and assist [user.p_them()] in completing [user.p_their()] goals at any cost.</span>")
|
||||
if(SM.flags_2 & HOLOGRAM_2) //Check to see if it's a holodeck creature
|
||||
@@ -225,7 +225,7 @@
|
||||
qdel(src)
|
||||
else
|
||||
to_chat(user, "<span class='notice'>[M] looks interested for a moment, but then looks back down. Maybe you should try again later.</span>")
|
||||
being_used = 0
|
||||
being_used = FALSE
|
||||
..()
|
||||
|
||||
/obj/item/slimepotion/sentience/proc/after_success(mob/living/user, mob/living/simple_animal/SM)
|
||||
@@ -269,7 +269,7 @@
|
||||
SM.universal_speak = TRUE
|
||||
SM.faction = user.faction
|
||||
SM.sentience_act() //Same deal here as with sentience
|
||||
SM.can_collar = 1
|
||||
SM.can_collar = TRUE
|
||||
user.death()
|
||||
to_chat(SM, "<span class='notice'>In a quick flash, you feel your consciousness flow into [SM]!</span>")
|
||||
to_chat(SM, "<span class='warning'>You are now [SM]. Your allegiances, alliances, and roles are still the same as they were prior to consciousness transfer!</span>")
|
||||
@@ -431,7 +431,7 @@
|
||||
afterattack(over_object, usr, TRUE)
|
||||
|
||||
/obj/effect/timestop
|
||||
anchored = 1
|
||||
anchored = TRUE
|
||||
name = "chronofield"
|
||||
desc = "ZA WARUDO"
|
||||
icon = 'icons/effects/160x160.dmi'
|
||||
@@ -462,8 +462,8 @@
|
||||
var/mob/living/M = A
|
||||
if(M in immune)
|
||||
continue
|
||||
M.notransform = 1
|
||||
M.anchored = 1
|
||||
M.notransform = TRUE
|
||||
M.anchored = TRUE
|
||||
if(istype(M, /mob/living/simple_animal/hostile))
|
||||
var/mob/living/simple_animal/hostile/H = M
|
||||
H.AIStatus = AI_OFF
|
||||
@@ -490,8 +490,8 @@
|
||||
return
|
||||
|
||||
/obj/effect/timestop/proc/unfreeze_mob(mob/living/M)
|
||||
M.notransform = 0
|
||||
M.anchored = 0
|
||||
M.notransform = FALSE
|
||||
M.anchored = FALSE
|
||||
if(istype(M, /mob/living/simple_animal/hostile))
|
||||
var/mob/living/simple_animal/hostile/H = M
|
||||
H.AIStatus = initial(H.AIStatus)
|
||||
|
||||
Reference in New Issue
Block a user