diff --git a/SpacemanDMM.toml b/SpacemanDMM.toml new file mode 100644 index 00000000000..9b658dce0fa --- /dev/null +++ b/SpacemanDMM.toml @@ -0,0 +1,6 @@ +[langserver] +dreamchecker = true + +[code_standards] +disallow_relative_type_definitions = true +disallow_relative_proc_definitions = true diff --git a/code/LINDA/LINDA_system.dm b/code/LINDA/LINDA_system.dm index 3c8633c2b91..8d1ff95d3e9 100644 --- a/code/LINDA/LINDA_system.dm +++ b/code/LINDA/LINDA_system.dm @@ -32,13 +32,13 @@ if(!R) return 1 -atom/movable/proc/CanAtmosPass() +/atom/movable/proc/CanAtmosPass() return 1 -atom/proc/CanPass(atom/movable/mover, turf/target, height=1.5) +/atom/proc/CanPass(atom/movable/mover, turf/target, height=1.5) return (!density || !height) -turf/CanPass(atom/movable/mover, turf/target, height=1.5) +/turf/CanPass(atom/movable/mover, turf/target, height=1.5) if(!target) return 0 if(istype(mover)) // turf/Enter(...) will perform more advanced checks diff --git a/code/LINDA/LINDA_turf_tile.dm b/code/LINDA/LINDA_turf_tile.dm index acfa1983f72..8d71323cfb8 100644 --- a/code/LINDA/LINDA_turf_tile.dm +++ b/code/LINDA/LINDA_turf_tile.dm @@ -473,7 +473,7 @@ SSair.active_super_conductivity -= src return 0 -turf/simulated/proc/consider_superconductivity(starting) +/turf/simulated/proc/consider_superconductivity(starting) if(!thermal_conductivity) return 0 @@ -489,7 +489,7 @@ turf/simulated/proc/consider_superconductivity(starting) SSair.active_super_conductivity |= src return 1 -turf/simulated/proc/radiate_to_spess() //Radiate excess tile heat to space +/turf/simulated/proc/radiate_to_spess() //Radiate excess tile heat to space if(temperature > T0C) //Considering 0 degC as te break even point for radiation in and out var/delta_temperature = (temperature_archived - TCMB) //hardcoded space temperature if((heat_capacity > 0) && (abs(delta_temperature) > MINIMUM_TEMPERATURE_DELTA_TO_CONSIDER)) diff --git a/code/__DEFINES/js.dm b/code/__DEFINES/js.dm index e1a86e664d4..eeca4da55dd 100644 --- a/code/__DEFINES/js.dm +++ b/code/__DEFINES/js.dm @@ -36,7 +36,7 @@ Be sure to include required js functions in your page, or it'll raise an excepti And yes I know this is a proc in a defines file, but its highly relevant so it can be here */ -proc/send_byjax(receiver, control_id, target_element, new_content=null, callback=null, list/callback_args=null) +/proc/send_byjax(receiver, control_id, target_element, new_content=null, callback=null, list/callback_args=null) if(receiver && target_element && control_id) // && winexists(receiver, control_id)) var/list/argums = list(target_element, new_content) if(callback) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 0d3b26d0340..49c77ca0a4a 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -1,4 +1,4 @@ -proc/GetOppositeDir(var/dir) +/proc/GetOppositeDir(var/dir) switch(dir) if(NORTH) return SOUTH if(SOUTH) return NORTH @@ -10,7 +10,7 @@ proc/GetOppositeDir(var/dir) if(SOUTHEAST) return NORTHWEST return 0 -proc/random_underwear(gender, species = "Human") +/proc/random_underwear(gender, species = "Human") var/list/pick_list = list() switch(gender) if(MALE) pick_list = GLOB.underwear_m @@ -18,7 +18,7 @@ proc/random_underwear(gender, species = "Human") else pick_list = GLOB.underwear_list return pick_species_allowed_underwear(pick_list, species) -proc/random_undershirt(gender, species = "Human") +/proc/random_undershirt(gender, species = "Human") var/list/pick_list = list() switch(gender) if(MALE) pick_list = GLOB.undershirt_m @@ -26,7 +26,7 @@ proc/random_undershirt(gender, species = "Human") else pick_list = GLOB.undershirt_list return pick_species_allowed_underwear(pick_list, species) -proc/random_socks(gender, species = "Human") +/proc/random_socks(gender, species = "Human") var/list/pick_list = list() switch(gender) if(MALE) pick_list = GLOB.socks_m @@ -34,7 +34,7 @@ proc/random_socks(gender, species = "Human") else pick_list = GLOB.socks_list return pick_species_allowed_underwear(pick_list, species) -proc/pick_species_allowed_underwear(list/all_picks, species) +/proc/pick_species_allowed_underwear(list/all_picks, species) var/list/valid_picks = list() for(var/test in all_picks) var/datum/sprite_accessory/S = all_picks[test] @@ -46,7 +46,7 @@ proc/pick_species_allowed_underwear(list/all_picks, species) return pick(valid_picks) -proc/random_hair_style(var/gender, species = "Human", var/datum/robolimb/robohead) +/proc/random_hair_style(var/gender, species = "Human", var/datum/robolimb/robohead) var/h_style = "Bald" var/list/valid_hairstyles = list() for(var/hairstyle in GLOB.hair_styles_public_list) @@ -75,7 +75,7 @@ proc/random_hair_style(var/gender, species = "Human", var/datum/robolimb/robohea return h_style -proc/random_facial_hair_style(var/gender, species = "Human", var/datum/robolimb/robohead) +/proc/random_facial_hair_style(var/gender, species = "Human", var/datum/robolimb/robohead) var/f_style = "Shaved" var/list/valid_facial_hairstyles = list() for(var/facialhairstyle in GLOB.facial_hair_styles_list) @@ -104,7 +104,7 @@ proc/random_facial_hair_style(var/gender, species = "Human", var/datum/robolimb/ return f_style -proc/random_head_accessory(species = "Human") +/proc/random_head_accessory(species = "Human") var/ha_style = "None" var/list/valid_head_accessories = list() for(var/head_accessory in GLOB.head_accessory_styles_list) @@ -119,7 +119,7 @@ proc/random_head_accessory(species = "Human") return ha_style -proc/random_marking_style(var/location = "body", species = "Human", var/datum/robolimb/robohead, var/body_accessory, var/alt_head) +/proc/random_marking_style(var/location = "body", species = "Human", var/datum/robolimb/robohead, var/body_accessory, var/alt_head) var/m_style = "None" var/list/valid_markings = list() for(var/marking in GLOB.marking_styles_list) @@ -158,7 +158,7 @@ proc/random_marking_style(var/location = "body", species = "Human", var/datum/ro return m_style -proc/random_body_accessory(species = "Vulpkanin") +/proc/random_body_accessory(species = "Vulpkanin") var/body_accessory = null var/list/valid_body_accessories = list() for(var/B in GLOB.body_accessory_by_name) @@ -174,7 +174,7 @@ proc/random_body_accessory(species = "Vulpkanin") return body_accessory -proc/random_name(gender, species = "Human") +/proc/random_name(gender, species = "Human") var/datum/species/current_species if(species) @@ -188,7 +188,7 @@ proc/random_name(gender, species = "Human") else return current_species.get_random_name(gender) -proc/random_skin_tone(species = "Human") +/proc/random_skin_tone(species = "Human") if(species == "Human" || species == "Drask") switch(pick(60;"caucasian", 15;"afroamerican", 10;"african", 10;"latino", 5;"albino")) if("caucasian") . = -10 @@ -202,7 +202,7 @@ proc/random_skin_tone(species = "Human") . = rand(1, 6) return . -proc/skintone2racedescription(tone, species = "Human") +/proc/skintone2racedescription(tone, species = "Human") if(species == "Human") switch(tone) if(30 to INFINITY) return "albino" @@ -225,7 +225,7 @@ proc/skintone2racedescription(tone, species = "Human") else return "unknown" -proc/age2agedescription(age) +/proc/age2agedescription(age) switch(age) if(0 to 1) return "infant" if(1 to 3) return "toddler" diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm index 034e8851c18..7019ee8b2c4 100644 --- a/code/__HELPERS/text.dm +++ b/code/__HELPERS/text.dm @@ -196,7 +196,7 @@ //checks text for html tags //if tag is not in whitelist (var/list/paper_tag_whitelist in global.dm) //relpaces < with < -proc/checkhtml(var/t) +/proc/checkhtml(var/t) t = sanitize_simple(t, list("&#"=".")) var/p = findtext(t,"<",1) while(p) //going through all the tags diff --git a/code/__HELPERS/time.dm b/code/__HELPERS/time.dm index f205c7cf0ce..a1da66b1373 100644 --- a/code/__HELPERS/time.dm +++ b/code/__HELPERS/time.dm @@ -60,7 +60,7 @@ return time2text(station_time(time, TRUE), format) /* Returns 1 if it is the selected month and day */ -proc/isDay(var/month, var/day) +/proc/isDay(var/month, var/day) if(isnum(month) && isnum(day)) var/MM = text2num(time2text(world.timeofday, "MM")) // get the current month var/DD = text2num(time2text(world.timeofday, "DD")) // get the current day diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index fc0f7520e0e..3fb8c2400ab 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -529,7 +529,7 @@ Returns 1 if the chain up to the area contains the given typepath return max(min(middle, high), low) //returns random gauss number -proc/GaussRand(var/sigma) +/proc/GaussRand(var/sigma) var/x,y,rsq do x=2*rand()-1 @@ -539,7 +539,7 @@ proc/GaussRand(var/sigma) return sigma*y*sqrt(-2*log(rsq)/rsq) //returns random gauss number, rounded to 'roundto' -proc/GaussRandRound(var/sigma,var/roundto) +/proc/GaussRandRound(var/sigma,var/roundto) return round(GaussRand(sigma),roundto) //Will return the contents of an atom recursivly to a depth of 'searchDepth' @@ -583,7 +583,7 @@ proc/GaussRandRound(var/sigma,var/roundto) return 1 -proc/is_blocked_turf(turf/T, exclude_mobs) +/proc/is_blocked_turf(turf/T, exclude_mobs) if(T.density) return 1 for(var/i in T) @@ -984,16 +984,16 @@ proc/is_blocked_turf(turf/T, exclude_mobs) -proc/get_cardinal_dir(atom/A, atom/B) +/proc/get_cardinal_dir(atom/A, atom/B) var/dx = abs(B.x - A.x) var/dy = abs(B.y - A.y) return get_dir(A, B) & (rand() * (dx+dy) < dy ? 3 : 12) //chances are 1:value. anyprob(1) will always return true -proc/anyprob(value) +/proc/anyprob(value) return (rand(1,value)==value) -proc/view_or_range(distance = world.view , center = usr , type) +/proc/view_or_range(distance = world.view , center = usr , type) switch(type) if("view") . = view(distance,center) @@ -1001,7 +1001,7 @@ proc/view_or_range(distance = world.view , center = usr , type) . = range(distance,center) return -proc/oview_or_orange(distance = world.view , center = usr , type) +/proc/oview_or_orange(distance = world.view , center = usr , type) switch(type) if("view") . = oview(distance,center) @@ -1009,7 +1009,7 @@ proc/oview_or_orange(distance = world.view , center = usr , type) . = orange(distance,center) return -proc/get_mob_with_client_list() +/proc/get_mob_with_client_list() var/list/mobs = list() for(var/mob/M in GLOB.mob_list) if(M.client) @@ -1233,10 +1233,10 @@ GLOBAL_LIST_INIT(wall_items, typecacheof(list(/obj/machinery/power/apc, /obj/mac return 0 -proc/get_angle(atom/a, atom/b) +/proc/get_angle(atom/a, atom/b) return atan2(b.y - a.y, b.x - a.x) -proc/atan2(x, y) +/proc/atan2(x, y) if(!x && !y) return 0 return y >= 0 ? arccos(x / sqrt(x * x + y * y)) : -arccos(x / sqrt(x * x + y * y)) @@ -1329,7 +1329,7 @@ Standard way to write links -Sayu return FACING_INIT_FACING_TARGET_TARGET_FACING_PERPENDICULAR -atom/proc/GetTypeInAllContents(typepath) +/atom/proc/GetTypeInAllContents(typepath) var/list/processing_list = list(src) var/list/processed = list() diff --git a/code/_globalvars/misc.dm b/code/_globalvars/misc.dm index 283d92a954f..3a65da81382 100644 --- a/code/_globalvars/misc.dm +++ b/code/_globalvars/misc.dm @@ -10,12 +10,12 @@ GLOBAL_DATUM_INIT(command_announcer, /obj/item/radio/intercom/command, create_co // Load order issues means this can't be new'd until other code runs // This is probably not the way I should be doing this, but I don't know how to do it right! -proc/create_global_announcer() +/proc/create_global_announcer() spawn(0) GLOB.global_announcer = new(null) return -proc/create_command_announcer() +/proc/create_command_announcer() spawn(0) GLOB.command_announcer = new(null) return diff --git a/code/datums/helper_datums/teleport.dm b/code/datums/helper_datums/teleport.dm index 4e20d2a675e..4609075ddd7 100644 --- a/code/datums/helper_datums/teleport.dm +++ b/code/datums/helper_datums/teleport.dm @@ -152,13 +152,11 @@ return doTeleport() return 0 -/datum/teleport/instant //teleports when datum is created - - start(ateleatom, adestination, aprecision=0, afteleport=1, aeffectin=null, aeffectout=null, asoundin=null, asoundout=null) - if(..()) - if(teleport()) - return 1 - return 0 +/datum/teleport/instant/start(ateleatom, adestination, aprecision=0, afteleport=1, aeffectin=null, aeffectout=null, asoundin=null, asoundout=null) + if(..()) + if(teleport()) + return 1 + return 0 /datum/teleport/instant/science diff --git a/code/datums/ruins/lavaland.dm b/code/datums/ruins/lavaland.dm index a19d75275fa..2143fb5ad5c 100644 --- a/code/datums/ruins/lavaland.dm +++ b/code/datums/ruins/lavaland.dm @@ -42,7 +42,7 @@ cost = 10 allow_duplicates = FALSE -datum/map_template/ruin/lavaland/ash_walker +/datum/map_template/ruin/lavaland/ash_walker name = "Ash Walker Nest" id = "ash-walker" description = "A race of unbreathing lizards live here, that run faster than a human can, worship a broken dead city, and are capable of reproducing by something involving tentacles? \ diff --git a/code/datums/spells/lightning.dm b/code/datums/spells/lightning.dm index e7821aed6c2..ed6b7cd543e 100644 --- a/code/datums/spells/lightning.dm +++ b/code/datums/spells/lightning.dm @@ -44,7 +44,7 @@ if(ready) Discharge() -obj/effect/proc_holder/spell/targeted/lightning/proc/Reset(mob/user = usr) +/obj/effect/proc_holder/spell/targeted/lightning/proc/Reset(mob/user = usr) ready = 0 start_time = 0 if(halo) diff --git a/code/datums/spells/magnet.dm b/code/datums/spells/magnet.dm index fea6780085c..dfdac6f1b9c 100644 --- a/code/datums/spells/magnet.dm +++ b/code/datums/spells/magnet.dm @@ -39,7 +39,7 @@ if(ready) Discharge() -obj/effect/proc_holder/spell/targeted/magnet/proc/Reset(mob/user = usr) +/obj/effect/proc_holder/spell/targeted/magnet/proc/Reset(mob/user = usr) ready = 0 energy = 0 start_time = 0 diff --git a/code/datums/wires/suitstorage.dm b/code/datums/wires/suitstorage.dm index 828e56884bf..ec651002747 100644 --- a/code/datums/wires/suitstorage.dm +++ b/code/datums/wires/suitstorage.dm @@ -17,7 +17,7 @@ . += "The green light is [A.shocked ? "on" : "off"]." . += "The UV display shows [A.uv_super ? "15 nm" : "185 nm"]." -datum/wires/suitstorage/interactable(mob/user) +/datum/wires/suitstorage/interactable(mob/user) var/obj/machinery/suit_storage_unit/A = holder if(iscarbon(user) && A.Adjacent(user) && A.shocked) return A.shock(user, 100) @@ -42,7 +42,7 @@ datum/wires/suitstorage/interactable(mob/user) A.uv_super = !mend ..() -datum/wires/suitstorage/on_pulse(wire) +/datum/wires/suitstorage/on_pulse(wire) var/obj/machinery/suit_storage_unit/A = holder if(is_cut(wire)) return diff --git a/code/datums/wires/wires.dm b/code/datums/wires/wires.dm index 27d1448ac77..d2c092211ec 100644 --- a/code/datums/wires/wires.dm +++ b/code/datums/wires/wires.dm @@ -62,7 +62,7 @@ * In the `colors` list, the name of the color is the key, and the wire is the value. * For example: `colors["red"] = WIRE_ELECTRIFY`. This will look like `list("red" = WIRE_ELECTRIFY)` internally. */ -datum/wires/proc/randomize() +/datum/wires/proc/randomize() var/static/list/possible_colors = list("red", "blue", "green", "silver", "orange", "brown", "gold", "white", "cyan", "magenta", "purple", "pink") var/list/my_possible_colors = possible_colors.Copy() diff --git a/code/defines/procs/dbcore.dm b/code/defines/procs/dbcore.dm index 90a5b0db40c..945ab8af23a 100644 --- a/code/defines/procs/dbcore.dm +++ b/code/defines/procs/dbcore.dm @@ -29,7 +29,7 @@ #define BLOB 14 // TODO: Investigate more recent type additions and see if I can handle them. - Nadrew -DBConnection +/DBConnection var/_db_con // This variable contains a reference to the actual database connection. var/dbi // This variable is a string containing the DBI MySQL requires. var/user // This variable contains the username data. @@ -39,14 +39,14 @@ DBConnection var/server = "" var/port = 3306 -DBConnection/New(dbi_handler,username,password_handler,cursor_handler) +/DBConnection/New(dbi_handler,username,password_handler,cursor_handler) src.dbi = dbi_handler src.user = username src.password = password_handler src.default_cursor = cursor_handler _db_con = _dm_db_new_con() -DBConnection/proc/Connect(dbi_handler=src.dbi,user_handler=src.user,password_handler=src.password,cursor_handler) +/DBConnection/proc/Connect(dbi_handler=src.dbi,user_handler=src.user,password_handler=src.password,cursor_handler) if(!config.sql_enabled) return 0 if(!src) return 0 @@ -54,24 +54,24 @@ DBConnection/proc/Connect(dbi_handler=src.dbi,user_handler=src.user,password_han if(!cursor_handler) cursor_handler = Default_Cursor return _dm_db_connect(_db_con,dbi_handler,user_handler,password_handler,cursor_handler,null) -DBConnection/proc/Disconnect() return _dm_db_close(_db_con) +/DBConnection/proc/Disconnect() return _dm_db_close(_db_con) -DBConnection/proc/IsConnected() +/DBConnection/proc/IsConnected() if(!config.sql_enabled) return 0 var/success = _dm_db_is_connected(_db_con) return success -DBConnection/proc/Quote(str) return _dm_db_quote(_db_con,str) +/DBConnection/proc/Quote(str) return _dm_db_quote(_db_con,str) -DBConnection/proc/ErrorMsg() return _dm_db_error_msg(_db_con) -DBConnection/proc/SelectDB(database_name,dbi) +/DBConnection/proc/ErrorMsg() return _dm_db_error_msg(_db_con) +/DBConnection/proc/SelectDB(database_name,dbi) if(IsConnected()) Disconnect() //return Connect("[dbi?"[dbi]":"dbi:mysql:[database_name]:[DB_SERVER]:[DB_PORT]"]",user,password) return Connect("[dbi?"[dbi]":"dbi:mysql:[database_name]:[sqladdress]:[sqlport]"]",user,password) -DBConnection/proc/NewQuery(sql_query,cursor_handler=src.default_cursor) return new/DBQuery(sql_query,src,cursor_handler) +/DBConnection/proc/NewQuery(sql_query,cursor_handler=src.default_cursor) return new/DBQuery(sql_query,src,cursor_handler) -DBQuery/New(sql_query,DBConnection/connection_handler,cursor_handler) +/DBQuery/New(sql_query,DBConnection/connection_handler,cursor_handler) if(IsAdminAdvancedProcCall()) to_chat(usr, "DB query blocked: Advanced ProcCall detected.") message_admins("[key_name(usr)] attempted to create a DB query via advanced proc-call") @@ -83,12 +83,12 @@ DBQuery/New(sql_query,DBConnection/connection_handler,cursor_handler) _db_query = _dm_db_new_query() return ..() -DBQuery/CanProcCall() +/DBQuery/CanProcCall() // dont even try it return FALSE -DBQuery +/DBQuery var/sql // The sql query being executed. var/default_cursor var/list/columns //list of DB Columns populated by Columns() @@ -98,26 +98,26 @@ DBQuery var/DBConnection/db_connection var/_db_query -DBQuery/proc/Connect(DBConnection/connection_handler) src.db_connection = connection_handler +/DBQuery/proc/Connect(DBConnection/connection_handler) src.db_connection = connection_handler -DBQuery/proc/Execute(sql_query=src.sql,cursor_handler=default_cursor) +/DBQuery/proc/Execute(sql_query=src.sql,cursor_handler=default_cursor) Close() return _dm_db_execute(_db_query,sql_query,db_connection._db_con,cursor_handler,null) -DBQuery/proc/NextRow() return _dm_db_next_row(_db_query,item,conversions) +/DBQuery/proc/NextRow() return _dm_db_next_row(_db_query,item,conversions) -DBQuery/proc/RowsAffected() return _dm_db_rows_affected(_db_query) +/DBQuery/proc/RowsAffected() return _dm_db_rows_affected(_db_query) -DBQuery/proc/RowCount() return _dm_db_row_count(_db_query) +/DBQuery/proc/RowCount() return _dm_db_row_count(_db_query) -DBQuery/proc/ErrorMsg() return _dm_db_error_msg(_db_query) +/DBQuery/proc/ErrorMsg() return _dm_db_error_msg(_db_query) -DBQuery/proc/Columns() +/DBQuery/proc/Columns() if(!columns) columns = _dm_db_columns(_db_query,/DBColumn) return columns -DBQuery/proc/GetRowData() +/DBQuery/proc/GetRowData() var/list/columns = Columns() var/list/results if(columns.len) @@ -128,23 +128,23 @@ DBQuery/proc/GetRowData() results[C] = src.item[(cur_col.position+1)] return results -DBQuery/proc/Close() +/DBQuery/proc/Close() item.len = 0 columns = null conversions = null return _dm_db_close(_db_query) -DBQuery/proc/Quote(str) +/DBQuery/proc/Quote(str) return db_connection.Quote(str) -DBQuery/proc/SetConversion(column,conversion) +/DBQuery/proc/SetConversion(column,conversion) if(istext(column)) column = columns.Find(column) if(!conversions) conversions = new/list(column) else if(conversions.len < column) conversions.len = column conversions[column] = conversion -DBColumn +/DBColumn var/name var/table var/position //1-based index into item data @@ -153,7 +153,7 @@ DBColumn var/length var/max_length -DBColumn/New(name_handler,table_handler,position_handler,type_handler,flag_handler,length_handler,max_length_handler) +/DBColumn/New(name_handler,table_handler,position_handler,type_handler,flag_handler,length_handler,max_length_handler) src.name = name_handler src.table = table_handler src.position = position_handler @@ -164,7 +164,7 @@ DBColumn/New(name_handler,table_handler,position_handler,type_handler,flag_handl return ..() -DBColumn/proc/SqlTypeName(type_handler=src.sql_type) +/DBColumn/proc/SqlTypeName(type_handler=src.sql_type) switch(type_handler) if(TINYINT) return "TINYINT" if(SMALLINT) return "SMALLINT" diff --git a/code/game/gamemodes/changeling/powers/tiny_prick.dm b/code/game/gamemodes/changeling/powers/tiny_prick.dm index fbfb75b8b6a..9bc9fc7b511 100644 --- a/code/game/gamemodes/changeling/powers/tiny_prick.dm +++ b/code/game/gamemodes/changeling/powers/tiny_prick.dm @@ -112,7 +112,7 @@ feedback_add_details("changeling_powers","TS") return TRUE -datum/action/changeling/sting/extract_dna +/datum/action/changeling/sting/extract_dna name = "Extract DNA Sting" desc = "We stealthily sting a target and extract their DNA. Costs 25 chemicals." helptext = "Will give you the DNA of your target, allowing you to transform into them." @@ -132,7 +132,7 @@ datum/action/changeling/sting/extract_dna feedback_add_details("changeling_powers","ED") return 1 -datum/action/changeling/sting/mute +/datum/action/changeling/sting/mute name = "Mute Sting" desc = "We silently sting a human, completely silencing them for a short time. Costs 20 chemicals." helptext = "Does not provide a warning to the victim that they have been stung, until they try to speak and cannot." @@ -147,7 +147,7 @@ datum/action/changeling/sting/mute feedback_add_details("changeling_powers","MS") return 1 -datum/action/changeling/sting/blind +/datum/action/changeling/sting/blind name = "Blind Sting" desc = "We temporarily blind our victim. Costs 25 chemicals." helptext = "This sting completely blinds a target for a short time, and leaves them with blurred vision for a long time." @@ -165,7 +165,7 @@ datum/action/changeling/sting/blind feedback_add_details("changeling_powers","BS") return 1 -datum/action/changeling/sting/LSD +/datum/action/changeling/sting/LSD name = "Hallucination Sting" desc = "We cause mass terror to our victim. Costs 10 chemicals." helptext = "We evolve the ability to sting a target with a powerful hallucinogenic chemical. The target does not notice they have been stung, and the effect occurs after 30 to 60 seconds." @@ -182,7 +182,7 @@ datum/action/changeling/sting/LSD feedback_add_details("changeling_powers","HS") return 1 -datum/action/changeling/sting/cryo //Enable when mob cooling is fixed so that frostoil actually makes you cold, instead of mostly just hungry. +/datum/action/changeling/sting/cryo //Enable when mob cooling is fixed so that frostoil actually makes you cold, instead of mostly just hungry. name = "Cryogenic Sting" desc = "We silently sting our victim with a cocktail of chemicals that freezes them from the inside. Costs 15 chemicals." helptext = "Does not provide a warning to the victim, though they will likely realize they are suddenly freezing." diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 1d50606c190..8757fa00d4f 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -337,7 +337,7 @@ ////////////////////////// //Reports player logouts// ////////////////////////// -proc/display_roundstart_logout_report() +/proc/display_roundstart_logout_report() var/msg = "Roundstart logout report\n\n" for(var/mob/living/L in GLOB.mob_list) diff --git a/code/game/gamemodes/heist/heist.dm b/code/game/gamemodes/heist/heist.dm index 142ae33c078..f95702e7f28 100644 --- a/code/game/gamemodes/heist/heist.dm +++ b/code/game/gamemodes/heist/heist.dm @@ -250,7 +250,7 @@ GLOBAL_LIST_EMPTY(cortical_stacks) //Stacks for 'leave nobody behind' objective. ..() -datum/game_mode/proc/auto_declare_completion_heist() +/datum/game_mode/proc/auto_declare_completion_heist() if(raiders.len) var/check_return = 0 if(GAMEMODE_IS_HEIST) diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index b4e7dec611f..7c87083dfe5 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -3,7 +3,7 @@ /datum/game_mode var/list/datum/mind/syndicates = list() -proc/issyndicate(mob/living/M as mob) +/proc/issyndicate(mob/living/M as mob) return istype(M) && M.mind && SSticker && SSticker.mode && (M.mind in SSticker.mode.syndicates) /datum/game_mode/nuclear diff --git a/code/game/gamemodes/steal_items.dm b/code/game/gamemodes/steal_items.dm index 4175883fc1a..a20b0e1654b 100644 --- a/code/game/gamemodes/steal_items.dm +++ b/code/game/gamemodes/steal_items.dm @@ -57,7 +57,7 @@ typepath = /obj/item/aicard location_override = "AI Satellite. An intellicard for transportation can be found in Tech Storage, Science Department or manufactured" -datum/theft_objective/ai/check_special_completion(var/obj/item/aicard/C) +/datum/theft_objective/ai/check_special_completion(var/obj/item/aicard/C) if(..()) for(var/mob/living/silicon/ai/A in C) if(istype(A, /mob/living/silicon/ai) && A.stat != 2) //See if any AI's are alive inside that card. diff --git a/code/game/jobs/access.dm b/code/game/jobs/access.dm index 48ac91c72fa..ac533f0b7ef 100644 --- a/code/game/jobs/access.dm +++ b/code/game/jobs/access.dm @@ -426,6 +426,7 @@ //gets the alt title, failing that the actual job rank //this is unused +// THEN WHY IS IT STILL HERE?? -AA07, 2020-07-31 /obj/proc/sdsdsd() //GetJobDisplayName if(!istype(src, /obj/item/pda) && !istype(src,/obj/item/card/id)) return @@ -442,7 +443,7 @@ return "Unknown" -proc/GetIdCard(var/mob/living/carbon/human/H) +/proc/GetIdCard(var/mob/living/carbon/human/H) if(H.wear_id) var/id = H.wear_id.GetID() if(id) @@ -451,7 +452,7 @@ proc/GetIdCard(var/mob/living/carbon/human/H) var/obj/item/I = H.get_active_hand() return I.GetID() -proc/FindNameFromID(var/mob/living/carbon/human/H) +/proc/FindNameFromID(var/mob/living/carbon/human/H) ASSERT(istype(H)) var/obj/item/card/id/C = H.get_active_hand() if( istype(C) || istype(C, /obj/item/pda) ) @@ -480,7 +481,7 @@ proc/FindNameFromID(var/mob/living/carbon/human/H) if(ID) return ID.registered_name -proc/get_all_job_icons() //For all existing HUD icons +/proc/get_all_job_icons() //For all existing HUD icons return GLOB.joblist + list("Prisoner") /obj/proc/GetJobName() //Used in secHUD icon generation @@ -511,7 +512,7 @@ proc/get_all_job_icons() //For all existing HUD icons return "Unknown" //Return unknown if none of the above apply -proc/get_accesslist_static_data(num_min_region = REGION_GENERAL, num_max_region = REGION_COMMAND) +/proc/get_accesslist_static_data(num_min_region = REGION_GENERAL, num_max_region = REGION_COMMAND) var/list/retval for(var/i in num_min_region to num_max_region) var/list/accesses = list() diff --git a/code/game/machinery/computer/ai_core.dm b/code/game/machinery/computer/ai_core.dm index 44b55ed1d2c..57554d92867 100644 --- a/code/game/machinery/computer/ai_core.dm +++ b/code/game/machinery/computer/ai_core.dm @@ -288,7 +288,7 @@ That prevents a few funky behaviors. //The type of interaction, the player performing the operation, the AI itself, and the card object, if any. -atom/proc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/aicard/card) +/atom/proc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/aicard/card) if(istype(card)) if(card.flush) to_chat(user, "ERROR: AI flush is in progress, cannot execute transfer protocol.") diff --git a/code/game/machinery/computer/law.dm b/code/game/machinery/computer/law.dm index 74cc417e7ce..d7987477a65 100644 --- a/code/game/machinery/computer/law.dm +++ b/code/game/machinery/computer/law.dm @@ -11,55 +11,57 @@ light_range_on = 2 - verb/AccessInternals() - set category = "Object" - set name = "Access Computer's Internals" - set src in oview(1) - if(get_dist(src, usr) > 1 || usr.restrained() || usr.lying || usr.stat || istype(usr, /mob/living/silicon)) - return - - opened = !opened - if(opened) - to_chat(usr, "The access panel is now open.") - else - to_chat(usr, "The access panel is now closed.") +// What the fuck even is this +/obj/machinery/computer/aiupload/verb/AccessInternals() + set category = "Object" + set name = "Access Computer's Internals" + set src in oview(1) + if(get_dist(src, usr) > 1 || usr.restrained() || usr.lying || usr.stat || istype(usr, /mob/living/silicon)) return + opened = !opened + if(opened) + to_chat(usr, "The access panel is now open.") + else + to_chat(usr, "The access panel is now closed.") + return - attackby(obj/item/O as obj, mob/user as mob, params) - if(istype(O, /obj/item/aiModule)) - if(!current)//no AI selected - to_chat(user, "No AI selected. Please chose a target before proceeding with upload.") - return - var/turf/T = get_turf(current) - if(!atoms_share_level(T, src)) - to_chat(user, "Unable to establish a connection: You're too far away from the target silicon!") - return - var/obj/item/aiModule/M = O - M.install(src) + +/obj/machinery/computer/aiupload/attackby(obj/item/O as obj, mob/user as mob, params) + if(istype(O, /obj/item/aiModule)) + if(!current)//no AI selected + to_chat(user, "No AI selected. Please chose a target before proceeding with upload.") return - return ..() - - - attack_hand(var/mob/user as mob) - if(src.stat & NOPOWER) - to_chat(usr, "The upload computer has no power!") - return - if(src.stat & BROKEN) - to_chat(usr, "The upload computer is broken!") + var/turf/T = get_turf(current) + if(!atoms_share_level(T, src)) + to_chat(user, "Unable to establish a connection: You're too far away from the target silicon!") return + var/obj/item/aiModule/M = O + M.install(src) + return + return ..() - src.current = select_active_ai(user) - if(!src.current) - to_chat(usr, "No active AIs detected.") - else - to_chat(usr, "[src.current.name] selected for law changes.") +/obj/machinery/computer/aiupload/attack_hand(var/mob/user as mob) + if(src.stat & NOPOWER) + to_chat(usr, "The upload computer has no power!") + return + if(src.stat & BROKEN) + to_chat(usr, "The upload computer is broken!") return - attack_ghost(user as mob) - return 1 + src.current = select_active_ai(user) + if(!src.current) + to_chat(usr, "No active AIs detected.") + else + to_chat(usr, "[src.current.name] selected for law changes.") + return + +/obj/machinery/computer/aiupload/attack_ghost(user as mob) + return 1 + +// Why is this not a subtype /obj/machinery/computer/borgupload name = "cyborg upload console" desc = "Used to upload laws to Cyborgs." @@ -69,35 +71,35 @@ var/mob/living/silicon/robot/current = null - attackby(obj/item/aiModule/module as obj, mob/user as mob, params) - if(istype(module, /obj/item/aiModule)) - if(!current)//no borg selected - to_chat(user, "No borg selected. Please chose a target before proceeding with upload.") - return - var/turf/T = get_turf(current) - if(!atoms_share_level(T, src)) - to_chat(user, "Unable to establish a connection: You're too far away from the target silicon!") - return - module.install(src) +/obj/machinery/computer/borgupload/attackby(obj/item/aiModule/module as obj, mob/user as mob, params) + if(istype(module, /obj/item/aiModule)) + if(!current)//no borg selected + to_chat(user, "No borg selected. Please chose a target before proceeding with upload.") return - return ..() - - - attack_hand(var/mob/user as mob) - if(src.stat & NOPOWER) - to_chat(usr, "The upload computer has no power!") - return - if(src.stat & BROKEN) - to_chat(usr, "The upload computer is broken!") + var/turf/T = get_turf(current) + if(!atoms_share_level(T, src)) + to_chat(user, "Unable to establish a connection: You're too far away from the target silicon!") return + module.install(src) + return + return ..() - src.current = freeborg() - if(!src.current) - to_chat(usr, "No free cyborgs detected.") - else - to_chat(usr, "[src.current.name] selected for law changes.") +/obj/machinery/computer/borgupload/attack_hand(var/mob/user as mob) + if(src.stat & NOPOWER) + to_chat(usr, "The upload computer has no power!") + return + if(src.stat & BROKEN) + to_chat(usr, "The upload computer is broken!") return - attack_ghost(user as mob) + src.current = freeborg() + + if(!src.current) + to_chat(usr, "No free cyborgs detected.") + else + to_chat(usr, "[src.current.name] selected for law changes.") + return + +/obj/machinery/computer/borgupload/attack_ghost(user as mob) return 1 diff --git a/code/game/machinery/cryo.dm b/code/game/machinery/cryo.dm index ba8f430937c..70798c0b92e 100644 --- a/code/game/machinery/cryo.dm +++ b/code/game/machinery/cryo.dm @@ -27,12 +27,13 @@ var/running_bob_animation = 0 // This is used to prevent threads from building up if update_icons is called multiple times light_color = LIGHT_COLOR_WHITE - power_change() - ..() - if(!(stat & (BROKEN|NOPOWER))) - set_light(2) - else - set_light(0) + +/obj/machinery/atmospherics/unary/cryo_cell/power_change() + ..() + if(!(stat & (BROKEN|NOPOWER))) + set_light(2) + else + set_light(0) /obj/machinery/atmospherics/unary/cryo_cell/New() ..() diff --git a/code/game/machinery/embedded_controller/airlock_program.dm b/code/game/machinery/embedded_controller/airlock_program.dm index 8ad85a608f0..d9500e30808 100644 --- a/code/game/machinery/embedded_controller/airlock_program.dm +++ b/code/game/machinery/embedded_controller/airlock_program.dm @@ -305,7 +305,7 @@ signalDoor(tag_exterior_door, command) signalDoor(tag_interior_door, command) -datum/computer/file/embedded_program/airlock/proc/signal_mech_sensor(var/command, var/sensor) +/datum/computer/file/embedded_program/airlock/proc/signal_mech_sensor(var/command, var/sensor) var/datum/signal/signal = new signal.data["tag"] = sensor signal.data["command"] = command diff --git a/code/game/machinery/overview.dm b/code/game/machinery/overview.dm index 7165cceb1ff..7d8910d6ef5 100644 --- a/code/game/machinery/overview.dm +++ b/code/game/machinery/overview.dm @@ -342,13 +342,13 @@ return -proc/getr(col) +/proc/getr(col) return hex2num( copytext(col, 2,4)) -proc/getg(col) +/proc/getg(col) return hex2num( copytext(col, 4,6)) -proc/getb(col) +/proc/getb(col) return hex2num( copytext(col, 6)) diff --git a/code/game/mecha/combat/honker.dm b/code/game/mecha/combat/honker.dm index 1bb73856f1b..eb7bfad8942 100644 --- a/code/game/mecha/combat/honker.dm +++ b/code/game/mecha/combat/honker.dm @@ -137,7 +137,7 @@ squeak = 0 return result -obj/mecha/combat/honker/Topic(href, href_list) +/obj/mecha/combat/honker/Topic(href, href_list) ..() if(href_list["play_sound"]) switch(href_list["play_sound"]) diff --git a/code/game/objects/effects/spawners/bombspawner.dm b/code/game/objects/effects/spawners/bombspawner.dm index 2e81ecb235d..9b62faa5252 100644 --- a/code/game/objects/effects/spawners/bombspawner.dm +++ b/code/game/objects/effects/spawners/bombspawner.dm @@ -6,18 +6,18 @@ var/btemp1 = 1500 var/btemp2 = 1000 // tank temperatures - timer - btype = 2 +/obj/effect/spawner/newbomb/timer + btype = 2 - syndicate - btemp1 = 150 - btemp2 = 20 +/obj/effect/spawner/newbomb/timer/syndicate + btemp1 = 150 + btemp2 = 20 - proximity - btype = 1 +/obj/effect/spawner/newbomb/proximity + btype = 1 - radio - btype = 0 +/obj/effect/spawner/newbomb/radio + btype = 0 /obj/effect/spawner/newbomb/New() diff --git a/code/game/objects/items/bodybag.dm b/code/game/objects/items/bodybag.dm index 719916e8ea0..58a4ab63d34 100644 --- a/code/game/objects/items/bodybag.dm +++ b/code/game/objects/items/bodybag.dm @@ -7,10 +7,10 @@ icon_state = "bodybag_folded" w_class = WEIGHT_CLASS_SMALL - attack_self(mob/user) - var/obj/structure/closet/body_bag/R = new /obj/structure/closet/body_bag(user.loc) - R.add_fingerprint(user) - qdel(src) +/obj/item/bodybag/attack_self(mob/user) + var/obj/structure/closet/body_bag/R = new /obj/structure/closet/body_bag(user.loc) + R.add_fingerprint(user) + qdel(src) /obj/structure/closet/body_bag name = "body bag" diff --git a/code/game/objects/items/changestone.dm b/code/game/objects/items/changestone.dm index 62d56614a07..ec7ad232857 100644 --- a/code/game/objects/items/changestone.dm +++ b/code/game/objects/items/changestone.dm @@ -4,7 +4,7 @@ icon = 'icons/obj/artifacts.dmi' icon_state = "changerock" -obj/item/changestone/attack_hand(var/mob/user as mob) +/obj/item/changestone/attack_hand(var/mob/user as mob) if(istype(user,/mob/living/carbon/human)) var/mob/living/carbon/human/H = user if(!H.gloves) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 4581061f339..5eddfae9bbb 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -405,7 +405,7 @@ -obj/item/toy/cards +/obj/item/toy/cards resistance_flags = FLAMMABLE max_integrity = 50 var/parentdeck = null @@ -417,14 +417,14 @@ obj/item/toy/cards var/card_throw_range = 20 var/list/card_attack_verb = list("attacked") -obj/item/toy/cards/New() +/obj/item/toy/cards/New() ..() -obj/item/toy/cards/proc/apply_card_vars(obj/item/toy/cards/newobj, obj/item/toy/cards/sourceobj) // Applies variables for supporting multiple types of card deck +/obj/item/toy/cards/proc/apply_card_vars(obj/item/toy/cards/newobj, obj/item/toy/cards/sourceobj) // Applies variables for supporting multiple types of card deck if(!istype(sourceobj)) return -obj/item/toy/cards/deck +/obj/item/toy/cards/deck name = "deck of cards" desc = "A deck of space-grade playing cards." icon = 'icons/obj/toy.dmi' @@ -434,7 +434,7 @@ obj/item/toy/cards/deck var/cooldown = 0 var/list/cards = list() -obj/item/toy/cards/deck/New() +/obj/item/toy/cards/deck/New() ..() icon_state = "deck_[deckstyle]_full" for(var/i in 2 to 10) @@ -459,7 +459,7 @@ obj/item/toy/cards/deck/New() cards += "Ace of Clubs" cards += "Ace of Diamonds" -obj/item/toy/cards/deck/attack_hand(mob/user as mob) +/obj/item/toy/cards/deck/attack_hand(mob/user as mob) var/choice = null if(cards.len == 0) icon_state = "deck_[deckstyle]_empty" @@ -477,14 +477,14 @@ obj/item/toy/cards/deck/attack_hand(mob/user as mob) visible_message("[user] draws a card from the deck.", "You draw a card from the deck.") update_icon() -obj/item/toy/cards/deck/attack_self(mob/user as mob) +/obj/item/toy/cards/deck/attack_self(mob/user as mob) if(cooldown < world.time - 50) cards = shuffle(cards) playsound(user, 'sound/items/cardshuffle.ogg', 50, 1) user.visible_message("[user] shuffles the deck.", "You shuffle the deck.") cooldown = world.time -obj/item/toy/cards/deck/attackby(obj/item/toy/cards/singlecard/C, mob/living/user, params) +/obj/item/toy/cards/deck/attackby(obj/item/toy/cards/singlecard/C, mob/living/user, params) ..() if(istype(C)) if(C.parentdeck == src) @@ -499,7 +499,7 @@ obj/item/toy/cards/deck/attackby(obj/item/toy/cards/singlecard/C, mob/living/use update_icon() -obj/item/toy/cards/deck/attackby(obj/item/toy/cards/cardhand/C, mob/living/user, params) +/obj/item/toy/cards/deck/attackby(obj/item/toy/cards/cardhand/C, mob/living/user, params) ..() if(istype(C)) if(C.parentdeck == src) @@ -513,7 +513,7 @@ obj/item/toy/cards/deck/attackby(obj/item/toy/cards/cardhand/C, mob/living/user, to_chat(user, "You can't mix cards from other decks.") update_icon() -obj/item/toy/cards/deck/MouseDrop(atom/over_object) +/obj/item/toy/cards/deck/MouseDrop(atom/over_object) var/mob/M = usr if(usr.stat || !ishuman(usr) || !usr.canmove || usr.restrained()) return @@ -537,7 +537,7 @@ obj/item/toy/cards/deck/MouseDrop(atom/over_object) else to_chat(usr, "You can't reach it from here.") -obj/item/toy/cards/deck/update_icon() +/obj/item/toy/cards/deck/update_icon() switch(cards.len) if(0) icon_state = "deck_[deckstyle]_empty" @@ -548,7 +548,7 @@ obj/item/toy/cards/deck/update_icon() else icon_state = "deck_[deckstyle]_full" -obj/item/toy/cards/cardhand +/obj/item/toy/cards/cardhand name = "hand of cards" desc = "A number of cards not in a deck, customarily held in ones hand." icon = 'icons/obj/toy.dmi' @@ -558,11 +558,11 @@ obj/item/toy/cards/cardhand var/choice = null -obj/item/toy/cards/cardhand/attack_self(mob/user as mob) +/obj/item/toy/cards/cardhand/attack_self(mob/user as mob) user.set_machine(src) interact(user) -obj/item/toy/cards/cardhand/interact(mob/user) +/obj/item/toy/cards/cardhand/interact(mob/user) var/dat = "You have:
" for(var/t in currenthand) dat += "A [t].
" @@ -573,7 +573,7 @@ obj/item/toy/cards/cardhand/interact(mob/user) popup.open() -obj/item/toy/cards/cardhand/Topic(href, href_list) +/obj/item/toy/cards/cardhand/Topic(href, href_list) if(..()) return if(usr.stat || !ishuman(usr) || !usr.canmove) @@ -607,7 +607,7 @@ obj/item/toy/cards/cardhand/Topic(href, href_list) qdel(src) return -obj/item/toy/cards/cardhand/attackby(obj/item/toy/cards/singlecard/C, mob/living/user, params) +/obj/item/toy/cards/cardhand/attackby(obj/item/toy/cards/singlecard/C, mob/living/user, params) if(istype(C)) if(C.parentdeck == parentdeck) currenthand += C.cardname @@ -619,7 +619,7 @@ obj/item/toy/cards/cardhand/attackby(obj/item/toy/cards/singlecard/C, mob/living else to_chat(user, "You can't mix cards from other decks.") -obj/item/toy/cards/cardhand/apply_card_vars(obj/item/toy/cards/newobj,obj/item/toy/cards/sourceobj) +/obj/item/toy/cards/cardhand/apply_card_vars(obj/item/toy/cards/newobj,obj/item/toy/cards/sourceobj) ..() newobj.deckstyle = sourceobj.deckstyle newobj.icon_state = "[deckstyle]_hand2" // Another dumb hack, without this the hand is invisible (or has the default deckstyle) until another card is added. @@ -632,7 +632,7 @@ obj/item/toy/cards/cardhand/apply_card_vars(obj/item/toy/cards/newobj,obj/item/t newobj.resistance_flags = sourceobj.resistance_flags -obj/item/toy/cards/singlecard +/obj/item/toy/cards/singlecard name = "card" desc = "a card" icon = 'icons/obj/toy.dmi' @@ -643,7 +643,7 @@ obj/item/toy/cards/singlecard pixel_x = -5 -obj/item/toy/cards/singlecard/examine(mob/user) +/obj/item/toy/cards/singlecard/examine(mob/user) . = ..() if(get_dist(user, src) <= 0) if(ishuman(user)) @@ -654,7 +654,7 @@ obj/item/toy/cards/singlecard/examine(mob/user) . += "You need to have the card in your hand to check it." -obj/item/toy/cards/singlecard/verb/Flip() +/obj/item/toy/cards/singlecard/verb/Flip() set name = "Flip Card" set category = "Object" set src in range(1) @@ -675,7 +675,7 @@ obj/item/toy/cards/singlecard/verb/Flip() name = "card" pixel_x = -5 -obj/item/toy/cards/singlecard/attackby(obj/item/I, mob/living/user, params) +/obj/item/toy/cards/singlecard/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/toy/cards/singlecard/)) var/obj/item/toy/cards/singlecard/C = I if(C.parentdeck == parentdeck) @@ -705,7 +705,7 @@ obj/item/toy/cards/singlecard/attackby(obj/item/I, mob/living/user, params) else to_chat(user, "You can't mix cards from other decks.") -obj/item/toy/cards/cardhand/update_icon() +/obj/item/toy/cards/cardhand/update_icon() switch(currenthand.len) if(0 to 1) return @@ -719,12 +719,12 @@ obj/item/toy/cards/cardhand/update_icon() icon_state = "[deckstyle]_hand5" -obj/item/toy/cards/singlecard/attack_self(mob/user) +/obj/item/toy/cards/singlecard/attack_self(mob/user) if(usr.stat || !ishuman(usr) || !usr.canmove || usr.restrained()) return Flip() -obj/item/toy/cards/singlecard/apply_card_vars(obj/item/toy/cards/singlecard/newobj,obj/item/toy/cards/sourceobj) +/obj/item/toy/cards/singlecard/apply_card_vars(obj/item/toy/cards/singlecard/newobj,obj/item/toy/cards/sourceobj) ..() newobj.deckstyle = sourceobj.deckstyle newobj.icon_state = "singlecard_down_[deckstyle]" // Without this the card is invisible until flipped. It's an ugly hack, but it works. @@ -746,7 +746,7 @@ obj/item/toy/cards/singlecard/apply_card_vars(obj/item/toy/cards/singlecard/newo || Syndicate playing cards, for pretending you're Gambit and playing poker for the nuke disk. || */ -obj/item/toy/cards/deck/syndicate +/obj/item/toy/cards/deck/syndicate name = "suspicious looking deck of cards" desc = "A deck of space-grade playing cards. They seem unusually rigid." deckstyle = "syndicate" @@ -761,10 +761,10 @@ obj/item/toy/cards/deck/syndicate /* || Custom card decks || */ -obj/item/toy/cards/deck/black +/obj/item/toy/cards/deck/black deckstyle = "black" -obj/item/toy/cards/deck/syndicate/black +/obj/item/toy/cards/deck/syndicate/black deckstyle = "black" /obj/item/toy/nuke diff --git a/code/game/objects/items/weapons/fireworks.dm b/code/game/objects/items/weapons/fireworks.dm index a2a0d6df552..906c4f3fef7 100644 --- a/code/game/objects/items/weapons/fireworks.dm +++ b/code/game/objects/items/weapons/fireworks.dm @@ -1,10 +1,11 @@ -obj/item/firework +/obj/item/firework name = "fireworks" icon = 'icons/obj/fireworks.dmi' icon_state = "rocket_0" var/litzor = 0 var/datum/effect_system/sparkle_spread/S -obj/item/firework/attackby(obj/item/W,mob/user, params) + +/obj/item/firework/attackby(obj/item/W,mob/user, params) if(litzor) return if(is_hot(W)) @@ -20,13 +21,13 @@ obj/item/firework/attackby(obj/item/W,mob/user, params) S.start() qdel(src) -obj/item/sparkler +/obj/item/sparkler name = "sparkler" icon = 'icons/obj/fireworks.dmi' icon_state = "sparkler_0" var/litzor = 0 -obj/item/sparkler/attackby(obj/item/W,mob/user, params) +/obj/item/sparkler/attackby(obj/item/W,mob/user, params) if(litzor) return if(is_hot(W)) @@ -39,8 +40,12 @@ obj/item/sparkler/attackby(obj/item/W,mob/user, params) do_sparks(1, 0, loc) sleep(10) qdel(src) + +// TODO: Refactor this into a proper locker or something +// Or just axe the system. This code is 7 years old /obj/crate/fireworks name = "Fireworks!" + /obj/crate/fireworks/New() new /obj/item/sparkler(src) new /obj/item/sparkler(src) diff --git a/code/game/objects/items/weapons/grenades/spawnergrenade.dm b/code/game/objects/items/weapons/grenades/spawnergrenade.dm index b4df7b0d16b..efb93a520a5 100644 --- a/code/game/objects/items/weapons/grenades/spawnergrenade.dm +++ b/code/game/objects/items/weapons/grenades/spawnergrenade.dm @@ -9,27 +9,27 @@ var/deliveryamt = 1 // amount of type to deliver spawner_type = /mob/living/simple_animal/hostile/viscerator - prime() // Prime now just handles the two loops that query for people in lockers and people who can see it. +/obj/item/grenade/spawnergrenade/prime() // Prime now just handles the two loops that query for people in lockers and people who can see it. - if(spawner_type && deliveryamt) - // Make a quick flash - var/turf/T = get_turf(src) - playsound(T, 'sound/effects/phasein.ogg', 100, 1) - for(var/mob/living/carbon/C in viewers(T, null)) - C.flash_eyes() + if(spawner_type && deliveryamt) + // Make a quick flash + var/turf/T = get_turf(src) + playsound(T, 'sound/effects/phasein.ogg', 100, 1) + for(var/mob/living/carbon/C in viewers(T, null)) + C.flash_eyes() - for(var/i=1, i<=deliveryamt, i++) - var/atom/movable/x = new spawner_type - x.admin_spawned = admin_spawned - x.loc = T - if(prob(50)) - for(var/j = 1, j <= rand(1, 3), j++) - step(x, pick(NORTH,SOUTH,EAST,WEST)) + for(var/i=1, i<=deliveryamt, i++) + var/atom/movable/x = new spawner_type + x.admin_spawned = admin_spawned + x.loc = T + if(prob(50)) + for(var/j = 1, j <= rand(1, 3), j++) + step(x, pick(NORTH,SOUTH,EAST,WEST)) - // Spawn some hostile syndicate critters + // Spawn some hostile syndicate critters - qdel(src) - return + qdel(src) + return /obj/item/grenade/spawnergrenade/manhacks name = "manhack delivery grenade" diff --git a/code/game/objects/items/weapons/implants/implantchair.dm b/code/game/objects/items/weapons/implants/implantchair.dm index d74ab31a6c3..00a72f3401b 100644 --- a/code/game/objects/items/weapons/implants/implantchair.dm +++ b/code/game/objects/items/weapons/implants/implantchair.dm @@ -17,13 +17,6 @@ var/mob/living/carbon/occupant = null var/injecting = 0 -/obj/machinery/implantchair/proc - go_out() - put_mob(mob/living/carbon/M) - implant(var/mob/M) - add_implants() - - /obj/machinery/implantchair/New() ..() add_implants() @@ -87,7 +80,7 @@ return -/obj/machinery/implantchair/go_out(mob/M) +/obj/machinery/implantchair/proc/go_out(mob/M) if(!( src.occupant )) return if(M == occupant) // so that the guy inside can't eject himself -Agouri @@ -101,7 +94,7 @@ return -/obj/machinery/implantchair/put_mob(mob/living/carbon/M) +/obj/machinery/implantchair/proc/put_mob(mob/living/carbon/M) if(!iscarbon(M)) to_chat(usr, "The [src.name] cannot hold this!") return @@ -116,7 +109,7 @@ return 1 -/obj/machinery/implantchair/implant(mob/M) +/obj/machinery/implantchair/proc/implant(mob/M) if(!istype(M, /mob/living/carbon)) return if(!implant_list.len) return @@ -131,7 +124,7 @@ return -/obj/machinery/implantchair/add_implants() +/obj/machinery/implantchair/proc/add_implants() for(var/i=0, i= 2) - new /obj/item/stack/sheet/metal(src, rand(common_min, common_max)) + //Metal (common ore) + if(pickednum >= 2) + new /obj/item/stack/sheet/metal(src, rand(common_min, common_max)) - //Glass (common ore) - if(pickednum >= 5) - new /obj/item/stack/sheet/glass(src, rand(common_min, common_max)) + //Glass (common ore) + if(pickednum >= 5) + new /obj/item/stack/sheet/glass(src, rand(common_min, common_max)) - //Plasteel (common ore) Because it has a million more uses then plasma - if(pickednum >= 10) - new /obj/item/stack/sheet/plasteel(src, rand(common_min, common_max)) + //Plasteel (common ore) Because it has a million more uses then plasma + if(pickednum >= 10) + new /obj/item/stack/sheet/plasteel(src, rand(common_min, common_max)) - //Plasma (rare ore) - if(pickednum >= 15) - new /obj/item/stack/sheet/mineral/plasma(src, rand(rare_min, rare_max)) + //Plasma (rare ore) + if(pickednum >= 15) + new /obj/item/stack/sheet/mineral/plasma(src, rand(rare_min, rare_max)) - //Silver (rare ore) - if(pickednum >= 20) - new /obj/item/stack/sheet/mineral/silver(src, rand(rare_min, rare_max)) + //Silver (rare ore) + if(pickednum >= 20) + new /obj/item/stack/sheet/mineral/silver(src, rand(rare_min, rare_max)) - //Gold (rare ore) - if(pickednum >= 30) - new /obj/item/stack/sheet/mineral/gold(src, rand(rare_min, rare_max)) + //Gold (rare ore) + if(pickednum >= 30) + new /obj/item/stack/sheet/mineral/gold(src, rand(rare_min, rare_max)) - //Uranium (rare ore) - if(pickednum >= 40) - new /obj/item/stack/sheet/mineral/uranium(src, rand(rare_min, rare_max)) + //Uranium (rare ore) + if(pickednum >= 40) + new /obj/item/stack/sheet/mineral/uranium(src, rand(rare_min, rare_max)) - //Titanium (rare ore) - if(pickednum >= 40) - new /obj/item/stack/sheet/mineral/titanium(src, rand(rare_min, rare_max)) + //Titanium (rare ore) + if(pickednum >= 40) + new /obj/item/stack/sheet/mineral/titanium(src, rand(rare_min, rare_max)) - //Plastitanium (rare ore) - if(pickednum >= 40) - new /obj/item/stack/sheet/mineral/plastitanium(src, rand(rare_min, rare_max)) + //Plastitanium (rare ore) + if(pickednum >= 40) + new /obj/item/stack/sheet/mineral/plastitanium(src, rand(rare_min, rare_max)) - //Diamond (rare HONK) - if(pickednum >= 45) - new /obj/item/stack/sheet/mineral/diamond(src, rand(rare_min, rare_max)) + //Diamond (rare HONK) + if(pickednum >= 45) + new /obj/item/stack/sheet/mineral/diamond(src, rand(rare_min, rare_max)) - //Jetpack (You hit the jackpot!) - if(pickednum == 50) - new /obj/item/tank/jetpack/carbondioxide(src) + //Jetpack (You hit the jackpot!) + if(pickednum == 50) + new /obj/item/tank/jetpack/carbondioxide(src) /obj/structure/closet/syndicate/resources/everything desc = "It's an emergency storage closet for repairs." - New() - ..() - var/list/resources = list( - /obj/item/stack/sheet/metal, - /obj/item/stack/sheet/glass, - /obj/item/stack/sheet/mineral/gold, - /obj/item/stack/sheet/mineral/silver, - /obj/item/stack/sheet/mineral/plasma, - /obj/item/stack/sheet/mineral/uranium, - /obj/item/stack/sheet/mineral/diamond, - /obj/item/stack/sheet/mineral/bananium, - /obj/item/stack/sheet/mineral/titanium, - /obj/item/stack/sheet/mineral/plastitanium, - /obj/item/stack/sheet/plasteel, - /obj/item/stack/rods - ) +/obj/structure/closet/syndicate/resources/everything/New() + ..() + var/list/resources = list( + /obj/item/stack/sheet/metal, + /obj/item/stack/sheet/glass, + /obj/item/stack/sheet/mineral/gold, + /obj/item/stack/sheet/mineral/silver, + /obj/item/stack/sheet/mineral/plasma, + /obj/item/stack/sheet/mineral/uranium, + /obj/item/stack/sheet/mineral/diamond, + /obj/item/stack/sheet/mineral/bananium, + /obj/item/stack/sheet/mineral/titanium, + /obj/item/stack/sheet/mineral/plastitanium, + /obj/item/stack/sheet/plasteel, + /obj/item/stack/rods + ) - for(var/i in 1 to 2) - for(var/res in resources) - var/obj/item/stack/R = new res(src) - R.amount = R.max_amount + for(var/i in 1 to 2) + for(var/res in resources) + var/obj/item/stack/R = new res(src) + R.amount = R.max_amount diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index b4feccdc9e2..61db52bf8a0 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -339,24 +339,23 @@ var/target_temp = T0C - 40 var/cooling_power = 40 - return_air() - var/datum/gas_mixture/gas = (..()) - if(!gas) return null - var/datum/gas_mixture/newgas = new/datum/gas_mixture() - newgas.oxygen = gas.oxygen - newgas.carbon_dioxide = gas.carbon_dioxide - newgas.nitrogen = gas.nitrogen - newgas.toxins = gas.toxins - newgas.volume = gas.volume - newgas.temperature = gas.temperature - if(newgas.temperature <= target_temp) return - - if((newgas.temperature - cooling_power) > target_temp) - newgas.temperature -= cooling_power - else - newgas.temperature = target_temp - return newgas +/obj/structure/closet/crate/freezer/return_air() + var/datum/gas_mixture/gas = (..()) + if(!gas) return null + var/datum/gas_mixture/newgas = new/datum/gas_mixture() + newgas.oxygen = gas.oxygen + newgas.carbon_dioxide = gas.carbon_dioxide + newgas.nitrogen = gas.nitrogen + newgas.toxins = gas.toxins + newgas.volume = gas.volume + newgas.temperature = gas.temperature + if(newgas.temperature <= target_temp) return + if((newgas.temperature - cooling_power) > target_temp) + newgas.temperature -= cooling_power + else + newgas.temperature = target_temp + return newgas /obj/structure/closet/crate/can desc = "A large can, looks like a bin to me." @@ -497,22 +496,23 @@ /obj/structure/closet/crate/hydroponics/prespawned //This exists so the prespawned hydro crates spawn with their contents. - New() - ..() - new /obj/item/reagent_containers/glass/bucket(src) - new /obj/item/reagent_containers/glass/bucket(src) - new /obj/item/screwdriver(src) - new /obj/item/screwdriver(src) - new /obj/item/wrench(src) - new /obj/item/wrench(src) - new /obj/item/wirecutters(src) - new /obj/item/wirecutters(src) - new /obj/item/shovel/spade(src) - new /obj/item/shovel/spade(src) - new /obj/item/storage/box/beakers(src) - new /obj/item/storage/box/beakers(src) - new /obj/item/hand_labeler(src) - new /obj/item/hand_labeler(src) +// Do I need the definition above? Who knows! +/obj/structure/closet/crate/hydroponics/prespawned/New() + ..() + new /obj/item/reagent_containers/glass/bucket(src) + new /obj/item/reagent_containers/glass/bucket(src) + new /obj/item/screwdriver(src) + new /obj/item/screwdriver(src) + new /obj/item/wrench(src) + new /obj/item/wrench(src) + new /obj/item/wirecutters(src) + new /obj/item/wirecutters(src) + new /obj/item/shovel/spade(src) + new /obj/item/shovel/spade(src) + new /obj/item/storage/box/beakers(src) + new /obj/item/storage/box/beakers(src) + new /obj/item/hand_labeler(src) + new /obj/item/hand_labeler(src) /obj/structure/closet/crate/sci name = "science crate" diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index 36a20aa0239..0ad8a73c9ba 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -144,7 +144,7 @@ to_chat(user, "You [open ? "close":"open"] [src].") toggle_lock(user) -obj/structure/displaycase/welder_act(mob/user, obj/item/I) +/obj/structure/displaycase/welder_act(mob/user, obj/item/I) . = TRUE if(default_welder_repair(user, I)) broken = FALSE diff --git a/code/game/objects/structures/dresser.dm b/code/game/objects/structures/dresser.dm index 0c0a7f5e4dd..73f8bbfff41 100644 --- a/code/game/objects/structures/dresser.dm +++ b/code/game/objects/structures/dresser.dm @@ -67,7 +67,7 @@ . = TRUE default_unfasten_wrench(user, I, time = 20) -obj/structure/dresser/deconstruct(disassembled = FALSE) +/obj/structure/dresser/deconstruct(disassembled = FALSE) var/mat_drop = 15 if(disassembled) mat_drop = 30 diff --git a/code/game/objects/structures/misc.dm b/code/game/objects/structures/misc.dm index 44cbf6c52c9..5118a7fe0da 100644 --- a/code/game/objects/structures/misc.dm +++ b/code/game/objects/structures/misc.dm @@ -11,8 +11,8 @@ anchored = 1 density = 1 - attack_hand(mob/user as mob) - to_chat(user, "Civilians: NT is recruiting! Please head SOUTH to the NT Recruitment office to join the station's crew!") +/obj/structure/signpost/attack_hand(mob/user as mob) + to_chat(user, "Civilians: NT is recruiting! Please head SOUTH to the NT Recruitment office to join the station's crew!") /obj/structure/ninjatele @@ -23,31 +23,28 @@ anchored = 1 density = 0 - attack_hand(mob/user as mob) - - - if(user.mind.special_role=="Ninja") - switch(alert("Phase Jaunt relay primed, target locked as [station_name()], initiate VOID-shift translocation? (Warning! Internals required!)",,"Yes","No")) - - if("Yes") - if(user.z != src.z) return - - user.loc.loc.Exited(user) - user.loc = pick(GLOB.carplist) // In the future, possibly make specific NinjaTele landmarks, and give him an option to teleport to North/South/East/West of SS13 instead of just hijacking a carpspawn. - - - playsound(user.loc, 'sound/effects/phasein.ogg', 25, 1) - playsound(user.loc, 'sound/effects/sparks2.ogg', 50, 1) - new /obj/effect/temp_visual/dir_setting/ninja/phase(get_turf(user), user.dir) - to_chat(user, "VOID-Shift translocation successful") - - if("No") - - to_chat(user, "Process aborted!") +/obj/structure/ninjatele/attack_hand(mob/user as mob) + if(user.mind.special_role=="Ninja") + switch(alert("Phase Jaunt relay primed, target locked as [station_name()], initiate VOID-shift translocation? (Warning! Internals required!)",,"Yes","No")) + if("Yes") + if(user.z != src.z) return - else - to_chat(user, "FĆAL �Rr�R: ŧer nt recgnized, c-cntr-r䣧-ç äcked.") + + user.loc.loc.Exited(user) + user.loc = pick(GLOB.carplist) // In the future, possibly make specific NinjaTele landmarks, and give him an option to teleport to North/South/East/West of SS13 instead of just hijacking a carpspawn. + + playsound(user.loc, 'sound/effects/phasein.ogg', 25, 1) + playsound(user.loc, 'sound/effects/sparks2.ogg', 50, 1) + new /obj/effect/temp_visual/dir_setting/ninja/phase(get_turf(user), user.dir) + to_chat(user, "VOID-Shift translocation successful") + + if("No") + to_chat(user, "Process aborted!") + return + + else + to_chat(user, "FĆAL �Rr�R: ŧer nt recgnized, c-cntr-r䣧-ç äcked.") /obj/structure/respawner name = "\improper Long-Distance Cloning Machine" diff --git a/code/game/objects/structures/transit_tubes/transit_tube.dm b/code/game/objects/structures/transit_tubes/transit_tube.dm index c7926870ccf..650df02c59b 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube.dm @@ -26,7 +26,7 @@ return !density // When destroyed by explosions, properly handle contents. -obj/structure/transit_tube/ex_act(severity) +/obj/structure/transit_tube/ex_act(severity) switch(severity) if(1.0) for(var/atom/movable/AM in contents) diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index 3a1546bdd2b..0a059198d2a 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -31,14 +31,14 @@ . = ..() . += "Alt-click to rotate it clockwise." -obj/structure/windoor_assembly/New(loc, set_dir) +/obj/structure/windoor_assembly/New(loc, set_dir) ..() if(set_dir) dir = set_dir ini_dir = dir air_update_turf(1) -obj/structure/windoor_assembly/Destroy() +/obj/structure/windoor_assembly/Destroy() density = FALSE QDEL_NULL(electronics) air_update_turf(1) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 9faab45cf97..cfe8a20cce7 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -666,7 +666,7 @@ GLOBAL_LIST_INIT(wcCommon, pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e", icon_state = "tinted_window" opacity = 1 -obj/structure/window/full/reinforced/ice +/obj/structure/window/full/reinforced/ice icon = 'icons/obj/smooth_structures/rice_window.dmi' icon_state = "ice_window" max_integrity = 150 diff --git a/code/game/shuttle_engines.dm b/code/game/shuttle_engines.dm index 3c1ba0b8fbc..415df5d9dde 100644 --- a/code/game/shuttle_engines.dm +++ b/code/game/shuttle_engines.dm @@ -19,11 +19,13 @@ opacity = 0 anchored = 1 - CanPass(atom/movable/mover, turf/target, height) - if(!height) return 0 - else return ..() +/obj/structure/shuttle/window/CanPass(atom/movable/mover, turf/target, height) + if(!height) + return 0 + else + return ..() - CanAtmosPass(turf/T) +/obj/structure/shuttle/window/CanAtmosPass(turf/T) return !density /obj/structure/shuttle/engine diff --git a/code/game/turfs/space/transit.dm b/code/game/turfs/space/transit.dm index dda49fecdbd..b8110cf2b54 100644 --- a/code/game/turfs/space/transit.dm +++ b/code/game/turfs/space/transit.dm @@ -11,72 +11,98 @@ pushdirection = SOUTH // south because the space tile is scrolling south //IF ANYONE KNOWS A MORE EFFICIENT WAY OF MANAGING THESE SPRITES, BE MY GUEST. - shuttlespace_ns1 - icon_state = "speedspace_ns_1" - shuttlespace_ns2 - icon_state = "speedspace_ns_2" - shuttlespace_ns3 - icon_state = "speedspace_ns_3" - shuttlespace_ns4 - icon_state = "speedspace_ns_4" - shuttlespace_ns5 - icon_state = "speedspace_ns_5" - shuttlespace_ns6 - icon_state = "speedspace_ns_6" - shuttlespace_ns7 - icon_state = "speedspace_ns_7" - shuttlespace_ns8 - icon_state = "speedspace_ns_8" - shuttlespace_ns9 - icon_state = "speedspace_ns_9" - shuttlespace_ns10 - icon_state = "speedspace_ns_10" - shuttlespace_ns11 - icon_state = "speedspace_ns_11" - shuttlespace_ns12 - icon_state = "speedspace_ns_12" - shuttlespace_ns13 - icon_state = "speedspace_ns_13" - shuttlespace_ns14 - icon_state = "speedspace_ns_14" - shuttlespace_ns15 - icon_state = "speedspace_ns_15" +/turf/space/transit/north/shuttlespace_ns1 + icon_state = "speedspace_ns_1" + +/turf/space/transit/north/shuttlespace_ns2 + icon_state = "speedspace_ns_2" + +/turf/space/transit/north/shuttlespace_ns3 + icon_state = "speedspace_ns_3" + +/turf/space/transit/north/shuttlespace_ns4 + icon_state = "speedspace_ns_4" + +/turf/space/transit/north/shuttlespace_ns5 + icon_state = "speedspace_ns_5" + +/turf/space/transit/north/shuttlespace_ns6 + icon_state = "speedspace_ns_6" + +/turf/space/transit/north/shuttlespace_ns7 + icon_state = "speedspace_ns_7" + +/turf/space/transit/north/shuttlespace_ns8 + icon_state = "speedspace_ns_8" + +/turf/space/transit/north/shuttlespace_ns9 + icon_state = "speedspace_ns_9" + +/turf/space/transit/north/shuttlespace_ns10 + icon_state = "speedspace_ns_10" + +/turf/space/transit/north/shuttlespace_ns11 + icon_state = "speedspace_ns_11" + +/turf/space/transit/north/shuttlespace_ns12 + icon_state = "speedspace_ns_12" + +/turf/space/transit/north/shuttlespace_ns13 + icon_state = "speedspace_ns_13" + +/turf/space/transit/north/shuttlespace_ns14 + icon_state = "speedspace_ns_14" + +/turf/space/transit/north/shuttlespace_ns15 + icon_state = "speedspace_ns_15" /turf/space/transit/east // moving to the east - pushdirection = WEST - shuttlespace_ew1 - icon_state = "speedspace_ew_1" - shuttlespace_ew2 - icon_state = "speedspace_ew_2" - shuttlespace_ew3 - icon_state = "speedspace_ew_3" - shuttlespace_ew4 - icon_state = "speedspace_ew_4" - shuttlespace_ew5 - icon_state = "speedspace_ew_5" - shuttlespace_ew6 - icon_state = "speedspace_ew_6" - shuttlespace_ew7 - icon_state = "speedspace_ew_7" - shuttlespace_ew8 - icon_state = "speedspace_ew_8" - shuttlespace_ew9 - icon_state = "speedspace_ew_9" - shuttlespace_ew10 - icon_state = "speedspace_ew_10" - shuttlespace_ew11 - icon_state = "speedspace_ew_11" - shuttlespace_ew12 - icon_state = "speedspace_ew_12" - shuttlespace_ew13 - icon_state = "speedspace_ew_13" - shuttlespace_ew14 - icon_state = "speedspace_ew_14" - shuttlespace_ew15 - icon_state = "speedspace_ew_15" +/turf/space/transit/east/shuttlespace_ew1 + icon_state = "speedspace_ew_1" +/turf/space/transit/east/shuttlespace_ew2 + icon_state = "speedspace_ew_2" + +/turf/space/transit/east/shuttlespace_ew3 + icon_state = "speedspace_ew_3" + +/turf/space/transit/east/shuttlespace_ew4 + icon_state = "speedspace_ew_4" + +/turf/space/transit/east/shuttlespace_ew5 + icon_state = "speedspace_ew_5" + +/turf/space/transit/east/shuttlespace_ew6 + icon_state = "speedspace_ew_6" + +/turf/space/transit/east/shuttlespace_ew7 + icon_state = "speedspace_ew_7" + +/turf/space/transit/east/shuttlespace_ew8 + icon_state = "speedspace_ew_8" + +/turf/space/transit/east/shuttlespace_ew9 + icon_state = "speedspace_ew_9" + +/turf/space/transit/east/shuttlespace_ew10 + icon_state = "speedspace_ew_10" + +/turf/space/transit/east/shuttlespace_ew11 + icon_state = "speedspace_ew_11" + +/turf/space/transit/east/shuttlespace_ew12 + icon_state = "speedspace_ew_12" + +/turf/space/transit/east/shuttlespace_ew13 + icon_state = "speedspace_ew_13" + +/turf/space/transit/east/shuttlespace_ew14 + icon_state = "speedspace_ew_14" + +/turf/space/transit/east/shuttlespace_ew15 + icon_state = "speedspace_ew_15" //-tg- stuff /turf/space/transit diff --git a/code/game/world.dm b/code/game/world.dm index c279fa24b54..fbdcf12f9fc 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -486,7 +486,7 @@ GLOBAL_VAR_INIT(failed_old_db_connections, 0) return . //This proc ensures that the connection to the feedback database (global variable dbcon) is established -proc/establish_db_connection() +/proc/establish_db_connection() if(GLOB.failed_db_connections > FAILED_DB_CONNECTION_CUTOFF) return 0 diff --git a/code/modules/admin/DB ban/functions.dm b/code/modules/admin/DB ban/functions.dm index 1f55fa11f70..fd998677d75 100644 --- a/code/modules/admin/DB ban/functions.dm +++ b/code/modules/admin/DB ban/functions.dm @@ -1,6 +1,6 @@ #define MAX_ADMIN_BANS_PER_ADMIN 1 -datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = -1, var/reason, var/job = "", var/rounds = 0, var/banckey = null, var/banip = null, var/bancid = null) +/datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = -1, var/reason, var/job = "", var/rounds = 0, var/banckey = null, var/banip = null, var/bancid = null) if(!check_rights(R_BAN)) return @@ -153,7 +153,7 @@ datum/admins/proc/DB_ban_record(var/bantype, var/mob/banned_mob, var/duration = else flag_account_for_forum_sync(ckey) -datum/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "") +/datum/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "") if(!check_rights(R_BAN)) return @@ -233,7 +233,7 @@ datum/admins/proc/DB_ban_unban(var/ckey, var/bantype, var/job = "") else flag_account_for_forum_sync(ckey) -datum/admins/proc/DB_ban_edit(var/banid = null, var/param = null) +/datum/admins/proc/DB_ban_edit(var/banid = null, var/param = null) if(!check_rights(R_BAN)) return @@ -297,7 +297,7 @@ datum/admins/proc/DB_ban_edit(var/banid = null, var/param = null) to_chat(usr, "Cancelled") return -datum/admins/proc/DB_ban_unban_by_id(var/id) +/datum/admins/proc/DB_ban_unban_by_id(var/id) if(!check_rights(R_BAN)) return diff --git a/code/modules/admin/IsBanned.dm b/code/modules/admin/IsBanned.dm index d9ceba62830..3f69c2199d0 100644 --- a/code/modules/admin/IsBanned.dm +++ b/code/modules/admin/IsBanned.dm @@ -1,5 +1,5 @@ //Blocks an attempt to connect before even creating our client datum thing. -world/IsBanned(key, address, computer_id, type, check_ipintel = TRUE) +/world/IsBanned(key, address, computer_id, type, check_ipintel = TRUE) if(!config.ban_legacy_system) if(address) diff --git a/code/modules/admin/verbs/SDQL2/SDQL_2_parser.dm b/code/modules/admin/verbs/SDQL2/SDQL_2_parser.dm index 56fcab49293..50c852af03b 100644 --- a/code/modules/admin/verbs/SDQL2/SDQL_2_parser.dm +++ b/code/modules/admin/verbs/SDQL2/SDQL_2_parser.dm @@ -89,403 +89,443 @@ /datum/SDQL_parser/proc/tokenl(i) return lowertext(token(i)) -/datum/SDQL_parser/proc - //query: select_query | delete_query | update_query - query(i, list/node) - query_type = tokenl(i) +/datum/SDQL_parser/proc/query(i, list/node) + query_type = tokenl(i) - switch(query_type) - if("select") - select_query(i, node) + switch(query_type) + if("select") + select_query(i, node) - if("delete") - delete_query(i, node) + if("delete") + delete_query(i, node) - if("update") - update_query(i, node) + if("update") + update_query(i, node) - if("call") - call_query(i, node) + if("call") + call_query(i, node) - if("explain") - node += "explain" - node["explain"] = list() - query(i + 1, node["explain"]) + if("explain") + node += "explain" + node["explain"] = list() + query(i + 1, node["explain"]) // select_query: 'SELECT' select_list [('FROM' | 'IN') from_list] ['WHERE' bool_expression] - select_query(i, list/node) - var/list/select = list() - i = select_list(i + 1, select) +/datum/SDQL_parser/proc/select_query(i, list/node) + var/list/select = list() + i = select_list(i + 1, select) - node += "select" - node["select"] = select + node += "select" + node["select"] = select - var/list/from = list() - if(tokenl(i) in list("from", "in")) - i = from_list(i + 1, from) - else - from += "world" + var/list/from = list() + if(tokenl(i) in list("from", "in")) + i = from_list(i + 1, from) + else + from += "world" - node += "from" - node["from"] = from + node += "from" + node["from"] = from - if(tokenl(i) == "where") - var/list/where = list() - i = bool_expression(i + 1, where) + if(tokenl(i) == "where") + var/list/where = list() + i = bool_expression(i + 1, where) - node += "where" - node["where"] = where + node += "where" + node["where"] = where - return i + return i //delete_query: 'DELETE' select_list [('FROM' | 'IN') from_list] ['WHERE' bool_expression] - delete_query(i, list/node) - var/list/select = list() - i = select_list(i + 1, select) +/datum/SDQL_parser/proc/delete_query(i, list/node) + var/list/select = list() + i = select_list(i + 1, select) - node += "delete" - node["delete"] = select + node += "delete" + node["delete"] = select - var/list/from = list() - if(tokenl(i) in list("from", "in")) - i = from_list(i + 1, from) - else - from += "world" + var/list/from = list() + if(tokenl(i) in list("from", "in")) + i = from_list(i + 1, from) + else + from += "world" - node += "from" - node["from"] = from + node += "from" + node["from"] = from - if(tokenl(i) == "where") - var/list/where = list() - i = bool_expression(i + 1, where) + if(tokenl(i) == "where") + var/list/where = list() + i = bool_expression(i + 1, where) - node += "where" - node["where"] = where + node += "where" + node["where"] = where - return i + return i //update_query: 'UPDATE' select_list [('FROM' | 'IN') from_list] 'SET' assignments ['WHERE' bool_expression] - update_query(i, list/node) - var/list/select = list() - i = select_list(i + 1, select) +/datum/SDQL_parser/proc/update_query(i, list/node) + var/list/select = list() + i = select_list(i + 1, select) - node += "update" - node["update"] = select + node += "update" + node["update"] = select - var/list/from = list() - if(tokenl(i) in list("from", "in")) - i = from_list(i + 1, from) - else - from += "world" + var/list/from = list() + if(tokenl(i) in list("from", "in")) + i = from_list(i + 1, from) + else + from += "world" - node += "from" - node["from"] = from + node += "from" + node["from"] = from - if(tokenl(i) != "set") - i = parse_error("UPDATE has misplaced SET") + if(tokenl(i) != "set") + i = parse_error("UPDATE has misplaced SET") - var/list/set_assignments = list() - i = assignments(i + 1, set_assignments) + var/list/set_assignments = list() + i = assignments(i + 1, set_assignments) - node += "set" - node["set"] = set_assignments + node += "set" + node["set"] = set_assignments - if(tokenl(i) == "where") - var/list/where = list() - i = bool_expression(i + 1, where) + if(tokenl(i) == "where") + var/list/where = list() + i = bool_expression(i + 1, where) - node += "where" - node["where"] = where + node += "where" + node["where"] = where - return i + return i //call_query: 'CALL' call_function ['ON' select_list [('FROM' | 'IN') from_list] ['WHERE' bool_expression]] - call_query(i, list/node) - var/list/func = list() - i = variable(i + 1, func) +/datum/SDQL_parser/proc/call_query(i, list/node) + var/list/func = list() + i = variable(i + 1, func) - node += "call" - node["call"] = func - - if(tokenl(i) != "on") - return i - - var/list/select = list() - i = select_list(i + 1, select) - - node += "on" - node["on"] = select - - var/list/from = list() - if(tokenl(i) in list("from", "in")) - i = from_list(i + 1, from) - else - from += "world" - - node += "from" - node["from"] = from - - if(tokenl(i) == "where") - var/list/where = list() - i = bool_expression(i + 1, where) - - node += "where" - node["where"] = where + node += "call" + node["call"] = func + if(tokenl(i) != "on") return i + var/list/select = list() + i = select_list(i + 1, select) + + node += "on" + node["on"] = select + + var/list/from = list() + if(tokenl(i) in list("from", "in")) + i = from_list(i + 1, from) + else + from += "world" + + node += "from" + node["from"] = from + + if(tokenl(i) == "where") + var/list/where = list() + i = bool_expression(i + 1, where) + + node += "where" + node["where"] = where + + return i + //select_list: select_item [',' select_list] - select_list(i, list/node) - i = select_item(i, node) +/datum/SDQL_parser/proc/select_list(i, list/node) + i = select_item(i, node) - if(token(i) == ",") - i = select_list(i + 1, node) + if(token(i) == ",") + i = select_list(i + 1, node) - return i + return i //from_list: from_item [',' from_list] - from_list(i, list/node) - i = from_item(i, node) +/datum/SDQL_parser/proc/from_list(i, list/node) + i = from_item(i, node) - if(token(i) == ",") - i = from_list(i + 1, node) + if(token(i) == ",") + i = from_list(i + 1, node) - return i + return i //assignments: assignment, [',' assignments] - assignments(i, list/node) - i = assignment(i, node) +/datum/SDQL_parser/proc/assignments(i, list/node) + i = assignment(i, node) - if(token(i) == ",") - i = assignments(i + 1, node) + if(token(i) == ",") + i = assignments(i + 1, node) - return i + return i //select_item: '*' | select_function | object_type - select_item(i, list/node) +/datum/SDQL_parser/proc/select_item(i, list/node) + if(token(i) == "*") + node += "*" + i++ - if(token(i) == "*") - node += "*" - i++ + else if(tokenl(i) in select_functions) + i = select_function(i, node) - else if(tokenl(i) in select_functions) - i = select_function(i, node) + else + i = object_type(i, node) - else - i = object_type(i, node) - - return i + return i //from_item: 'world' | object_type - from_item(i, list/node) +/datum/SDQL_parser/proc/from_item(i, list/node) - if(token(i) == "world") - node += "world" - i++ + if(token(i) == "world") + node += "world" + i++ - else - i = object_type(i, node) + else + i = object_type(i, node) - return i + return i //bool_expression: expression [bool_operator bool_expression] - bool_expression(i, list/node) +/datum/SDQL_parser/proc/bool_expression(i, list/node) + var/list/bool = list() + i = expression(i, bool) - var/list/bool = list() - i = expression(i, bool) + node[++node.len] = bool - node[++node.len] = bool + if(tokenl(i) in boolean_operators) + i = bool_operator(i, node) + i = bool_expression(i, node) - if(tokenl(i) in boolean_operators) - i = bool_operator(i, node) - i = bool_expression(i, node) - - return i + return i //assignment: '=' expression - assignment(var/i, var/list/node, var/list/assignment_list = list()) - assignment_list += token(i) +/datum/SDQL_parser/proc/assignment(var/i, var/list/node, var/list/assignment_list = list()) + assignment_list += token(i) - if(token(i + 1) == ".") - i = assignment(i + 2, node, assignment_list) + if(token(i + 1) == ".") + i = assignment(i + 2, node, assignment_list) - else if(token(i + 1) == "=") - var/exp_list = list() - node[assignment_list] = exp_list + else if(token(i + 1) == "=") + var/exp_list = list() + node[assignment_list] = exp_list - i = expression(i + 2, exp_list) + i = expression(i + 2, exp_list) - else - parse_error("Assignment expected, but no = found") + else + parse_error("Assignment expected, but no = found") - return i + return i //variable: | '.' variable - variable(i, list/node) - var/list/L = list(token(i)) - node[++node.len] = L +/datum/SDQL_parser/proc/variable(i, list/node) + var/list/L = list(token(i)) + node[++node.len] = L - if(token(i) == "\[") - L += token(i + 1) - i += 2 + if(token(i) == "\[") + L += token(i + 1) + i += 2 - if(token(i) != "\]") - parse_error("Missing \] at end of reference.") + if(token(i) != "\]") + parse_error("Missing \] at end of reference.") - if(token(i + 1) == ".") - L += "." - i = variable(i + 2, L) + if(token(i + 1) == ".") + L += "." + i = variable(i + 2, L) - else if(token(i + 1) == "(") // OH BOY PROC - var/list/arguments = list() - i = call_function(i, null, arguments) - L += ":" - L[++L.len] = arguments + else if(token(i + 1) == "(") // OH BOY PROC + var/list/arguments = list() + i = call_function(i, null, arguments) + L += ":" + L[++L.len] = arguments - else if(token(i + 1) == "\[") // list index - var/list/expression = list() - i = expression(i + 2, expression) - if(token(i) != "]") - parse_error("Missing ] at the end of list access.") + else if(token(i + 1) == "\[") // list index + var/list/expression = list() + i = expression(i + 2, expression) + if(token(i) != "]") + parse_error("Missing ] at the end of list access.") - L += "\[" - L[++L.len] = expression - i++ + L += "\[" + L[++L.len] = expression + i++ - else - i++ + else + i++ - return i + return i //object_type: | string - object_type(i, list/node) +/datum/SDQL_parser/proc/object_type(i, list/node) - if(copytext(token(i), 1, 2) == "/") - node += token(i) + if(copytext(token(i), 1, 2) == "/") + node += token(i) - else - i = string(i, node) + else + i = string(i, node) - return i + 1 + return i + 1 //comparitor: '=' | '==' | '!=' | '<>' | '<' | '<=' | '>' | '>=' - comparitor(i, list/node) +/datum/SDQL_parser/proc/comparitor(i, list/node) - if(token(i) in list("=", "==", "!=", "<>", "<", "<=", ">", ">=")) - node += token(i) + if(token(i) in list("=", "==", "!=", "<>", "<", "<=", ">", ">=")) + node += token(i) - else - parse_error("Unknown comparitor [token(i)]") + else + parse_error("Unknown comparitor [token(i)]") - return i + 1 + return i + 1 //bool_operator: 'AND' | '&&' | 'OR' | '||' - bool_operator(i, list/node) +/datum/SDQL_parser/proc/bool_operator(i, list/node) - if(tokenl(i) in list("and", "or", "&&", "||")) - node += token(i) + if(tokenl(i) in list("and", "or", "&&", "||")) + node += token(i) - else - parse_error("Unknown comparitor [token(i)]") + else + parse_error("Unknown comparitor [token(i)]") - return i + 1 + return i + 1 //string: ''' ''' | '"' '"' - string(i, list/node) +/datum/SDQL_parser/proc/string(i, list/node) - if(copytext(token(i), 1, 2) in list("'", "\"")) - node += token(i) + if(copytext(token(i), 1, 2) in list("'", "\"")) + node += token(i) - else - parse_error("Expected string but found '[token(i)]'") + else + parse_error("Expected string but found '[token(i)]'") - return i + 1 + return i + 1 //array: '{' expression, expression, ... '}' - array(var/i, var/list/node) - // Arrays get turned into this: list("{", list(exp_1a = exp_1b, ...), ...), "{" is to mark the next node as an array. - if(copytext(token(i), 1, 2) != "{") - parse_error("Expected an array but found '[token(i)]'") - return i + 1 - - node += token(i) // Add the "{" - var/list/expression_list = list() - - if(token(i + 1) != "}") - var/list/temp_expression_list = list() - - do - i = expression(i + 1, temp_expression_list) - - if(token(i) == ",") - expression_list[++expression_list.len] = temp_expression_list - temp_expression_list = list() - while(token(i) && token(i) != "}") - - expression_list[++expression_list.len] = temp_expression_list - else - i++ - - node[++node.len] = expression_list +/datum/SDQL_parser/proc/array(var/i, var/list/node) + // Arrays get turned into this: list("{", list(exp_1a = exp_1b, ...), ...), "{" is to mark the next node as an array. + if(copytext(token(i), 1, 2) != "{") + parse_error("Expected an array but found '[token(i)]'") return i + 1 + node += token(i) // Add the "{" + var/list/expression_list = list() + + if(token(i + 1) != "}") + var/list/temp_expression_list = list() + + do + i = expression(i + 1, temp_expression_list) + + if(token(i) == ",") + expression_list[++expression_list.len] = temp_expression_list + temp_expression_list = list() + while(token(i) && token(i) != "}") + + expression_list[++expression_list.len] = temp_expression_list + else + i++ + + node[++node.len] = expression_list + return i + 1 + //call_function: ['(' [arguments] ')'] - call_function(i, list/node, list/arguments) - var/list/cur_argument = list() - if(length(tokenl(i))) - var/procname = "" - if(tokenl(i) == "global" && token(i + 1) == ".") // Global proc. - i += 2 - procname = "global." - node += procname + token(i++) - if(token(i) != "(") - parse_error("Expected ( but found '[token(i)]'") - else if(token(i + 1) != ")") - do - i = expression(i + 1, cur_argument) - if(token(i) == ",") - arguments += list(cur_argument) - cur_argument = list() - continue - while(token(i) && token(i) != ")") - arguments += list(cur_argument) - else - i++ +/datum/SDQL_parser/proc/call_function(i, list/node, list/arguments) + var/list/cur_argument = list() + if(length(tokenl(i))) + var/procname = "" + if(tokenl(i) == "global" && token(i + 1) == ".") // Global proc. + i += 2 + procname = "global." + node += procname + token(i++) + if(token(i) != "(") + parse_error("Expected ( but found '[token(i)]'") + else if(token(i + 1) != ")") + do + i = expression(i + 1, cur_argument) + if(token(i) == ",") + arguments += list(cur_argument) + cur_argument = list() + continue + while(token(i) && token(i) != ")") + arguments += list(cur_argument) else - parse_error("Expected a function but found nothing") - return i + 1 + i++ + else + parse_error("Expected a function but found nothing") + return i + 1 //select_function: count_function - select_function(i, list/node) +/datum/SDQL_parser/proc/select_function(i, list/node) - parse_error("Sorry, function calls aren't available yet") + parse_error("Sorry, function calls aren't available yet") - return i + return i //expression: ( unary_expression | '(' expression ')' | value ) [binary_operator expression] - expression(i, list/node) +/datum/SDQL_parser/proc/expression(i, list/node) + + if(token(i) in unary_operators) + i = unary_expression(i, node) + + else if(token(i) == "(") + var/list/expr = list() + + i = expression(i + 1, expr) + + if(token(i) != ")") + parse_error("Missing ) at end of expression.") + + else + i++ + + node[++node.len] = expr + + else + i = value(i, node) + + if(token(i) in binary_operators) + i = binary_operator(i, node) + i = expression(i, node) + + else if(token(i) in comparitors) + i = binary_operator(i, node) + + var/list/rhs = list() + i = expression(i, rhs) + + node[++node.len] = rhs + + + return i + + +//unary_expression: unary_operator ( unary_expression | value | '(' expression ')' ) +/datum/SDQL_parser/proc/unary_expression(i, list/node) + + if(token(i) in unary_operators) + var/list/unary_exp = list() + + unary_exp += token(i) + i++ if(token(i) in unary_operators) - i = unary_expression(i, node) + i = unary_expression(i, unary_exp) else if(token(i) == "(") var/list/expr = list() @@ -498,99 +538,55 @@ else i++ - node[++node.len] = expr + unary_exp[++unary_exp.len] = expr else - i = value(i, node) + i = value(i, unary_exp) - if(token(i) in binary_operators) - i = binary_operator(i, node) - i = expression(i, node) - - else if(token(i) in comparitors) - i = binary_operator(i, node) - - var/list/rhs = list() - i = expression(i, rhs) - - node[++node.len] = rhs + node[++node.len] = unary_exp - return i + else + parse_error("Expected unary operator but found '[token(i)]'") - -//unary_expression: unary_operator ( unary_expression | value | '(' expression ')' ) - unary_expression(i, list/node) - - if(token(i) in unary_operators) - var/list/unary_exp = list() - - unary_exp += token(i) - i++ - - if(token(i) in unary_operators) - i = unary_expression(i, unary_exp) - - else if(token(i) == "(") - var/list/expr = list() - - i = expression(i + 1, expr) - - if(token(i) != ")") - parse_error("Missing ) at end of expression.") - - else - i++ - - unary_exp[++unary_exp.len] = expr - - else - i = value(i, unary_exp) - - node[++node.len] = unary_exp - - - else - parse_error("Expected unary operator but found '[token(i)]'") - - return i + return i //binary_operator: comparitor | '+' | '-' | '/' | '*' | '&' | '|' | '^' - binary_operator(i, list/node) +/datum/SDQL_parser/proc/binary_operator(i, list/node) - if(token(i) in (binary_operators + comparitors)) - node += token(i) + if(token(i) in (binary_operators + comparitors)) + node += token(i) - else - parse_error("Unknown binary operator [token(i)]") + else + parse_error("Unknown binary operator [token(i)]") - return i + 1 + return i + 1 //value: variable | string | number | 'null' - value(i, list/node) +/datum/SDQL_parser/proc/value(i, list/node) - if(token(i) == "null") - node += "null" - i++ + if(token(i) == "null") + node += "null" + i++ - else if(lowertext(copytext(token(i), 1, 3)) == "0x" && isnum(hex2num(copytext(token(i), 3)))) - node += hex2num(copytext(token(i), 3)) - i++ + else if(lowertext(copytext(token(i), 1, 3)) == "0x" && isnum(hex2num(copytext(token(i), 3)))) + node += hex2num(copytext(token(i), 3)) + i++ - else if(isnum(text2num(token(i)))) - node += text2num(token(i)) - i++ + else if(isnum(text2num(token(i)))) + node += text2num(token(i)) + i++ - else if(copytext(token(i), 1, 2) in list("'", "\"")) - i = string(i, node) + else if(copytext(token(i), 1, 2) in list("'", "\"")) + i = string(i, node) - else if(copytext(token(i), 1, 2) == "{") // Start a list. - i = array(i, node) + else if(copytext(token(i), 1, 2) == "{") // Start a list. + i = array(i, node) - else - i = variable(i, node) + else + i = variable(i, node) - return i + return i /*EXPLAIN SELECT * WHERE 42 = 6 * 9 OR val = - 5 == 7*/ diff --git a/code/modules/admin/verbs/mapping.dm b/code/modules/admin/verbs/mapping.dm index 5e05b8ecebd..3caac1d79d7 100644 --- a/code/modules/admin/verbs/mapping.dm +++ b/code/modules/admin/verbs/mapping.dm @@ -26,9 +26,9 @@ GLOBAL_VAR_INIT(intercom_range_display_status, 0) icon = 'icons/480x480.dmi' icon_state = "25percent" - New() - src.pixel_x = -224 - src.pixel_y = -224 +/obj/effect/debugging/camera_range/New() + src.pixel_x = -224 + src.pixel_y = -224 /obj/effect/debugging/mapfix_marker name = "map fix marker" diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm index ed19c852ded..0e769ed3e73 100644 --- a/code/modules/admin/verbs/one_click_antag.dm +++ b/code/modules/admin/verbs/one_click_antag.dm @@ -1,4 +1,4 @@ -client/proc/one_click_antag() +/client/proc/one_click_antag() set name = "Create Antagonist" set desc = "Auto-create an antagonist of your choice" set category = "Event" diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index ac2cce4de01..514fc2368e1 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -201,7 +201,7 @@ feedback_add_details("admin_verb","GOD") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! -proc/cmd_admin_mute(mob/M as mob, mute_type, automute = 0) +/proc/cmd_admin_mute(mob/M as mob, mute_type, automute = 0) if(automute) if(!config.automute_on) return diff --git a/code/modules/awaymissions/mission_code/stationCollision.dm b/code/modules/awaymissions/mission_code/stationCollision.dm index 1beba373724..07be3364552 100644 --- a/code/modules/awaymissions/mission_code/stationCollision.dm +++ b/code/modules/awaymissions/mission_code/stationCollision.dm @@ -60,7 +60,7 @@ * Guns - I'm making these specifically so that I dont spawn a pile of fully loaded weapons on the map. */ //Captain's retro laser - Fires practice laser shots instead. -obj/item/gun/energy/laser/retro/sc_retro +/obj/item/gun/energy/laser/retro/sc_retro desc = "An older model of the basic lasergun, no longer used by Nanotrasen's security or military forces." ammo_type = list(/obj/item/ammo_casing/energy/laser/practice) clumsy_check = 0 //No sense in having a harmless gun blow up in the clowns face diff --git a/code/modules/client/message.dm b/code/modules/client/message.dm index 5c612339621..1bb9d03dd88 100644 --- a/code/modules/client/message.dm +++ b/code/modules/client/message.dm @@ -1,6 +1,6 @@ GLOBAL_LIST_EMPTY(clientmessages) -proc/addclientmessage(var/ckey, var/message) +/proc/addclientmessage(var/ckey, var/message) ckey = ckey(ckey) if(!ckey || !message) return diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index 05bd3d6f48d..bafe3a9f0a9 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -193,7 +193,7 @@ toggle_sound = 'sound/items/zippoclose.ogg' dog_fashion = null -obj/item/clothing/head/helmet/redtaghelm +/obj/item/clothing/head/helmet/redtaghelm name = "red laser tag helmet" desc = "They have chosen their own end." icon_state = "redtaghelm" @@ -204,7 +204,7 @@ obj/item/clothing/head/helmet/redtaghelm flags_inv = HIDEEARS|HIDEEYES dog_fashion = null -obj/item/clothing/head/helmet/bluetaghelm +/obj/item/clothing/head/helmet/bluetaghelm name = "blue laser tag helmet" desc = "They'll need more men." icon_state = "bluetaghelm" @@ -215,7 +215,7 @@ obj/item/clothing/head/helmet/bluetaghelm flags_inv = HIDEEARS|HIDEEYES dog_fashion = null -obj/item/clothing/head/blob +/obj/item/clothing/head/blob name = "blob hat" desc = "A collectible hat handed out at the latest Blob Family Reunion." icon_state = "blobhat" diff --git a/code/modules/clothing/shoes/colour.dm b/code/modules/clothing/shoes/colour.dm index 5bf6b90c98e..ffcd28009f2 100644 --- a/code/modules/clothing/shoes/colour.dm +++ b/code/modules/clothing/shoes/colour.dm @@ -9,8 +9,8 @@ heat_protection = FEET max_heat_protection_temperature = SHOES_MAX_TEMP_PROTECT - redcoat - item_color = "redcoat" //Exists for washing machines. Is not different from black shoes in any way. +/obj/item/clothing/shoes/black/redcoat + item_color = "redcoat" //Exists for washing machines. Is not different from black shoes in any way. /obj/item/clothing/shoes/black/greytide flags = NODROP @@ -20,18 +20,23 @@ desc = "A pair of brown shoes." icon_state = "brown" - captain - item_color = "captain" //Exists for washing machines. Is not different from brown shoes in any way. - hop - item_color = "hop" //Exists for washing machines. Is not different from brown shoes in any way. - ce - item_color = "chief" //Exists for washing machines. Is not different from brown shoes in any way. - rd - item_color = "director" //Exists for washing machines. Is not different from brown shoes in any way. - cmo - item_color = "medical" //Exists for washing machines. Is not different from brown shoes in any way. - cmo - item_color = "cargo" //Exists for washing machines. Is not different from brown shoes in any way. +/obj/item/clothing/shoes/brown/captain + item_color = "captain" //Exists for washing machines. Is not different from brown shoes in any way. + +/obj/item/clothing/shoes/brown/hop + item_color = "hop" //Exists for washing machines. Is not different from brown shoes in any way. + +/obj/item/clothing/shoes/brown/ce + item_color = "chief" //Exists for washing machines. Is not different from brown shoes in any way. + +/obj/item/clothing/shoes/brown/rd + item_color = "director" //Exists for washing machines. Is not different from brown shoes in any way. + +/obj/item/clothing/shoes/brown/cmo + item_color = "medical" //Exists for washing machines. Is not different from brown shoes in any way. + +/obj/item/clothing/shoes/brown/qm + item_color = "cargo" //Exists for washing machines. Is not different from brown shoes in any way. /obj/item/clothing/shoes/blue name = "blue shoes" diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index 129b07af36e..a7ee48faec4 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -53,7 +53,7 @@ magboot_state = "syndiemag" origin_tech = "magnets=4;syndicate=2" -obj/item/clothing/shoes/magboots/syndie/advance //For the Syndicate Strike Team +/obj/item/clothing/shoes/magboots/syndie/advance //For the Syndicate Strike Team desc = "Reverse-engineered magboots that appear to be based on an advanced model, as they have a lighter magnetic pull. Property of Gorlex Marauders." name = "advanced blood-red magboots" slowdown_active = SHOES_SLOWDOWN diff --git a/code/modules/clothing/spacesuits/syndi.dm b/code/modules/clothing/spacesuits/syndi.dm index 8c65ed02553..890c223d735 100644 --- a/code/modules/clothing/spacesuits/syndi.dm +++ b/code/modules/clothing/spacesuits/syndi.dm @@ -83,7 +83,7 @@ icon_state = "syndicate-helm-black" item_state = "syndicate-helm-black" -obj/item/clothing/head/helmet/space/syndicate/black/strike +/obj/item/clothing/head/helmet/space/syndicate/black/strike name = "Syndicate Strike Team commando helmet" desc = "A heavily armored black helmet that is only given to high-ranking Syndicate operatives." armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) //Matches DS gear. @@ -95,7 +95,7 @@ obj/item/clothing/head/helmet/space/syndicate/black/strike icon_state = "syndicate-black" item_state = "syndicate-black" -obj/item/clothing/suit/space/syndicate/black/strike +/obj/item/clothing/suit/space/syndicate/black/strike name = "Syndicate Strike Team commando space suit" desc = "A heavily armored, black space suit that is only given to high-ranking Syndicate operatives." armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) //Matches DS gear. @@ -156,7 +156,7 @@ obj/item/clothing/suit/space/syndicate/black/strike icon_state = "syndicate-helm-black-red" item_state = "syndicate-helm-black-red" -obj/item/clothing/head/helmet/space/syndicate/black/red/strike +/obj/item/clothing/head/helmet/space/syndicate/black/red/strike name = "Syndicate Strike Team leader helmet" desc = "A heavily armored, black and red space helmet that is only given to elite Syndicate operatives, it looks particularly menacing." armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) //Matches DS gear. @@ -168,7 +168,7 @@ obj/item/clothing/head/helmet/space/syndicate/black/red/strike icon_state = "syndicate-black-red" item_state = "syndicate-black-red" -obj/item/clothing/suit/space/syndicate/black/red/strike +/obj/item/clothing/suit/space/syndicate/black/red/strike name = "Syndicate Strike Team leader space suit" desc = "A heavily armored, black and red space suit that is only given to elite Syndicate operatives, it looks particularly menacing." armor = list(melee = 80, bullet = 80, laser = 50, energy = 50, bomb = 100, bio = 100, rad = 100, fire = 100, acid = 100) //Matches DS gear. diff --git a/code/modules/detective_work/detective_work.dm b/code/modules/detective_work/detective_work.dm index 69ee566124e..4933ff29474 100644 --- a/code/modules/detective_work/detective_work.dm +++ b/code/modules/detective_work/detective_work.dm @@ -1,8 +1,8 @@ //CONTAINS: Suit fibers and Detective's Scanning Computer -atom/var/list/suit_fibers +/atom/var/list/suit_fibers -atom/proc/add_fibers(mob/living/carbon/human/M) +/atom/proc/add_fibers(mob/living/carbon/human/M) if(M.gloves && istype(M.gloves,/obj/item/clothing/)) var/obj/item/clothing/gloves/G = M.gloves if(G.transfer_blood > 1) //bloodied gloves transfer blood to touched objects diff --git a/code/modules/fish/fish_items.dm b/code/modules/fish/fish_items.dm index 4a7a678a09e..bb31226f42a 100644 --- a/code/modules/fish/fish_items.dm +++ b/code/modules/fish/fish_items.dm @@ -66,11 +66,11 @@ icon_state = "shrimp_raw" filling_color = "#FF1C1C" - New() - ..() - desc = pick("Anyway, like I was sayin', shrimp is the fruit of the sea.", "You can barbecue it, boil it, broil it, bake it, saute it.") - reagents.add_reagent("protein", 1) - src.bitesize = 1 +/obj/item/reagent_containers/food/snacks/shrimp/New() + ..() + desc = pick("Anyway, like I was sayin', shrimp is the fruit of the sea.", "You can barbecue it, boil it, broil it, bake it, saute it.") + reagents.add_reagent("protein", 1) + src.bitesize = 1 /obj/item/reagent_containers/food/snacks/feederfish name = "feeder fish" @@ -79,10 +79,10 @@ icon_state = "feederfish" filling_color = "#FF1C1C" - New() - ..() - reagents.add_reagent("protein", 1) - src.bitesize = 1 +/obj/item/reagent_containers/food/snacks/shrimp/New() + ..() + reagents.add_reagent("protein", 1) + src.bitesize = 1 /obj/item/fish name = "fish" diff --git a/code/modules/flufftext/TextFilters.dm b/code/modules/flufftext/TextFilters.dm index e00f653ac45..9224ec51d00 100644 --- a/code/modules/flufftext/TextFilters.dm +++ b/code/modules/flufftext/TextFilters.dm @@ -1,4 +1,4 @@ -proc/Intoxicated(phrase) +/proc/Intoxicated(phrase) phrase = html_decode(phrase) var/leng=length(phrase) var/counter=length(phrase) @@ -21,7 +21,7 @@ proc/Intoxicated(phrase) newphrase+="[newletter]";counter-=1 return newphrase -proc/NewStutter(phrase,stunned) +/proc/NewStutter(phrase,stunned) phrase = html_decode(phrase) var/list/split_phrase = splittext(phrase," ") //Split it up into words. @@ -57,10 +57,10 @@ proc/NewStutter(phrase,stunned) return sanitize(jointext(split_phrase," ")) -proc/Stagger(mob/M,d) //Technically not a filter, but it relates to drunkenness. +/proc/Stagger(mob/M,d) //Technically not a filter, but it relates to drunkenness. step(M, pick(d,turn(d,90),turn(d,-90))) -proc/Ellipsis(original_msg, chance = 50) +/proc/Ellipsis(original_msg, chance = 50) if(chance <= 0) return "..." if(chance >= 100) return original_msg diff --git a/code/modules/food_and_drinks/kitchen_machinery/cereal_maker.dm b/code/modules/food_and_drinks/kitchen_machinery/cereal_maker.dm index dc81717496a..59fe4b78bcd 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/cereal_maker.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/cereal_maker.dm @@ -8,17 +8,17 @@ onicon = "cereal_on" officon = "cereal_off" -obj/machinery/cooker/cerealmaker/setIcon(obj/item/copyme, obj/item/copyto) +/obj/machinery/cooker/cerealmaker/setIcon(obj/item/copyme, obj/item/copyto) var/image/img = new(copyme.icon, copyme.icon_state) img.transform *= 0.7 copyto.overlays += img copyto.overlays += copyme.overlays -obj/machinery/cooker/cerealmaker/changename(obj/item/name, obj/item/setme) +/obj/machinery/cooker/cerealmaker/changename(obj/item/name, obj/item/setme) setme.name = "box of [name] cereal" setme.desc = "[name.desc] It has been [thiscooktype]" -obj/machinery/cooker/cerealmaker/gettype() +/obj/machinery/cooker/cerealmaker/gettype() var/obj/item/reagent_containers/food/snacks/cereal/type = new(get_turf(src)) return type diff --git a/code/modules/food_and_drinks/kitchen_machinery/food_grill.dm b/code/modules/food_and_drinks/kitchen_machinery/food_grill.dm index 54290c80b37..f68f8c31baf 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/food_grill.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/food_grill.dm @@ -11,7 +11,7 @@ onicon = "grill_on" officon = "grill_off" -obj/machinery/cooker/foodgrill/putIn(obj/item/In, mob/chef) +/obj/machinery/cooker/foodgrill/putIn(obj/item/In, mob/chef) ..() var/image/img = new(In.icon, In.icon_state) img.pixel_y = 5 diff --git a/code/modules/food_and_drinks/recipes/recipes_microwave.dm b/code/modules/food_and_drinks/recipes/recipes_microwave.dm index f8d720ec56c..df22e612830 100644 --- a/code/modules/food_and_drinks/recipes/recipes_microwave.dm +++ b/code/modules/food_and_drinks/recipes/recipes_microwave.dm @@ -449,7 +449,7 @@ ) result = /obj/item/reagent_containers/food/snacks/twobread -datum/recipe/microwave/slimesandwich +/datum/recipe/microwave/slimesandwich reagents = list("slimejelly" = 5) items = list( /obj/item/reagent_containers/food/snacks/breadslice, diff --git a/code/modules/karma/karma.dm b/code/modules/karma/karma.dm index 837e3a21104..6df1ce19ba7 100644 --- a/code/modules/karma/karma.dm +++ b/code/modules/karma/karma.dm @@ -2,7 +2,7 @@ Everything karma related is here. Part of karma purchase is handled in client_procs.dm */ -proc/sql_report_karma(var/mob/spender, var/mob/receiver) +/proc/sql_report_karma(var/mob/spender, var/mob/receiver) var/sqlspendername = sanitizeSQL(spender.name) var/sqlspenderkey = sanitizeSQL(spender.ckey) var/sqlreceivername = sanitizeSQL(receiver.name) diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index e74625c8715..4217c4be6f7 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -101,32 +101,32 @@ /obj/structure/bookcase/manuals/medical name = "Medical Manuals bookcase" - New() - ..() - new /obj/item/book/manual/medical_cloning(src) - update_icon() +/obj/structure/bookcase/manuals/medical/New() + ..() + new /obj/item/book/manual/medical_cloning(src) + update_icon() /obj/structure/bookcase/manuals/engineering name = "Engineering Manuals bookcase" - New() - ..() - new /obj/item/book/manual/engineering_construction(src) - new /obj/item/book/manual/engineering_particle_accelerator(src) - new /obj/item/book/manual/engineering_hacking(src) - new /obj/item/book/manual/engineering_guide(src) - new /obj/item/book/manual/engineering_singularity_safety(src) - new /obj/item/book/manual/robotics_cyborgs(src) - update_icon() +/obj/structure/bookcase/manuals/engineering/New() + ..() + new /obj/item/book/manual/engineering_construction(src) + new /obj/item/book/manual/engineering_particle_accelerator(src) + new /obj/item/book/manual/engineering_hacking(src) + new /obj/item/book/manual/engineering_guide(src) + new /obj/item/book/manual/engineering_singularity_safety(src) + new /obj/item/book/manual/robotics_cyborgs(src) + update_icon() /obj/structure/bookcase/manuals/research_and_development name = "R&D Manuals bookcase" - New() - ..() - new /obj/item/book/manual/research_and_development(src) - update_icon() +/obj/structure/bookcase/manuals/research_and_development/New() + ..() + new /obj/item/book/manual/research_and_development(src) + update_icon() /* @@ -288,26 +288,26 @@ var/obj/item/book/book // Currently scanned book var/mode = 0 // 0 - Scan only, 1 - Scan and Set Buffer, 2 - Scan and Attempt to Check In, 3 - Scan and Attempt to Add to Inventory - attack_self(mob/user as mob) - mode += 1 - if(mode > 3) - mode = 0 - to_chat(user, "[src] Status Display:") - var/modedesc - switch(mode) - if(0) - modedesc = "Scan book to local buffer." - if(1) - modedesc = "Scan book to local buffer and set associated computer buffer to match." - if(2) - modedesc = "Scan book to local buffer, attempt to check in scanned book." - if(3) - modedesc = "Scan book to local buffer, attempt to add book to general inventory." - else - modedesc = "ERROR" - to_chat(user, " - Mode [mode] : [modedesc]") - if(src.computer) - to_chat(user, "Computer has been associated with this unit.") +/obj/item/barcodescanner/attack_self(mob/user as mob) + mode += 1 + if(mode > 3) + mode = 0 + to_chat(user, "[src] Status Display:") + var/modedesc + switch(mode) + if(0) + modedesc = "Scan book to local buffer." + if(1) + modedesc = "Scan book to local buffer and set associated computer buffer to match." + if(2) + modedesc = "Scan book to local buffer, attempt to check in scanned book." + if(3) + modedesc = "Scan book to local buffer, attempt to add book to general inventory." else - to_chat(user, "No associated computer found. Only local scans will function properly.") - to_chat(user, "\n") + modedesc = "ERROR" + to_chat(user, " - Mode [mode] : [modedesc]") + if(src.computer) + to_chat(user, "Computer has been associated with this unit.") + else + to_chat(user, "No associated computer found. Only local scans will function properly.") + to_chat(user, "\n") diff --git a/code/modules/martial_arts/krav_maga.dm b/code/modules/martial_arts/krav_maga.dm index 3a6f484b2aa..d348b3765fb 100644 --- a/code/modules/martial_arts/krav_maga.dm +++ b/code/modules/martial_arts/krav_maga.dm @@ -103,7 +103,7 @@ add_attack_logs(A, D, "Melee attacked with martial-art [src] : Neck Chop", ATKLOG_ALL) return 1 -datum/martial_art/krav_maga/grab_act(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) +/datum/martial_art/krav_maga/grab_act(var/mob/living/carbon/human/A, var/mob/living/carbon/human/D) if(check_streak(A,D)) return 1 ..() diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index e944e692887..f9d6fc436cf 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -38,7 +38,7 @@ GLOBAL_LIST_INIT(department_radio_keys, list( GLOBAL_LIST_EMPTY(channel_to_radio_key) -proc/get_radio_key_from_channel(var/channel) +/proc/get_radio_key_from_channel(var/channel) var/key = GLOB.channel_to_radio_key[channel] if(!key) for(var/radio_key in GLOB.department_radio_keys) diff --git a/code/modules/mob/living/silicon/robot/component.dm b/code/modules/mob/living/silicon/robot/component.dm index 52d58ad659d..6cb0cc53bd0 100644 --- a/code/modules/mob/living/silicon/robot/component.dm +++ b/code/modules/mob/living/silicon/robot/component.dm @@ -243,7 +243,7 @@ add_fingerprint(user) -proc/robot_healthscan(mob/user, mob/living/M) +/proc/robot_healthscan(mob/user, mob/living/M) var/scan_type if(istype(M, /mob/living/silicon/robot)) scan_type = "robot" diff --git a/code/modules/mob/living/simple_animal/hostile/hivebot.dm b/code/modules/mob/living/simple_animal/hostile/hivebot.dm index c6f3ac845e3..2b9358214b1 100644 --- a/code/modules/mob/living/simple_animal/hostile/hivebot.dm +++ b/code/modules/mob/living/simple_animal/hostile/hivebot.dm @@ -71,9 +71,6 @@ var/spawn_delay = 600 var/turn_on = 0 var/auto_spawn = 1 - proc - warpbots() - /mob/living/simple_animal/hostile/hivebot/tele/New() ..() @@ -83,7 +80,7 @@ visible_message("The [src] warps in!") playsound(src.loc, 'sound/effects/empulse.ogg', 25, 1) -/mob/living/simple_animal/hostile/hivebot/tele/warpbots() +/mob/living/simple_animal/hostile/hivebot/tele/proc/warpbots() icon_state = "def_radar" visible_message("The [src] turns on!") while(bot_amt > 0) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm index 50531f976e9..14d2e933605 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm @@ -524,7 +524,7 @@ Difficulty: Medium else animate(src, pixel_x = -16, pixel_z = 0, time = 5) -obj/effect/temp_visual/fireball +/obj/effect/temp_visual/fireball icon = 'icons/obj/wizard.dmi' icon_state = "fireball" name = "fireball" diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index ff01fbe5cc9..ae8cbd2d7ca 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -288,7 +288,7 @@ S.message = Gibberish(S.message, p) -proc/muffledspeech(phrase) +/proc/muffledspeech(phrase) phrase = html_decode(phrase) var/leng=length(phrase) var/counter=length(phrase) diff --git a/code/modules/modular_computers/laptop_vendor.dm b/code/modules/modular_computers/laptop_vendor.dm index aa69b85b1df..a6aee63a3af 100644 --- a/code/modules/modular_computers/laptop_vendor.dm +++ b/code/modules/modular_computers/laptop_vendor.dm @@ -237,7 +237,7 @@ data["totalprice"] = total_price return data -obj/machinery/lapvend/attackby(obj/item/I, mob/user) +/obj/machinery/lapvend/attackby(obj/item/I, mob/user) var/obj/item/card/id/C if(istype(I, /obj/item/card/id)) C = I diff --git a/code/modules/paperwork/clipboard.dm b/code/modules/paperwork/clipboard.dm index a65610c7382..f495466d3f5 100644 --- a/code/modules/paperwork/clipboard.dm +++ b/code/modules/paperwork/clipboard.dm @@ -42,7 +42,7 @@ if(in_range(user, src) && toppaper) . += toppaper.examine(user) -obj/item/clipboard/proc/penPlacement(mob/user, obj/item/pen/P, placing) +/obj/item/clipboard/proc/penPlacement(mob/user, obj/item/pen/P, placing) if(placing) if(containedpen) to_chat(user, "There's already a pen in [src]!") diff --git a/code/modules/paperwork/silicon_photography.dm b/code/modules/paperwork/silicon_photography.dm index eb8904cf3e8..17cfcacec62 100644 --- a/code/modules/paperwork/silicon_photography.dm +++ b/code/modules/paperwork/silicon_photography.dm @@ -150,7 +150,7 @@ // Explicitly only allow deletion from the local camera deletepicture(src) -obj/item/camera/siliconcam/proc/getsource() +/obj/item/camera/siliconcam/proc/getsource() if(istype(src.loc, /mob/living/silicon/ai)) return src diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 992020e7090..40969d7e677 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -229,7 +229,7 @@ By design, d1 is the smallest direction and d2 is the highest if(current_size >= STAGE_FIVE) deconstruct() -obj/structure/cable/proc/cable_color(colorC) +/obj/structure/cable/proc/cable_color(colorC) if(!colorC) color = COLOR_RED else if(colorC == "rainbow") diff --git a/code/modules/projectiles/guns/projectile/saw.dm b/code/modules/projectiles/guns/projectile/saw.dm index 3c25bc30f93..bb800214020 100644 --- a/code/modules/projectiles/guns/projectile/saw.dm +++ b/code/modules/projectiles/guns/projectile/saw.dm @@ -87,7 +87,7 @@ damage = 7 armour_penetration = 0 -obj/item/projectile/bullet/saw/incen/Move() +/obj/item/projectile/bullet/saw/incen/Move() ..() var/turf/location = get_turf(src) if(location) diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index c33c649ae77..2a7fd2e602d 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -287,7 +287,7 @@ Range() sleep(max(1, speed)) -obj/item/projectile/proc/reflect_back(atom/source, list/position_modifiers = list(0, 0, 0, 0, 0, -1, 1, -2, 2)) +/obj/item/projectile/proc/reflect_back(atom/source, list/position_modifiers = list(0, 0, 0, 0, 0, -1, 1, -2, 2)) if(starting) var/new_x = starting.x + pick(position_modifiers) var/new_y = starting.y + pick(position_modifiers) @@ -306,7 +306,7 @@ obj/item/projectile/proc/reflect_back(atom/source, list/position_modifiers = lis xo = new_x - curloc.x Angle = null // Will be calculated in fire() -obj/item/projectile/Crossed(atom/movable/AM, oldloc) //A mob moving on a tile with a projectile is hit by it. +/obj/item/projectile/Crossed(atom/movable/AM, oldloc) //A mob moving on a tile with a projectile is hit by it. ..() if(isliving(AM) && AM.density && !checkpass(PASSMOB)) Bump(AM, 1) diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index 01a5e6823a5..24a3e3b9e99 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -39,7 +39,7 @@ reagents.add_reagent("blood", disease_amount, data) add_initial_reagents() -obj/item/reagent_containers/proc/add_initial_reagents() +/obj/item/reagent_containers/proc/add_initial_reagents() if(list_reagents) reagents.add_reagent_list(list_reagents) diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index 541945f0eb1..ff01fc34506 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -156,7 +156,7 @@ else return ..() -obj/structure/reagent_dispensers/fueltank/welder_act(mob/user, obj/item/I) +/obj/structure/reagent_dispensers/fueltank/welder_act(mob/user, obj/item/I) . = TRUE if(!reagents.has_reagent("fuel")) to_chat(user, "[src] is out of fuel!") diff --git a/code/modules/research/message_server.dm b/code/modules/research/message_server.dm index 3fe0ef54c0c..009e4810d3e 100644 --- a/code/modules/research/message_server.dm +++ b/code/modules/research/message_server.dm @@ -335,7 +335,7 @@ GLOBAL_DATUM(blackbox, /obj/machinery/blackbox_recorder) return FALSE // don't fuck with the stupid blackbox shit -proc/feedback_set(var/variable,var/value) +/proc/feedback_set(var/variable,var/value) if(IsAdminAdvancedProcCall()) to_chat(usr, "Feedback edit blocked: Advanced ProcCall detected.") message_admins("[key_name(usr)] attempted to edit feedback data via advanced proc-call") @@ -351,7 +351,7 @@ proc/feedback_set(var/variable,var/value) FV.set_value(value) -proc/feedback_inc(var/variable,var/value) +/proc/feedback_inc(var/variable,var/value) if(IsAdminAdvancedProcCall()) to_chat(usr, "Feedback edit blocked: Advanced ProcCall detected.") message_admins("[key_name(usr)] attempted to edit feedback data via advanced proc-call") @@ -367,7 +367,7 @@ proc/feedback_inc(var/variable,var/value) FV.inc(value) -proc/feedback_dec(var/variable,var/value) +/proc/feedback_dec(var/variable,var/value) if(IsAdminAdvancedProcCall()) to_chat(usr, "Feedback edit blocked: Advanced ProcCall detected.") message_admins("[key_name(usr)] attempted to edit feedback data via advanced proc-call") @@ -383,7 +383,7 @@ proc/feedback_dec(var/variable,var/value) FV.dec(value) -proc/feedback_set_details(var/variable,var/details) +/proc/feedback_set_details(var/variable,var/details) if(IsAdminAdvancedProcCall()) to_chat(usr, "Feedback edit blocked: Advanced ProcCall detected.") message_admins("[key_name(usr)] attempted to edit feedback data via advanced proc-call") @@ -400,7 +400,7 @@ proc/feedback_set_details(var/variable,var/details) FV.set_details(details) -proc/feedback_add_details(var/variable,var/details) +/proc/feedback_add_details(var/variable,var/details) if(IsAdminAdvancedProcCall()) to_chat(usr, "Feedback edit blocked: Advanced ProcCall detected.") message_admins("[key_name(usr)] attempted to edit feedback data via advanced proc-call") diff --git a/code/modules/spacepods/construction.dm b/code/modules/spacepods/construction.dm index be2998fc0a3..d24758c3b19 100644 --- a/code/modules/spacepods/construction.dm +++ b/code/modules/spacepods/construction.dm @@ -222,7 +222,7 @@ // EOF ) - spawn_result(mob/user as mob) - ..() - feedback_inc("spacepod_created",1) - return +/datum/construction/reversible2/pod/spawn_result(mob/user as mob) + ..() + feedback_inc("spacepod_created",1) + return diff --git a/code/modules/surgery/organs/pain.dm b/code/modules/surgery/organs/pain.dm index 91e4a2f6781..70f3ff43fa1 100644 --- a/code/modules/surgery/organs/pain.dm +++ b/code/modules/surgery/organs/pain.dm @@ -30,7 +30,7 @@ // message is the custom message to be displayed -mob/living/carbon/human/proc/custom_pain(message) +/mob/living/carbon/human/proc/custom_pain(message) if(stat >= UNCONSCIOUS) return @@ -49,7 +49,7 @@ mob/living/carbon/human/proc/custom_pain(message) to_chat(src, msg) next_pain_time = world.time + 100 -mob/living/carbon/human/proc/handle_pain() +/mob/living/carbon/human/proc/handle_pain() // not when sleeping if(stat >= UNCONSCIOUS)