Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
10b38fa
del: Удаление МЭКов и Интегралок из билда (#8512)
chomasuke Feb 9, 2026
c2b78c4
Add boriska
Buravka Feb 12, 2026
23a53e3
Merge branch 'barbaris_module' into barbariska_reborn
Buravka Feb 12, 2026
26869d9
fix
Buravka Feb 12, 2026
a3997e1
zabyl
Buravka Feb 12, 2026
fc8f4b9
zabyl2
Buravka Feb 12, 2026
252c124
nashel
Buravka Feb 12, 2026
a3d0b24
opechatochka
Buravka Feb 12, 2026
ece103d
fix2
Buravka Feb 12, 2026
893f444
opechatochka2
Buravka Feb 12, 2026
cd3bce5
fix3
Buravka Feb 12, 2026
5fd338a
opechatochka3
Buravka Feb 13, 2026
89765f9
Merge branch 'master220' into barbariska_reborn
Buravka Feb 18, 2026
99c8c30
Merge branch 'master220' into barbariska_reborn
Buravka Feb 18, 2026
7a9a48e
fix4
Buravka Feb 18, 2026
c058f10
Merge branch 'barbariska_reborn' of https://github.com/Buravka/Buravc…
Buravka Feb 18, 2026
cbe42c3
Merge branch 'master220' into barbariska_reborn
Buravka Feb 24, 2026
29ea539
opechatochka4
Buravka Feb 27, 2026
c0b4a91
Merge branch 'master220' into barbariska_reborn
Buravka Feb 28, 2026
cd8ad0c
Merge branch 'master220' into barbariska_reborn
Buravka Mar 1, 2026
9f47fd6
Merge branch 'master220' into barbariska_reborn
Buravka Mar 1, 2026
6431bd0
revision
Buravka Mar 1, 2026
ce8597b
Merge branch 'barbariska_reborn' of https://github.com/Buravka/Buravc…
Buravka Mar 1, 2026
c3a04ac
Merge branch 'master220' into barbariska_reborn
Buravka Mar 1, 2026
20c4027
zabyl
Buravka Mar 1, 2026
444c3db
Merge branch 'barbariska_reborn' of https://github.com/Buravka/Buravc…
Buravka Mar 1, 2026
fb592aa
kavo
Buravka Mar 1, 2026
24fd0ba
kavo2
Buravka Mar 2, 2026
f7434c8
revision2
Buravka Mar 2, 2026
dd5f285
pamagiti
Buravka Mar 2, 2026
08c84d4
pamagite2
Buravka Mar 2, 2026
317ada9
Revert "pamagite2"
Buravka Mar 2, 2026
06ed683
Merge branch 'master220' into barbariska_reborn
Buravka Mar 2, 2026
3a6d820
pamagite3
Buravka Mar 2, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions code/__DEFINES/hud.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,8 @@
#define GLAND_HUD "25"
/// Pressure coloring for tiles
#define PRESSURE_HUD "26"
/// AI shell status
#define DIAG_AISHELL_STAT_HUD "27"
/// Telepathy bubbles
#define THOUGHT_HUD "thoughts_hud"
/// Kidan pheromones hud
Expand Down
8 changes: 8 additions & 0 deletions code/__DEFINES/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,14 @@
#define ROBOT_NOTIFY_AI_CONNECTED 1 //New Cyborg
#define ROBOT_NOTIFY_AI_MODULE 2 //New Module
#define ROBOT_NOTIFY_AI_NAME 3 //New Name
#define AI_NOTIFICATION_AI_SHELL 4 //New AI shell
//'evacuate_ai()' proc danger levels
#define DANGER_LVL_NONE "danger_level_none" //0% kill chance
#define DANGER_LVL_MAY_DIE "danger_level_may_die" //50% kill chance
#define DANGER_LVL_INSTA_DEATH "danger_level_insta_death" //100% kill chance
//'robot.attack_ai()' proc tgui_input desicsions
#define AISHELL_CONNECT_POSITIVE "Подключиться"
#define AISHELL_CONNECT_NEGATIVE "Отмена"
//determines if a mob can smash through it
#define ENVIRONMENT_SMASH_NONE 0
#define ENVIRONMENT_SMASH_STRUCTURES 1 //crates, lockers, ect
Expand Down
2 changes: 1 addition & 1 deletion code/__HELPERS/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -798,7 +798,7 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new)
var/selected_borg_name = null
var/list/available_borgs = list()
for(var/mob/living/silicon/robot/borg in GLOB.player_list)
if(borg.stat == DEAD || borg.connected_ai || borg.scrambledcodes || isdrone(borg) || iscogscarab(borg) || isclocker(borg))
if(borg.stat == DEAD || borg.connected_ai || borg.scrambledcodes || isdrone(borg) || iscogscarab(borg) || isclocker(borg) || borg.shell)
continue
var/borg_name = "[borg.real_name] ([borg.modtype?.name] [borg.braintype])"
available_borgs[borg_name] = borg
Expand Down
2 changes: 2 additions & 0 deletions code/_onclick/hud/_defines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,8 @@
#define ui_ai_up "TOP:-6,RIGHT-1"
#define ui_ai_down "TOP:-6,RIGHT"

#define ui_ai_connect_to_shell "BOTTOM:6,LEFT+3"

// Bots
#define ui_bot_radio "EAST-1:28,SOUTH:7"
#define ui_bot_pull "EAST-2:26,SOUTH:7"
Expand Down
15 changes: 15 additions & 0 deletions code/_onclick/hud/ai.dm
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,16 @@
var/mob/living/silicon/ai/AI = usr
AI.move_down()

