Skip to content

Commit

Permalink
Merge branch 'vlggms:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
tile4 authored Oct 1, 2024
2 parents a7f507a + 70e2976 commit 7abe952
Show file tree
Hide file tree
Showing 112 changed files with 1,926 additions and 769 deletions.
32 changes: 16 additions & 16 deletions .github/workflows/ci_suite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,19 +14,19 @@ jobs:
env:
TG_BOOTSTRAP_NODE_LINUX: 1
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Setup SpacemanDMM cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: $HOME/SpacemanDMM
key: ${{ runner.os }}-spacemandmm
- name: Setup bootstrap cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: tools/bootstrap/.cache
key: ${{ runner.os }}-bootstrap
- name: Setup yarn cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: tgui/.yarn/cache
key: ${{ runner.os }}-yarn
Expand Down Expand Up @@ -59,19 +59,19 @@ jobs:
env:
TG_BOOTSTRAP_NODE_LINUX: 1
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Setup BYOND cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: $HOME/BYOND
key: ${{ runner.os }}-byond
- name: Setup bootstrap cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: tools/bootstrap/.cache
key: ${{ runner.os }}-bootstrap
- name: Setup yarn cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: tgui/.yarn/cache
key: ${{ runner.os }}-yarn
Expand All @@ -98,19 +98,19 @@ jobs:
- 3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Setup BYOND cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: $HOME/BYOND
key: ${{ runner.os }}-byond
- name: Setup bootstrap cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: tools/bootstrap/.cache
key: ${{ runner.os }}-bootstrap
- name: Setup yarn cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: tgui/.yarn/cache
key: ${{ runner.os }}-yarn
Expand Down Expand Up @@ -140,14 +140,14 @@ jobs:
name: Windows Build
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Setup bootstrap cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: tools/bootstrap/.cache
key: ${{ runner.os }}-bootstrap
- name: Setup yarn cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: tgui/.yarn/cache
key: ${{ runner.os }}-yarn
Expand All @@ -160,7 +160,7 @@ jobs:
md deploy
bash tools/deploy.sh ./deploy
- name: Deploy artifact
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: deploy
path: deploy
Binary file modified ModularTegustation/Teguicons/32x32.dmi
Binary file not shown.
Binary file modified ModularTegustation/Teguicons/48x48.dmi
Binary file not shown.
Binary file modified ModularTegustation/Teguicons/64x64.dmi
Binary file not shown.
Binary file added ModularTegustation/Teguicons/head_trophies.dmi
Binary file not shown.
Binary file modified ModularTegustation/Teguicons/status_sprites.dmi
Binary file not shown.
Binary file modified ModularTegustation/Teguicons/tegu_effects.dmi
Binary file not shown.
Binary file modified ModularTegustation/Teguicons/tegumobs.dmi
Binary file not shown.
51 changes: 51 additions & 0 deletions ModularTegustation/tegu_items/abnoconsole_upgrades.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
/*
* Work console upgrades.
*/
/obj/item/work_console_upgrade
name = "chemical extraction cell upgrade"
desc = "Attaches to the abnormality cell console of completely understood abnormalities and allows for the extraction of enkephalin-derived substances."
icon = 'ModularTegustation/Teguicons/teguitems.dmi'
icon_state = "abnochem_attachment"
var/upgrade_slot = ""

/obj/item/work_console_upgrade/attack_obj(obj/O, mob/living/user)
if(istype(O, /obj/machinery/computer/abnormality))
var/obj/machinery/computer/abnormality/work_machine = O
to_chat(user, span_notice("You start attaching \the [O] to \the [src]..."))
if(!UpgradeReq(O, user))
return
work_machine.InstallUpgrade(src,upgrade_slot)
src.desc += "\n[src] installation successful."
playsound(get_turf(O), 'sound/effects/servostep.ogg', 50, TRUE)
return
return ..()

/obj/item/work_console_upgrade/proc/UpgradeReq(obj/machinery/computer/abnormality/A, mob/living/installer)
if(!A)
return FALSE
if(A.mechanical_upgrades[upgrade_slot])
to_chat(installer, span_notice("Theres already a upgrade of this type installed."))
return FALSE
return TRUE

//Upgrade Subtypes

/obj/item/work_console_upgrade/chemical_extraction_attachment
name = "chemical extraction cell upgrade"
desc = "Attaches to the abnormality cell console of completely understood abnormalities and allows for the extraction of enkephalin-derived substances."
upgrade_slot = "abnochem"

