From 8f24f9cf8e304f3ee5fd4cdeb087e4428c12c66b Mon Sep 17 00:00:00 2001 From: LordNest Date: Sat, 13 Jan 2024 21:49:23 +0400 Subject: [PATCH 01/19] TWEAK: Merks kits --- mods/antagonists/_antagonists.dme | 1 + mods/antagonists/code/mercenary.dm | 419 ++++++++++++++++++++++++ mods/loadout_items/code/accessory.dm | 12 + packs/infinity/structures/holoplants.dm | 2 +- 4 files changed, 433 insertions(+), 1 deletion(-) create mode 100644 mods/antagonists/code/mercenary.dm diff --git a/mods/antagonists/_antagonists.dme b/mods/antagonists/_antagonists.dme index 6fe5a7f955fac..f571dcf97e1e1 100644 --- a/mods/antagonists/_antagonists.dme +++ b/mods/antagonists/_antagonists.dme @@ -4,6 +4,7 @@ #include "_antagonists.dm" #include "code/ert.dm" +#include "code/mercenary.dm" #include "code/revolutionary.dm" #include "code/operative.dm" #include "code/traitor.dm" diff --git a/mods/antagonists/code/mercenary.dm b/mods/antagonists/code/mercenary.dm new file mode 100644 index 0000000000000..f8e82609e5fe7 --- /dev/null +++ b/mods/antagonists/code/mercenary.dm @@ -0,0 +1,419 @@ + +/datum/uplink_category/mercenary + name = "Mercenary Kits" + +/datum/uplink_item/item/mercenary + category = /datum/uplink_category/mercenary + +/* +Mercenary Kits +Used for quick dress-up. Also comes with several discount +*/ + +/datum/uplink_item/item/mercenary/bioterror + name = "Bioterror Kit" + desc = "Kit, filled with bioweaponery. It contains: Voidsuit, sprayer with bioterror mix, bioterror grenade and military pistol. Don't forget to turn your internals on!" + item_cost = DEFAULT_TELECRYSTAL_AMOUNT + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/bioterror + +/datum/uplink_item/item/mercenary/pyro + name = "Pyro Kit" + desc = "Kit, used for making FIRES! It contains: Special pyro voidsuit, flamethrower with 4 napalm canisters, 2 incendiary grenades and military pistol." + item_cost = DEFAULT_TELECRYSTAL_AMOUNT + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/pyro + +/datum/uplink_item/item/mercenary/classic + name = "Classic Kit" + desc = "Old and faithful kit. It contains: Heavy armor, assault rifle, cryptographic sequencer and grenade." + item_cost = DEFAULT_TELECRYSTAL_AMOUNT + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/classic + +/datum/uplink_item/item/mercenary/stealthy + name = "Stealthy Kit" + desc = "A special kit for stealthy operations. It contains: Chameleon kit, fake crew annoncement, freedom implant, cryptographic sequencer, plastic surgery kit, silensed pistol and clerical kit." + item_cost = DEFAULT_TELECRYSTAL_AMOUNT + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/stealthy + +/datum/uplink_item/item/mercenary/sniper + name = "Sniper Kit" + desc = "Fashionable kit for fashionable operatives. It contains: Cool-looking armor vest, disguised as a suit, thermal googles and sniper rifle with ammo." + item_cost = DEFAULT_TELECRYSTAL_AMOUNT + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/sniper + +/datum/uplink_item/item/mercenary/spaceass + name = "Breacher Kit" + desc = "You're leading the assault. It contains: Heavy armor, 3 C-4 explosives, drum-fed shotgun and cryptographic sequencer." + item_cost = DEFAULT_TELECRYSTAL_AMOUNT + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/spaceass + +/datum/uplink_item/item/mercenary/saboteur + name = "Saboteur Kit" + desc = "You want to sabotage ship systems? This kit is specially for you. It contains: Heavy armor, military pistol, flashdark, chameleon projector, cryptographic sequencer and some C-4 explosives." + item_cost = DEFAULT_TELECRYSTAL_AMOUNT + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/saboteur + +/datum/uplink_item/item/mercenary/medic + name = "Field Medic Kit" + desc = "This kit can provide almost everything for combat medic. It contains: Heavy armor, military pistol, combat medkit, combat defibrilator and surgery kit." + item_cost = DEFAULT_TELECRYSTAL_AMOUNT + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/medic + +/datum/uplink_item/item/mercenary/heavy + name = "Heavy Kit" + desc = "This kit is for heavy gunners. It contains: Heavy armor, energy shield, grenade and L6 Saw machinegun." + item_cost = DEFAULT_TELECRYSTAL_AMOUNT * 2 + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/heavy + +/datum/uplink_item/item/mercenary/netrunner + name = "Netrunner Kit" + desc = "This kit is can provide some help in hacking of ship systems. It contains: Hacker rig, camera MIU, some computers and cryptographic sequencer." + item_cost = DEFAULT_TELECRYSTAL_AMOUNT + antag_roles = list(MODE_MERCENARY) + path = /obj/item/storage/backpack/dufflebag/syndie_kit/netrunner + +// What's inside the box + +/obj/item/storage/backpack/dufflebag/syndie_kit/bioterror + startswith = list( + /obj/item/clothing/mask/gas/syndicate, + /obj/item/tank/oxygen_emergency_double, + /obj/item/reagent_containers/spray/chemsprayer/bioterror, + /obj/item/grenade/chem_grenade/bioterror, + /obj/item/gun/projectile/pistol/optimus + ) + +/obj/item/storage/backpack/dufflebag/syndie_kit/pyro + startswith = list( + /obj/item/clothing/suit/space/void/merc/heavy/prepared, + /obj/item/clothing/mask/gas/syndicate, + /obj/item/tank/oxygen_emergency_double, + /obj/item/flamethrower/full/loaded, + /obj/item/reagent_containers/glass/beaker/insulated/large/napalm = 3, + /obj/item/grenade/chem_grenade/fuelspray = 2, + /obj/item/gun/projectile/pistol/optimus + ) + +/obj/item/storage/backpack/dufflebag/syndie_kit/classic + startswith = list( + /obj/item/clothing/suit/armor/pcarrier/merc, + /obj/item/clothing/head/helmet/merc, + /obj/item/gun/projectile/automatic/assault_rifle, + /obj/item/grenade/frag/high_yield, + /obj/item/card/emag + ) + +/obj/item/storage/backpack/dufflebag/syndie_kit/stealthy + startswith = list( + /obj/item/storage/box/syndie_kit/chameleon = 2, + /obj/item/storage/box/syndie_kit/silenced, + /obj/item/storage/box/syndie_kit/spy, + /obj/item/clothing/mask/chameleon/voice, + /obj/item/device/cosmetic_surgery_kit, + /obj/item/stamp/chameleon, + /obj/item/pen/chameleon, + /obj/item/storage/box/syndie_kit/imp_freedom, + /obj/item/device/uplink_service/fake_crew_announcement, + /obj/item/card/emag + ) + +/obj/item/storage/backpack/dufflebag/syndie_kit/sniper + startswith = list( + /obj/item/clothing/under/det, + /obj/item/clothing/suit/storage/leather_jacket/armored, + /obj/item/gun/projectile/heavysniper, + /obj/item/storage/box/ammo/sniperammo, + /obj/item/clothing/glasses/thermal/syndi + ) + +/obj/item/storage/backpack/dufflebag/syndie_kit/spaceass + startswith = list( + /obj/item/clothing/suit/armor/pcarrier/merc, + /obj/item/clothing/head/helmet/merc, + /obj/item/gun/projectile/shotgun/magshot, + /obj/item/ammo_magazine/shotgunmag/shot, + /obj/item/ammo_magazine/shotgunmag, + /obj/item/plastique = 3, + /obj/item/card/emag + ) + +/obj/item/storage/backpack/dufflebag/syndie_kit/saboteur + startswith = list( + /obj/item/clothing/suit/armor/pcarrier/merc, + /obj/item/clothing/head/helmet/merc, + /obj/item/device/flashlight/flashdark, + /obj/item/device/chameleon, + /obj/item/gun/projectile/pistol/optimus, + /obj/item/plastique = 2, + /obj/item/card/emag + ) + +/obj/item/storage/backpack/dufflebag/syndie_kit/medic + startswith = list( + /obj/item/clothing/suit/armor/pcarrier/merc, + /obj/item/clothing/head/helmet/merc, + /obj/item/storage/firstaid/combat, + /obj/item/storage/firstaid/surgery, + /obj/item/defibrillator/compact/combat/loaded, + /obj/item/gun/projectile/pistol/optimus, + ) + +/obj/item/storage/backpack/dufflebag/syndie_kit/heavy + startswith = list( + /obj/item/clothing/suit/space/void/merc/heavy/prepared, + /obj/item/gun/projectile/automatic/l6_saw, + /obj/item/ammo_magazine/box/machinegun = 3, + /obj/item/grenade/frag/high_yield, + /obj/item/shield/energy + ) + +/obj/item/storage/backpack/dufflebag/syndie_kit/netrunner + startswith = list( + /obj/item/rig/light/hacker/runner, + /obj/item/modular_computer/laptop/preset/custom_loadout/advanced, + /obj/item/modular_computer/tablet/preset/custom_loadout/advanced, + /obj/item/modular_computer/pda/syndicate, + /obj/item/clothing/glasses/hud/it, + /obj/item/clothing/mask/ai, + /obj/item/device/multitool/hacktool, + /obj/item/card/emag = 2 + ) + + +// Items + +/obj/item/reagent_containers/glass/beaker/insulated/large/napalm + +/obj/item/reagent_containers/glass/beaker/insulated/large/napalm/Initialize() + . = ..() + reagents.add_reagent(/datum/reagent/napalm, 120) + +// Bioterror Chem sprayer + +/obj/item/reagent_containers/spray/chemsprayer/bioterror + name = "bioterror chem sprayer" + desc = "This chem sprayer is filled with mix, that will melt, mutate and irradiate everything." + +/obj/item/reagent_containers/spray/chemsprayer/bioterror/Initialize() + . = ..() + reagents.add_reagent(/datum/reagent/drugs/hextro, volume / 10) + reagents.add_reagent(/datum/reagent/drugs/mindbreaker, volume / 10) + reagents.add_reagent(/datum/reagent/toxin/carpotoxin, volume / 10) + reagents.add_reagent(/datum/reagent/mutagen, volume / 10) + reagents.add_reagent(/datum/reagent/toxin/amatoxin, volume / 10) + reagents.add_reagent(/datum/reagent/toxin/phoron, volume / 10) + reagents.add_reagent(/datum/reagent/impedrezene, volume / 10) + reagents.add_reagent(/datum/reagent/toxin/potassium_chlorophoride, volume / 10) + reagents.add_reagent(/datum/reagent/acid/polyacid, volume / 10) + reagents.add_reagent(/datum/reagent/radium, volume / 10) + +// Grenades + +/obj/item/grenade/chem_grenade/bioterror + name = "bioterror grenade" + desc = "Used for clearing rooms of living things." + path = 1 + stage = 2 + +/obj/item/grenade/chem_grenade/bioterror/Initialize() + . = ..() + var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src) + var/obj/item/reagent_containers/glass/beaker/large/B2 = new(src) + + B1.reagents.add_reagent(/datum/reagent/phosphorus, 26) + B1.reagents.add_reagent(/datum/reagent/sugar, 14) + B2.reagents.add_reagent(/datum/reagent/sugar, 14) + B2.reagents.add_reagent(/datum/reagent/potassium, 26) + B1.reagents.add_reagent(/datum/reagent/drugs/hextro,20) + B2.reagents.add_reagent(/datum/reagent/toxin/carpotoxin, 20) + B1.reagents.add_reagent(/datum/reagent/drugs/mindbreaker, 20) + B2.reagents.add_reagent(/datum/reagent/toxin/amatoxin, 20) + B2.reagents.add_reagent(/datum/reagent/acid/polyacid, 20) + B1.reagents.add_reagent(/datum/reagent/toxin/phoron, 20) + B1.reagents.add_reagent(/datum/reagent/mutagen, 20) + B2.reagents.add_reagent(/datum/reagent/acid/polyacid, 20) + B2.reagents.add_reagent(/datum/reagent/impedrezene, 20) + + detonator = new/obj/item/device/assembly_holder/timer_igniter(src) + + beakers += B1 + beakers += B2 + icon_state = initial(icon_state) +"_locked" + +/obj/item/grenade/chem_grenade/fuelspray + name = "napalm mix release grenade" + desc = "Used for reliasing lots of napalm mix." + path = 1 + stage = 2 + +/obj/item/grenade/chem_grenade/fuelspray/Initialize() + . = ..() + var/obj/item/reagent_containers/glass/beaker/large/B1 = new(src) + var/obj/item/reagent_containers/glass/beaker/large/B2 = new(src) + + B1.reagents.add_reagent(/datum/reagent/potassium, 26) + B1.reagents.add_reagent(/datum/reagent/sugar, 14) + B2.reagents.add_reagent(/datum/reagent/sugar, 14) + B2.reagents.add_reagent(/datum/reagent/phosphorus, 26) + B1.reagents.add_reagent(/datum/reagent/napalm, 40) + B2.reagents.add_reagent(/datum/reagent/napalm, 40) + B1.reagents.add_reagent(/datum/reagent/toxin/phoron/oxygen, 40) + B2.reagents.add_reagent(/datum/reagent/fuel, 40) + + detonator = new/obj/item/device/assembly_holder/timer_igniter(src) + + beakers += B1 + beakers += B2 + icon_state = initial(icon_state) +"_locked" + + +// Elite Voidsuit + +/obj/item/clothing/head/helmet/space/void/merc/heavy + name = "elite tactical voidsuit helmet" + desc = "A heavy tactical void helm designed for combat under heavy enemy fire and in extreme conditions. Property of Gorlex Marauders." + + icon = 'maps/sierra/icons/obj/clothing/obj_head.dmi' + item_icons = list(slot_head_str = 'maps/sierra/icons/mob/onmob/onmob_head.dmi') + icon_state = "syndie_helm" + action_button_name = "Toggle Combat Mode" + + armor = list( + melee = ARMOR_MELEE_MAJOR, + bullet = ARMOR_BALLISTIC_RIFLE, + laser = ARMOR_LASER_MAJOR, + energy = ARMOR_ENERGY_RESISTANT, + bomb = ARMOR_BOMB_RESISTANT, + bio = ARMOR_BIO_SHIELDED, + rad = ARMOR_RAD_RESISTANT + ) + siemens_coefficient = 0.3 + species_restricted = list(SPECIES_HUMAN, SPECIES_IPC) + camera = /obj/machinery/camera/network/mercenary + light_overlay = "yellow_double_light" + max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE + tint = 1 + +/obj/item/clothing/suit/space/void/merc/heavy + name = "elite tactical voidsuit" + desc = "A heavy tactical voidsuit designed for combat under heavy enemy fire and in extreme conditions. Property of Gorlex Marauders." + + icon = 'maps/sierra/icons/obj/clothing/obj_suit.dmi' + + item_icons = list( + slot_wear_suit_str = 'maps/sierra/icons/mob/onmob/onmob_suit.dmi', + slot_l_hand_str = 'icons/mob/onmob/items/lefthand_spacesuits.dmi', + slot_r_hand_str = 'icons/mob/onmob/items/righthand_spacesuits.dmi',) + + + item_state_slots = list(slot_l_hand_str = "syndie_voidsuit", + slot_r_hand_str = "syndie_voidsuit", + slot_wear_suit_str = "syndie_voidsuit") + icon_state = "syndie_voidsuit" + + w_class = ITEM_SIZE_LARGE + armor = list( + melee = ARMOR_MELEE_MAJOR, + bullet = ARMOR_BALLISTIC_RIFLE, + laser = ARMOR_LASER_MAJOR, + energy = ARMOR_ENERGY_RESISTANT, + bomb = ARMOR_BOMB_RESISTANT, + bio = ARMOR_BIO_SHIELDED, + rad = ARMOR_RAD_RESISTANT + ) + + allowed = list(/obj/item/device/flashlight,/obj/item/tank,/obj/item/device/suit_cooling_unit,/obj/item/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/melee/energy/sword,/obj/item/handcuffs) + siemens_coefficient = 0.3 + species_restricted = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_IPC) + max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE + var/mode = 0 + + var/armor_normal = list( + melee = ARMOR_MELEE_MAJOR, + bullet = ARMOR_BALLISTIC_RIFLE, + laser = ARMOR_LASER_MAJOR, + energy = ARMOR_ENERGY_RESISTANT, + bomb = ARMOR_BOMB_RESISTANT, + bio = ARMOR_BIO_SHIELDED, + rad = ARMOR_RAD_RESISTANT + ) + + var/armor_combat = list( + melee = ARMOR_MELEE_VERY_HIGH, + bullet = ARMOR_BALLISTIC_AP, + laser = ARMOR_LASER_RIFLES, + energy = ARMOR_ENERGY_STRONG, + bomb = ARMOR_BOMB_RESISTANT, + bio = ARMOR_BIO_SHIELDED, + rad = ARMOR_RAD_RESISTANT + ) + +/obj/item/clothing/suit/space/void/merc/heavy/Initialize() + . = ..() + slowdown_per_slot[slot_wear_suit] = 1.5 + START_PROCESSING(SSobj, src) + +/obj/item/clothing/suit/space/void/merc/heavy/prepared + helmet = /obj/item/clothing/head/helmet/space/void/merc/heavy + boots = /obj/item/clothing/shoes/magboots + tank = /obj/item/tank/oxygen + +/obj/item/clothing/suit/space/void/merc/heavy/verb/toggle_mode() + + set name = "Toggle Combat Mode" + set category = "Object" + set src in usr + + if(!istype(src.loc,/mob/living)) return + + if(!helmet) + to_chat(usr, "There is no helmet installed.") + return + + var/mob/living/carbon/human/H = usr + + if(!istype(H)) return + if(H.incapacitated()) return + if(H.wear_suit != src) return + + if(H.head == helmet) + if(mode) + to_chat(usr, "You disengaged combat mode on your suit. Now you will be much faster, but your suit will offer less protection.") + slowdown_per_slot[slot_wear_suit] = 1.5 + helmet.armor = armor_normal + armor = armor_normal + mode = 0 + else + to_chat(usr, "You engaged combat mode on your suit. It will give you much more protection in cost of speed.") + slowdown_per_slot[slot_wear_suit] = 7.5 + helmet.armor = armor_combat + armor = armor_combat + mode = 1 + else + to_chat(usr, "You can't toggle combat mode while your helmet is disengaged.") + return + helmet.update_light(H) + +// Netrunner stuff + +/obj/item/rig/light/hacker/runner + + initial_modules = list( + /obj/item/rig_module/ai_container, + /obj/item/rig_module/chem_dispenser/ninja, + /obj/item/rig_module/mounted/energy/ion, + /obj/item/rig_module/power_sink, + /obj/item/rig_module/datajack, + /obj/item/rig_module/electrowarfare_suite, + /obj/item/rig_module/voice, + /obj/item/rig_module/vision, + /obj/item/rig_module/cooling_unit + ) diff --git a/mods/loadout_items/code/accessory.dm b/mods/loadout_items/code/accessory.dm index 5dfb417b7cede..8afd3167068e5 100644 --- a/mods/loadout_items/code/accessory.dm +++ b/mods/loadout_items/code/accessory.dm @@ -292,3 +292,15 @@ ranks - ec show_browser(user, dat, "window=radio") onclose(user, "radio") return + +// Overrides + +/obj/item/clothing/accessory/badge/holo + icon = 'mods/loadout_items/icons/obj_accessory.dmi' + accessory_icons = list( + slot_w_uniform_str = 'mods/loadout_items/icons/onmob_accessory.dmi', + slot_wear_suit_str = 'mods/loadout_items/icons/onmob_accessory.dmi' + ) + item_icons = list( + slot_wear_mask_str = 'mods/loadout_items/icons/onmob_accessory.dmi' + ) diff --git a/packs/infinity/structures/holoplants.dm b/packs/infinity/structures/holoplants.dm index ca5043154324c..99aa3b86511ce 100644 --- a/packs/infinity/structures/holoplants.dm +++ b/packs/infinity/structures/holoplants.dm @@ -122,7 +122,7 @@ GLOBAL_LIST_INIT(recomended_holoplants_colors, list(COLOR_PALE_RED_GRAY,COLOR_BL return AddOverlays(plant) - set_light(1, brightness_on, l_color = plant_color) + set_light(2, 0.5, brightness_on, l_color = plant_color) sleep(3) if(QDELETED(src)) return From 32c31c54d4f30b5e35f4afa364dd63a07ed8f0a3 Mon Sep 17 00:00:00 2001 From: LordNest Date: Sat, 13 Jan 2024 22:11:56 +0400 Subject: [PATCH 02/19] =?UTF-8?q?=D0=AD=D0=BA=D0=B2=D0=B8=D0=BF=20=D0=AE?= =?UTF-8?q?=D0=B6=D0=B8=D0=BA=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mob/living/carbon/human/inventory.dm | 17 +++++++++++++++++ mods/antagonists/README.md | 3 +++ 2 files changed, 20 insertions(+) diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index 526c8833b14fc..4ffe199027e28 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -21,6 +21,23 @@ This saves us from having to call add_fingerprint() any time something is put in update_inv_l_hand(0) else update_inv_r_hand(0) + // [SIERRA-ADD] + // Try put it in their toolbelt + if(istype(src.belt, /obj/item/storage)) + var/obj/item/storage/belt = src.belt + if(belt.can_be_inserted(I, null, 1) && belt.handle_item_insertion(I)) + return + // Try put it in their backpack + if(istype(src.back, /obj/item/storage)) + var/obj/item/storage/backpack = src.back + if(backpack.can_be_inserted(I, null, 1) && backpack.handle_item_insertion(I)) + return + + // Try to place it in any item that can store stuff, on the mob. + for(var/obj/item/storage/S in src.contents) + if(S.can_be_inserted(I, null, 1) && S.handle_item_insertion(I)) + return + // [/SIERRA-ADD] else to_chat(H, SPAN_WARNING("You are unable to equip that.")) diff --git a/mods/antagonists/README.md b/mods/antagonists/README.md index ced03cc9ce3a4..59d783639a07c 100644 --- a/mods/antagonists/README.md +++ b/mods/antagonists/README.md @@ -3,6 +3,7 @@ - https://github.com/SierraBay/SierraBay12/pull/1474 - https://github.com/SierraBay/SierraBay12/pull/1683 +- https://github.com/SierraBay/SierraBay12/pull/1798 + + +## Admin verbs + +ID мода: ADMIN_VERBS + + +### Описание мода + +Этот мод служит примером для разработчиков и существует лишь для того, +чтобы его можно было легко скопировать и вставить в другое место. + + +### Изменения *кор кода* + +- `code/modules/admin/admin_verbs.dm`: `var/global/list/admin_verbs_spawn` + + +### Оверрайды + +- `mods/_master_files/sound/my_cool_sound.ogg` +- `mods/_master_files/code/my_modular_override.dm`: `proc/overriden_proc`, `var/overriden_var` + + +### Дефайны + +- `code/__defines/~mods/example.dm`: `EXAMPLE_SPEED_MULTIPLIER`, `EXAMPLE_SPEED_BASE` + + +### Используемые файлы, не содержащиеся в модпаке + +- `mods/_master_files/icons/obj/alien.dmi` + + +### Авторы: + +LordNest + diff --git a/mods/admin_verbs/_admin_verbs.dm b/mods/admin_verbs/_admin_verbs.dm new file mode 100644 index 0000000000000..3ffdd8fdb235f --- /dev/null +++ b/mods/admin_verbs/_admin_verbs.dm @@ -0,0 +1,4 @@ +/singleton/modpack/admin_verbs + name = "Admin Verbs" + desc = "Мод, который добавляет различные функции для администраторов." + author = "LordNest" diff --git a/mods/admin_verbs/_admin_verbs.dme b/mods/admin_verbs/_admin_verbs.dme new file mode 100644 index 0000000000000..118a77b97d79e --- /dev/null +++ b/mods/admin_verbs/_admin_verbs.dme @@ -0,0 +1,7 @@ +#ifndef MODPACK_ADMIN +#define MODPACK_ADMIN + +#include "_admin_verbs.dm" +#include "code/spawn_verbs.dm" + +#endif diff --git a/mods/admin_verbs/code/spawn_verbs.dm b/mods/admin_verbs/code/spawn_verbs.dm new file mode 100644 index 0000000000000..1ebe232804da0 --- /dev/null +++ b/mods/admin_verbs/code/spawn_verbs.dm @@ -0,0 +1,35 @@ +/client/proc/respawn_as_self() + set name = "Respawn as Current Character" + set desc = "Respawn instantly with currenly loaded character on place." + set category = "Special Verbs" + + if(!check_rights(R_SPAWN)) + return + + var/input = ckey(input(src, "Specify which key will be respawned as their character.", "Respawn as Current Character", "[usr.ckey]") as text) + if(!input || input == "Cancel") + return + + var/client/C + for(var/client/find in GLOB.clients) + if(find.ckey == input) + C = find + break + + if(!C) + to_chat(usr, SPAN_WARNING("There is no active key like that in the game or the person is not currently a ghost.")) + return + + if(isnewplayer(C.mob)) + to_chat(usr, SPAN_WARNING("You can't use this on a new player.")) + return + + if(!C.prefs) + to_chat(usr, SPAN_WARNING("No preferences or client found.")) + return + + var/mob/oldmob = C.mob + var/mob/living/carbon/human/H = new(oldmob.loc) + C.prefs.copy_to(H) + H.key = C.key + qdel(oldmob) diff --git a/mods/fancy_sofas/_fancy_sofas.dme b/mods/fancy_sofas/_fancy_sofas.dme index 604c77b79c11c..480133b5709e3 100644 --- a/mods/fancy_sofas/_fancy_sofas.dme +++ b/mods/fancy_sofas/_fancy_sofas.dme @@ -7,3 +7,12 @@ #include "code/sofa.dm" #endif +// BEGIN_INTERNALS +// END_INTERNALS +// BEGIN_FILE_DIR +#define FILE_DIR . +// END_FILE_DIR +// BEGIN_PREFERENCES +// END_PREFERENCES +// BEGIN_INCLUDE +// END_INCLUDE diff --git a/packs/infinity/structures/holoplants.dm b/packs/infinity/structures/holoplants.dm index 99aa3b86511ce..0d81a88521356 100644 --- a/packs/infinity/structures/holoplants.dm +++ b/packs/infinity/structures/holoplants.dm @@ -52,7 +52,7 @@ GLOBAL_LIST_INIT(recomended_holoplants_colors, list(COLOR_PALE_RED_GRAY,COLOR_BL if(enabled) AddOverlays(plant) - set_light(1, brightness_on, plant_color) + set_light(3, brightness_on, plant_color) /obj/structure/holoplant/proc/change_plant(state) plant = prepare_icon(state) From 170154ab20f4c8c88a5678989ae3ddb90bf1c46b Mon Sep 17 00:00:00 2001 From: LordNest Date: Sun, 14 Jan 2024 15:55:17 +0400 Subject: [PATCH 06/19] =?UTF-8?q?=D0=BF=D1=80=D0=BE=D1=85=D0=BE=D0=B4?= =?UTF-8?q?=D0=B8=D0=BC=20=D1=82=D0=B5=D1=81=D1=82=D1=8B=20=D0=BC=D0=B5?= =?UTF-8?q?=D1=80=D0=BA=D0=B0=D0=BC=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mods/antagonists/code/mercenary.dm | 92 ++++++++++++++++++++---------- 1 file changed, 61 insertions(+), 31 deletions(-) diff --git a/mods/antagonists/code/mercenary.dm b/mods/antagonists/code/mercenary.dm index f8e82609e5fe7..6120ca071c946 100644 --- a/mods/antagonists/code/mercenary.dm +++ b/mods/antagonists/code/mercenary.dm @@ -15,75 +15,87 @@ Used for quick dress-up. Also comes with several discount desc = "Kit, filled with bioweaponery. It contains: Voidsuit, sprayer with bioterror mix, bioterror grenade and military pistol. Don't forget to turn your internals on!" item_cost = DEFAULT_TELECRYSTAL_AMOUNT antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/bioterror + path = /obj/structure/closet/crate/mercenary/bioterror /datum/uplink_item/item/mercenary/pyro name = "Pyro Kit" desc = "Kit, used for making FIRES! It contains: Special pyro voidsuit, flamethrower with 4 napalm canisters, 2 incendiary grenades and military pistol." item_cost = DEFAULT_TELECRYSTAL_AMOUNT antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/pyro + path = /obj/structure/closet/crate/mercenary/pyro /datum/uplink_item/item/mercenary/classic name = "Classic Kit" desc = "Old and faithful kit. It contains: Heavy armor, assault rifle, cryptographic sequencer and grenade." item_cost = DEFAULT_TELECRYSTAL_AMOUNT antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/classic + path = /obj/structure/closet/crate/mercenary/classic /datum/uplink_item/item/mercenary/stealthy name = "Stealthy Kit" desc = "A special kit for stealthy operations. It contains: Chameleon kit, fake crew annoncement, freedom implant, cryptographic sequencer, plastic surgery kit, silensed pistol and clerical kit." item_cost = DEFAULT_TELECRYSTAL_AMOUNT antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/stealthy + path = /obj/structure/closet/crate/mercenary/stealthy /datum/uplink_item/item/mercenary/sniper name = "Sniper Kit" desc = "Fashionable kit for fashionable operatives. It contains: Cool-looking armor vest, disguised as a suit, thermal googles and sniper rifle with ammo." item_cost = DEFAULT_TELECRYSTAL_AMOUNT antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/sniper + path = /obj/structure/closet/crate/mercenary/sniper -/datum/uplink_item/item/mercenary/spaceass +/datum/uplink_item/item/mercenary/breacher name = "Breacher Kit" desc = "You're leading the assault. It contains: Heavy armor, 3 C-4 explosives, drum-fed shotgun and cryptographic sequencer." item_cost = DEFAULT_TELECRYSTAL_AMOUNT antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/spaceass + path = /obj/structure/closet/crate/mercenary/breacher /datum/uplink_item/item/mercenary/saboteur name = "Saboteur Kit" desc = "You want to sabotage ship systems? This kit is specially for you. It contains: Heavy armor, military pistol, flashdark, chameleon projector, cryptographic sequencer and some C-4 explosives." item_cost = DEFAULT_TELECRYSTAL_AMOUNT antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/saboteur + path = /obj/structure/closet/crate/mercenary/saboteur /datum/uplink_item/item/mercenary/medic name = "Field Medic Kit" desc = "This kit can provide almost everything for combat medic. It contains: Heavy armor, military pistol, combat medkit, combat defibrilator and surgery kit." item_cost = DEFAULT_TELECRYSTAL_AMOUNT antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/medic + path = /obj/structure/closet/crate/mercenary/medic /datum/uplink_item/item/mercenary/heavy name = "Heavy Kit" desc = "This kit is for heavy gunners. It contains: Heavy armor, energy shield, grenade and L6 Saw machinegun." item_cost = DEFAULT_TELECRYSTAL_AMOUNT * 2 antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/heavy + path = /obj/structure/closet/crate/mercenary/heavy /datum/uplink_item/item/mercenary/netrunner name = "Netrunner Kit" desc = "This kit is can provide some help in hacking of ship systems. It contains: Hacker rig, camera MIU, some computers and cryptographic sequencer." item_cost = DEFAULT_TELECRYSTAL_AMOUNT antag_roles = list(MODE_MERCENARY) - path = /obj/item/storage/backpack/dufflebag/syndie_kit/netrunner + path = /obj/structure/closet/crate/mercenary/netrunner // What's inside the box -/obj/item/storage/backpack/dufflebag/syndie_kit/bioterror - startswith = list( +/singleton/closet_appearance/crate/mercenary + color = COLOR_DARK_GUNMETAL + decals = list( + "crate_stripes" = COLOR_MAROON + ) + +/obj/structure/closet/crate/mercenary + name = "gorlex marauders crate" + desc = "A mercenary equipment crate." + +/obj/structure/closet/crate/mercenary/bioterror + +/obj/structure/closet/crate/mercenary/bioterror/WillContain() + return list( /obj/item/clothing/mask/gas/syndicate, /obj/item/tank/oxygen_emergency_double, /obj/item/reagent_containers/spray/chemsprayer/bioterror, @@ -91,8 +103,10 @@ Used for quick dress-up. Also comes with several discount /obj/item/gun/projectile/pistol/optimus ) -/obj/item/storage/backpack/dufflebag/syndie_kit/pyro - startswith = list( +/obj/structure/closet/crate/mercenary/pyro + +/obj/structure/closet/crate/mercenary/pyro/WillContain() + return list( /obj/item/clothing/suit/space/void/merc/heavy/prepared, /obj/item/clothing/mask/gas/syndicate, /obj/item/tank/oxygen_emergency_double, @@ -102,8 +116,10 @@ Used for quick dress-up. Also comes with several discount /obj/item/gun/projectile/pistol/optimus ) -/obj/item/storage/backpack/dufflebag/syndie_kit/classic - startswith = list( +/obj/structure/closet/crate/mercenary/classic + +/obj/structure/closet/crate/mercenary/classic/WillContain() + return list( /obj/item/clothing/suit/armor/pcarrier/merc, /obj/item/clothing/head/helmet/merc, /obj/item/gun/projectile/automatic/assault_rifle, @@ -111,8 +127,10 @@ Used for quick dress-up. Also comes with several discount /obj/item/card/emag ) -/obj/item/storage/backpack/dufflebag/syndie_kit/stealthy - startswith = list( +/obj/structure/closet/crate/mercenary/stealthy + +/obj/structure/closet/crate/mercenary/stealthy/WillContain() + return list( /obj/item/storage/box/syndie_kit/chameleon = 2, /obj/item/storage/box/syndie_kit/silenced, /obj/item/storage/box/syndie_kit/spy, @@ -125,8 +143,10 @@ Used for quick dress-up. Also comes with several discount /obj/item/card/emag ) -/obj/item/storage/backpack/dufflebag/syndie_kit/sniper - startswith = list( +/obj/structure/closet/crate/mercenary/sniper + +/obj/structure/closet/crate/mercenary/sniper/WillContain() + return list( /obj/item/clothing/under/det, /obj/item/clothing/suit/storage/leather_jacket/armored, /obj/item/gun/projectile/heavysniper, @@ -134,8 +154,10 @@ Used for quick dress-up. Also comes with several discount /obj/item/clothing/glasses/thermal/syndi ) -/obj/item/storage/backpack/dufflebag/syndie_kit/spaceass - startswith = list( +/obj/structure/closet/crate/mercenary/breacher + +/obj/structure/closet/crate/mercenary/breacher/WillContain() + return list( /obj/item/clothing/suit/armor/pcarrier/merc, /obj/item/clothing/head/helmet/merc, /obj/item/gun/projectile/shotgun/magshot, @@ -145,8 +167,10 @@ Used for quick dress-up. Also comes with several discount /obj/item/card/emag ) -/obj/item/storage/backpack/dufflebag/syndie_kit/saboteur - startswith = list( +/obj/structure/closet/crate/mercenary/saboteur + +/obj/structure/closet/crate/mercenary/saboteur/WillContain() + return list( /obj/item/clothing/suit/armor/pcarrier/merc, /obj/item/clothing/head/helmet/merc, /obj/item/device/flashlight/flashdark, @@ -156,8 +180,10 @@ Used for quick dress-up. Also comes with several discount /obj/item/card/emag ) -/obj/item/storage/backpack/dufflebag/syndie_kit/medic - startswith = list( +/obj/structure/closet/crate/mercenary/medic + +/obj/structure/closet/crate/mercenary/medic/WillContain() + return list( /obj/item/clothing/suit/armor/pcarrier/merc, /obj/item/clothing/head/helmet/merc, /obj/item/storage/firstaid/combat, @@ -166,8 +192,10 @@ Used for quick dress-up. Also comes with several discount /obj/item/gun/projectile/pistol/optimus, ) -/obj/item/storage/backpack/dufflebag/syndie_kit/heavy - startswith = list( +/obj/structure/closet/crate/mercenary/heavy + +/obj/structure/closet/crate/mercenary/heavy/WillContain() + return list( /obj/item/clothing/suit/space/void/merc/heavy/prepared, /obj/item/gun/projectile/automatic/l6_saw, /obj/item/ammo_magazine/box/machinegun = 3, @@ -175,8 +203,10 @@ Used for quick dress-up. Also comes with several discount /obj/item/shield/energy ) -/obj/item/storage/backpack/dufflebag/syndie_kit/netrunner - startswith = list( +/obj/structure/closet/crate/mercenary/netrunner + +/obj/structure/closet/crate/mercenary/netrunner/WillContain() + return list( /obj/item/rig/light/hacker/runner, /obj/item/modular_computer/laptop/preset/custom_loadout/advanced, /obj/item/modular_computer/tablet/preset/custom_loadout/advanced, From 6066239340a722335b1e7cb08100084e358d6ce4 Mon Sep 17 00:00:00 2001 From: LordNest Date: Sun, 14 Jan 2024 16:27:16 +0400 Subject: [PATCH 07/19] =?UTF-8?q?=D0=B7=D0=B0=D0=B1=D1=8B=D0=BB=20=D1=8F?= =?UTF-8?q?=D1=89=D0=B8=D0=BA=20=D0=BD=D0=BE=D1=80=D0=BC=D0=B0=D0=BB=D1=8C?= =?UTF-8?q?=D0=BD=D0=BE=20=D1=81=D0=B4=D0=B5=D0=BB=D0=B0=D1=82=D1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- maps/sierra/structures/closets/_closets_appearances.dm | 1 + maps/sierra/structures/closets/engineering.dm | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/maps/sierra/structures/closets/_closets_appearances.dm b/maps/sierra/structures/closets/_closets_appearances.dm index 4df2e316e1fe2..b82158661abf9 100644 --- a/maps/sierra/structures/closets/_closets_appearances.dm +++ b/maps/sierra/structures/closets/_closets_appearances.dm @@ -146,6 +146,7 @@ extra_decals = list( "stripe_vertical_mid_partial" = COLOR_PALE_ORANGE, "stripe_vertical_right_partial" = COLOR_PALE_ORANGE, + "eng_narrow" = COLOR_PALE_ORANGE ) /singleton/closet_appearance/secure_closet/sierra/engineering/ce diff --git a/maps/sierra/structures/closets/engineering.dm b/maps/sierra/structures/closets/engineering.dm index 0ce1389a3089f..d2498d3e0dcaf 100644 --- a/maps/sierra/structures/closets/engineering.dm +++ b/maps/sierra/structures/closets/engineering.dm @@ -137,7 +137,7 @@ req_access = list(access_network_admin) closet_appearance = /singleton/closet_appearance/secure_closet/sierra/engineering/infotech -/obj/structure/closet/secure_closet/atmos_sierra/WillContain() +/obj/structure/closet/secure_closet/infotech_sierra/WillContain() return list( /obj/item/storage/box/PDAs, /obj/item/modular_computer/laptop/preset/custom_loadout/standard, From 92c907d40a79972449f6ef1a0f52704e3427670b Mon Sep 17 00:00:00 2001 From: LordNest Date: Sun, 14 Jan 2024 17:02:34 +0400 Subject: [PATCH 08/19] =?UTF-8?q?=D0=B7=D0=B0=D0=B1=D1=8B=D0=BB,=20=D1=81?= =?UTF-8?q?=D0=B5=D0=B9=D1=87=D0=B0=D1=81=20=D0=B2=D1=81=D0=BF=D0=BE=D0=BC?= =?UTF-8?q?=D0=BD=D0=B8=D0=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mods/ntnet/code/NTNet-items.dm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/mods/ntnet/code/NTNet-items.dm b/mods/ntnet/code/NTNet-items.dm index 412b54fda22aa..5950a898a4412 100644 --- a/mods/ntnet/code/NTNet-items.dm +++ b/mods/ntnet/code/NTNet-items.dm @@ -27,6 +27,16 @@ if(hasHUD(user, HUD_IT) && arePowerSystemsOn()) to_chat(user, SPAN_INFO(SPAN_ITALIC("You may notice a small hologram that says: [NTNet_id]"))) +/obj/machinery/power/apc/examine(mob/user) + . = ..() + if(hasHUD(user, HUD_IT) && has_electronics && terminal()) + to_chat(user, SPAN_INFO(SPAN_ITALIC("You may notice a small hologram that says: [NTNet_id]"))) + +/obj/machinery/firealarm/examine(mob/user) + . = ..() + if(hasHUD(user, HUD_IT)) + to_chat(user, SPAN_INFO(SPAN_ITALIC("You may notice a small hologram that says: [NTNet_id]"))) + /obj/item/modular_computer/examine(mob/user) . = ..() if(hasHUD(user, HUD_IT)) From abbb7a74e87197793a5e5b10bc466ee7b9a8398a Mon Sep 17 00:00:00 2001 From: LordNest <77477080+LordNest@users.noreply.github.com> Date: Sun, 14 Jan 2024 19:40:00 +0400 Subject: [PATCH 09/19] Update code/modules/mob/living/carbon/human/inventory.dm Co-authored-by: SuhEugene <32931701+SuhEugene@users.noreply.github.com> --- code/modules/mob/living/carbon/human/inventory.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index 4ffe199027e28..410b45b483090 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -21,7 +21,7 @@ This saves us from having to call add_fingerprint() any time something is put in update_inv_l_hand(0) else update_inv_r_hand(0) - // [SIERRA-ADD] + // [SIERRA-ADD] - SSINPUT // Try put it in their toolbelt if(istype(src.belt, /obj/item/storage)) var/obj/item/storage/belt = src.belt From 3a4b337af333c122da8af27f8968d99095ce5ed7 Mon Sep 17 00:00:00 2001 From: LordNest Date: Sun, 14 Jan 2024 22:10:36 +0400 Subject: [PATCH 10/19] delete mod --- code/modules/admin/admin_verbs.dm | 2 +- maps/sierra/sierra.dm | 1 - mods/admin_verbs/README.md | 79 ---------------------- mods/admin_verbs/_admin_verbs.dm | 4 -- mods/admin_verbs/_admin_verbs.dme | 7 -- mods/admin_verbs/code/spawn_verbs.dm | 35 ---------- mods/client_verbs/README.md | 3 +- mods/client_verbs/code/respawn_as_human.dm | 6 +- 8 files changed, 6 insertions(+), 131 deletions(-) delete mode 100644 mods/admin_verbs/README.md delete mode 100644 mods/admin_verbs/_admin_verbs.dm delete mode 100644 mods/admin_verbs/_admin_verbs.dme delete mode 100644 mods/admin_verbs/code/spawn_verbs.dm diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 032366c96a819..3d5e61049ca8f 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -144,7 +144,7 @@ var/global/list/admin_verbs_spawn = list( /datum/admins/proc/spawn_atom, // allows us to spawn instances, /datum/admins/proc/spawn_artifact, /client/proc/spawn_chemdisp_cartridge, - // [SIERRA-ADD] - admin_verbs + // [SIERRA-ADD] - CLIENT_VERBS /client/proc/respawn_as_self, // [/SIERRA-ADD] /datum/admins/proc/mass_debug_closet_icons diff --git a/maps/sierra/sierra.dm b/maps/sierra/sierra.dm index cdb43754d3b35..90eeee33e7e6a 100644 --- a/maps/sierra/sierra.dm +++ b/maps/sierra/sierra.dm @@ -174,7 +174,6 @@ #include "../../mods/_maps/sentinel/_map_sentinel.dme" #include "../../mods/_maps/farfleet/_map_farfleet.dme" - #include "../../mods/admin_verbs/_admin_verbs.dme" #include "../../mods/antagonists/_antagonists.dme" #include "../../mods/bluespace_kitty/_bluespace_kitty.dme" #include "../../mods/fancy_sofas/_fancy_sofas.dme" diff --git a/mods/admin_verbs/README.md b/mods/admin_verbs/README.md deleted file mode 100644 index d290abcf50500..0000000000000 --- a/mods/admin_verbs/README.md +++ /dev/null @@ -1,79 +0,0 @@ - -#### Список PRов: - -- https://github.com/SierraBay/SierraBay12/pull/##### - - - -## Admin verbs - -ID мода: ADMIN_VERBS - - -### Описание мода - -Этот мод служит примером для разработчиков и существует лишь для того, -чтобы его можно было легко скопировать и вставить в другое место. - - -### Изменения *кор кода* - -- `code/modules/admin/admin_verbs.dm`: `var/global/list/admin_verbs_spawn` - - -### Оверрайды - -- `mods/_master_files/sound/my_cool_sound.ogg` -- `mods/_master_files/code/my_modular_override.dm`: `proc/overriden_proc`, `var/overriden_var` - - -### Дефайны - -- `code/__defines/~mods/example.dm`: `EXAMPLE_SPEED_MULTIPLIER`, `EXAMPLE_SPEED_BASE` - - -### Используемые файлы, не содержащиеся в модпаке - -- `mods/_master_files/icons/obj/alien.dmi` - - -### Авторы: - -LordNest - diff --git a/mods/admin_verbs/_admin_verbs.dm b/mods/admin_verbs/_admin_verbs.dm deleted file mode 100644 index 3ffdd8fdb235f..0000000000000 --- a/mods/admin_verbs/_admin_verbs.dm +++ /dev/null @@ -1,4 +0,0 @@ -/singleton/modpack/admin_verbs - name = "Admin Verbs" - desc = "Мод, который добавляет различные функции для администраторов." - author = "LordNest" diff --git a/mods/admin_verbs/_admin_verbs.dme b/mods/admin_verbs/_admin_verbs.dme deleted file mode 100644 index 118a77b97d79e..0000000000000 --- a/mods/admin_verbs/_admin_verbs.dme +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef MODPACK_ADMIN -#define MODPACK_ADMIN - -#include "_admin_verbs.dm" -#include "code/spawn_verbs.dm" - -#endif diff --git a/mods/admin_verbs/code/spawn_verbs.dm b/mods/admin_verbs/code/spawn_verbs.dm deleted file mode 100644 index 1ebe232804da0..0000000000000 --- a/mods/admin_verbs/code/spawn_verbs.dm +++ /dev/null @@ -1,35 +0,0 @@ -/client/proc/respawn_as_self() - set name = "Respawn as Current Character" - set desc = "Respawn instantly with currenly loaded character on place." - set category = "Special Verbs" - - if(!check_rights(R_SPAWN)) - return - - var/input = ckey(input(src, "Specify which key will be respawned as their character.", "Respawn as Current Character", "[usr.ckey]") as text) - if(!input || input == "Cancel") - return - - var/client/C - for(var/client/find in GLOB.clients) - if(find.ckey == input) - C = find - break - - if(!C) - to_chat(usr, SPAN_WARNING("There is no active key like that in the game or the person is not currently a ghost.")) - return - - if(isnewplayer(C.mob)) - to_chat(usr, SPAN_WARNING("You can't use this on a new player.")) - return - - if(!C.prefs) - to_chat(usr, SPAN_WARNING("No preferences or client found.")) - return - - var/mob/oldmob = C.mob - var/mob/living/carbon/human/H = new(oldmob.loc) - C.prefs.copy_to(H) - H.key = C.key - qdel(oldmob) diff --git a/mods/client_verbs/README.md b/mods/client_verbs/README.md index 0501b13cc2a4d..c91d6ecf4f7fb 100644 --- a/mods/client_verbs/README.md +++ b/mods/client_verbs/README.md @@ -2,6 +2,7 @@ #### Список PRов: - https://github.com/SierraBay/SierraBay12/pull/1103 +- https://github.com/SierraBay/SierraBay12/pull/1798