/atom/movable/screen/ai/connect_to_shell
name = "Подключиться к оболочке"
icon_state = "AIshell"

/atom/movable/screen/ai/connect_to_shell/Click()
if(!isAI(usr))
return
var/mob/living/silicon/ai/AI = usr
AI.deploy_to_shell()

/datum/hud/ai/New(mob/owner)
..()

Expand Down Expand Up @@ -259,3 +269,8 @@
using = new /atom/movable/screen/ai/move_down(null, src)
using.screen_loc = ui_ai_down
static_inventory += using

//Connect to shell
using = new /atom/movable/screen/ai/connect_to_shell(null, src)
using.screen_loc = ui_ai_connect_to_shell
static_inventory += using
4 changes: 2 additions & 2 deletions code/game/data_huds.dm
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,10 @@
hud_icons = list(ID_HUD, IMPTRACK_HUD, IMPMINDSHIELD_HUD, IMPCHEM_HUD, WANTED_HUD)

/datum/atom_hud/data/diagnostic
hud_icons = list(DIAG_HUD, DIAG_STAT_HUD, DIAG_BATT_HUD, DIAG_MECH_HUD, DIAG_BOT_HUD, DIAG_TRACK_HUD, DIAG_AIRLOCK_HUD)
hud_icons = list(DIAG_HUD, DIAG_STAT_HUD, DIAG_BATT_HUD, DIAG_MECH_HUD, DIAG_BOT_HUD, DIAG_TRACK_HUD, DIAG_AIRLOCK_HUD, DIAG_AISHELL_STAT_HUD)

/datum/atom_hud/data/diagnostic/advanced
hud_icons = list(DIAG_HUD, DIAG_STAT_HUD, DIAG_BATT_HUD, DIAG_MECH_HUD, DIAG_BOT_HUD, DIAG_TRACK_HUD, DIAG_AIRLOCK_HUD, DIAG_PATH_HUD)
hud_icons = list(DIAG_HUD, DIAG_STAT_HUD, DIAG_BATT_HUD, DIAG_MECH_HUD, DIAG_BOT_HUD, DIAG_TRACK_HUD, DIAG_AIRLOCK_HUD, DIAG_PATH_HUD, DIAG_AISHELL_STAT_HUD)

/datum/atom_hud/data/bot_path
// This hud exists so the bot can see itself, that's all
Expand Down
2 changes: 1 addition & 1 deletion code/game/gamemodes/clockwork/clock_magic.dm
Original file line number Diff line number Diff line change
Expand Up @@ -366,7 +366,7 @@
playsound(get_turf(src), 'sound/machines/airlockforced.ogg', 80, TRUE)
do_sparks(5, TRUE, target)
if(do_after(user, 9 SECONDS, candidate))
candidate.emp_act(EMP_HEAVY)
candidate.Stun(6 SECONDS)
candidate.ratvar_act(weak = TRUE)
SSticker?.score?.save_silicon_laws(candidate, user, "Ratvar act", log_all_laws = TRUE)
channeling = FALSE
Expand Down
7 changes: 7 additions & 0 deletions code/game/gamemodes/cult/runes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -397,6 +397,13 @@ structure_check() searches for nearby cultist structures required for the invoca
playsound(offering, 'sound/misc/demon_consume.ogg', 100, TRUE)

if((ishuman(offering) || isrobot(offering) || isbrain(offering)) && offering.mind)
if(isrobot(offering))
var/mob/living/silicon/robot/robot = offering
if(robot.shell && robot.mainframe)
robot.evacuate_ai(DANGER_LVL_INSTA_DEATH)
robot.dust()
playsound(offering, 'sound/magic/disintegrate.ogg', 100, TRUE)
return TRUE
var/obj/item/soulstone/stone = new /obj/item/soulstone(get_turf(src))
stone.invisibility = INVISIBILITY_MAXIMUM // So it's not picked up during transfer_soul()
stone.transfer_soul("FORCE", offering, user) // If it cannot be added
Expand Down
4 changes: 4 additions & 0 deletions code/game/machinery/computer/law.dm
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,10 @@
installed_module.transmit_instructions(current, user, reg_name)
to_chat(current, "These are your laws now:")
current.show_laws()
if(isAI(current))
var/mob/living/silicon/ai/AI = current
if(AI.deployed_shell)
AI.deployed_shell.show_laws()
for(var/mob/living/silicon/robot/R in GLOB.mob_list)
if(R.lawupdate && (R.connected_ai == current))
to_chat(R, "These are your laws now:")
Expand Down
4 changes: 2 additions & 2 deletions code/game/machinery/computer/robot.dm
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,6 @@
return FALSE
if(iscogscarab(R))
return FALSE
if(iscogscarab(R))
return FALSE
if(R.scrambledcodes)
return FALSE
if(!are_zs_connected(src, R))
Expand Down Expand Up @@ -162,6 +160,8 @@
synchronization = R.connected_ai,
is_hacked = R.connected_ai && R.emagged,
hackable = can_hack(user, R),
is_shell = R.shell,
occupier = R.mainframe? R.mainframe.name : "None",
)
data["cyborgs"] += list(cyborg_data)
data["show_detonate_all"] = (data["auth"] && length(data["cyborgs"]) > 0 && ishuman(user))
Expand Down
Loading
Loading