/obj/item/work_console_upgrade/chemical_extraction_attachment/UpgradeReq(obj/machinery/computer/abnormality/A, mob/living/installer)
. = ..()
//If the root code returns FALSE just return that.
if(!.)
return
if(A.datum_reference.understanding < A.datum_reference.max_understanding)
to_chat(installer, span_notice("Abnormality is not yet fully understood."))
return FALSE

/obj/item/work_console_upgrade/work_prediction_attachment
name = "predictive workrate formula upgrade"
desc = "Using information collected from employee files and security footage this upgrade allows the user to see their success rate."
upgrade_slot = "workrate"
color = COLOR_SOFT_RED
40 changes: 40 additions & 0 deletions ModularTegustation/tegu_items/associations/head_trophies.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
/obj/item/head_trophy
name = "monster head"
desc = "You should not be seening this!"
icon = 'ModularTegustation/Teguicons/head_trophies.dmi'
icon_state = "steel_head"
w_class = WEIGHT_CLASS_TINY

/obj/item/head_trophy/steel_head
name = "g-corp manager head"
desc = "A head of an old manager, now laid to rest. This could be sold for good cash."

/obj/item/head_trophy/indigo_head
name = "red commander sweeper head"
desc = "The head of the commander sweeper Jacques. This could be sold for good cash."
icon_state = "indigo_red_head"

/obj/item/head_trophy/indigo_head/white
name = "white commander sweeper head"
desc = "The head of the commander sweeper Adelheide. This could be sold for good cash."
icon_state = "indigo_white_head"

/obj/item/head_trophy/indigo_head/black
name = "black commander sweeper head"
desc = "The head of the commander sweeper Maria. This could be sold for good cash."
icon_state = "indigo_black_head"

/obj/item/head_trophy/indigo_head/pale
name = "pale commander sweeper head"
desc = "The head of the commander sweeper Silvina. This could be sold for good cash."
icon_state = "indigo_pale_head"

/obj/item/head_trophy/green_datachip
name = "factory datachip"
desc = "A small datachip of the factory. This could be sold for good cash."
icon_state = "green_datachip"

/obj/item/head_trophy/flesh_head
name = "long flesh head"
desc = "A distorted head from a flesh abomination. This could be sold for good cash."
icon_state = "flesh_head"
4 changes: 4 additions & 0 deletions ModularTegustation/tegu_items/associations/machines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,15 @@
/obj/item/food/meat/slab/worm,
/obj/item/food/meat/slab/robot,
/obj/item/food/meat/slab/human/mutant/moth,
/obj/item/rawpe,
)
var/list/level_2 = list(
/obj/item/clothing/suit/armor/ego_gear/city,
/obj/item/ego_weapon/city,
/obj/item/gun/ego_gun,
/obj/item/head_trophy,
/obj/item/tape/resurgence,
/obj/item/refinedpe,
)
var/list/level_3 = list(
/obj/item/raw_anomaly_core,
Expand Down
5 changes: 5 additions & 0 deletions ModularTegustation/tegu_items/associations/vending.dm
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/obj/machinery/vending/hana
name = "\improper Hana vending"
desc = "A machine used to start your own office!."
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
product_slogans = "Start your career today!"
product_ads = "The best in the business!"
icon_state = "generic" //Placeholder
Expand Down Expand Up @@ -69,6 +70,7 @@
/obj/machinery/vending/weaving
name = "\improper Weaving Books/Tools"
desc = "A machine used to purchase new weaving recipes!"
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
product_slogans = "Read up on all of the city gear!"
product_ads = "Can't go with out it!"
icon_state = "sec"
Expand Down Expand Up @@ -99,6 +101,7 @@
/obj/machinery/vending/fixer
name = "\improper Fixer Equipment vending"
desc = "A machine used by fixers to get equipment"
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
product_slogans = "What's a fixer without gear?"
product_ads = "You need it!"
icon_state = "robotics"
Expand Down Expand Up @@ -191,6 +194,7 @@
/obj/machinery/vending/prosthetic
name = "\improper Prosthetic plus vending"
desc = "A machine used to purchase new prosthetic limbs"
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
product_slogans = "Looking good!"
product_ads = "You need it!"
icon_state = "robotics"
Expand Down Expand Up @@ -227,6 +231,7 @@
/obj/machinery/vending/prosthetic
name = "\improper Prosthetic plus vending"
desc = "A machine used to purchase new prosthetic limbs"
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF | FREEZE_PROOF
product_slogans = "Looking good!"
product_ads = "You need it!"
icon_state = "robotics"
Expand Down
45 changes: 41 additions & 4 deletions ModularTegustation/tegu_items/extraction/egodelivery.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,32 @@
icon_state = "coffin_empty"
var/selected_level = ZAYIN_LEVEL
var/obj/stored_item = null
var/obj/structure/extraction_belt/linked_structure

/obj/item/extraction/delivery/examine(mob/user)
. = ..()
if(linked_structure)
. += span_nicegreen("This tool is linked to an extraction arrival belt.")
else
. += span_red("This tool needs to be linked to an extraction arrival belt in order to perform E.G.O. returns.")

/obj/item/extraction/delivery/tool_action(mob/user)
if(!stored_item)
ui_interact(user)
return
user.playsound_local(user, 'sound/machines/terminal_prompt.ogg', 50, FALSE)
switch(tgui_alert(user,"Where will you send this [stored_item.name]?","E.G.O. Delivery Prompt",list("Here","An Agent","Cancel")))
switch(tgui_alert(user,"Where will you send this [stored_item.name]?","E.G.O. Delivery Prompt",list("Here","An Agent","Arrival", "Cancel")))
if("Here")
user.playsound_local(user, 'sound/machines/terminal_prompt_confirm.ogg', 50, FALSE)
user.playsound_local(user, 'sound/weapons/emitter2.ogg', 25, FALSE)
new stored_item(get_turf(src))
var/datum/effect_system/spark_spread/sparks = new
sparks.set_up(5, 1, get_turf(src))
sparks.attach(stored_item)
sparks.start()
stored_item = null
if(linked_structure)
var/obj/structure/return_pad/THEPAD = new(get_turf(src))
THEPAD.linked_structure = linked_structure
if("An Agent")
user.playsound_local(user, 'sound/machines/terminal_prompt_confirm.ogg', 50, FALSE)
var/M = input(user,"To whom would you like to send the E.G.O.?","Select Someone") as null|anything in AllLivingAgents()
Expand All @@ -29,15 +40,30 @@
to_chat(user, span_warning("Nobody was specified."))
return
new stored_item(get_turf(M))
user.playsound_local(user, 'sound/machines/twobeep.ogg', 50, FALSE)
playsound(get_turf(M), 'sound/machines/twobeep.ogg', 50, FALSE)
user.playsound_local(user, 'sound/weapons/emitter2.ogg', 25, FALSE)
playsound(get_turf(M), 'sound/weapons/emitter2.ogg', 25, FALSE)
to_chat(user, span_notice("[stored_item.name] has been shipped to [M]!"))
to_chat(M, span_notice("[stored_item.name] has been shipped to your location by the Extraction Officer!"))
var/datum/effect_system/spark_spread/sparks = new
sparks.set_up(5, 1, get_turf(M))
sparks.attach(stored_item)
sparks.start()
stored_item = null
if(linked_structure)
var/obj/structure/return_pad/THEPAD = new(get_turf(M))
THEPAD.linked_structure = linked_structure
if("Arrival")
if(!linked_structure)
user.playsound_local(user, 'sound/machines/terminal_prompt_deny.ogg', 50, FALSE)
to_chat(user, span_warning("ERROR - E.G.O. ARRIVAL BELT UNLINKED"))
return
user.playsound_local(user, 'sound/weapons/emitter2.ogg', 25, FALSE)
new stored_item(get_turf(linked_structure))
to_chat(user, span_notice("[stored_item.name] has been shipped to the extraction belt!"))
var/datum/effect_system/spark_spread/sparks = new
sparks.attach(stored_item)
sparks.start()
stored_item = null
if("Cancel")
user.playsound_local(user, 'sound/machines/terminal_prompt_deny.ogg', 50, FALSE)
update_icon()
Expand Down Expand Up @@ -117,3 +143,14 @@
icon_state = "coffin_empty"
return
icon_state = "coffin"

// Telepad-related code
/obj/item/extraction/delivery/pre_attack(atom/A, mob/living/user, params)
. = ..()
if(!tool_checks(user))
return FALSE //You can't do any special interactions
if(istype(A, /obj/structure/extraction_belt))
linked_structure = A
to_chat(usr, span_nicegreen("Device link successful."))
return FALSE
return TRUE
Loading

0 comments on commit 7abe952

Please sign in to comment.