Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
TGS Test Merge (#8079)
Browse files Browse the repository at this point in the history
cm13-github committed Jan 26, 2025
2 parents 253ad6a + afa885b commit 295ca48
Showing 22 changed files with 47 additions and 15 deletions.
11 changes: 0 additions & 11 deletions code/datums/research_upgrade_datum.dm
Original file line number Diff line number Diff line change
@@ -89,17 +89,6 @@
name = "Items"
behavior = RESEARCH_UPGRADE_CATEGORY

/datum/research_upgrades/item/research_credits
name = "Research Credits"
desc = "Sell the data acquired to the nearest Weyland-Yutani Science division team for 8 or 9 points."
value_upgrade = 2000
behavior = RESEARCH_UPGRADE_ITEM
upgrade_type = ITEM_ACCESSORY_UPGRADE
item_reference = /obj/item/research_upgrades/credits
change_purchase = 500
maximum_price = 5000
clearance_req = 5

/datum/research_upgrades/item/laser_scalpel
name = "Laser Scalpel"
desc = "An advanced, robust version of the normal scalpel, allowing it to pierce through thick skin and chitin alike with extreme ease."
12 changes: 12 additions & 0 deletions code/game/objects/items/research_upgrades.dm
Original file line number Diff line number Diff line change
@@ -44,6 +44,7 @@
/obj/item/research_upgrades/autodoc/Initialize(mapload, value)
. = ..()
src.value = value
name = "AutoDoc Upgrade ([get_upgrade_name()])."
desc = "Research upgrade for an AutoDoc. The technology on this disk is used [get_upgrade_text()]. Insert it in an AutoDoc to use it."

/obj/item/research_upgrades/autodoc/proc/get_upgrade_text()
@@ -57,6 +58,17 @@
if(RESEARCH_UPGRADE_TIER_4)
return "for extracting unknown parasites"

/obj/item/research_upgrades/autodoc/proc/get_upgrade_name()
switch(value)
if(RESEARCH_UPGRADE_TIER_1)
return "Internal Bleeding"
if(RESEARCH_UPGRADE_TIER_2)
return "Bone Fracture"
if(RESEARCH_UPGRADE_TIER_3)
return "Organ Repair"
if(RESEARCH_UPGRADE_TIER_4)
return "Embryo Removal"

/obj/item/research_upgrades/sleeper
name = "Research Upgrade (Sleeper)"
desc = "Research upgrade for a sleeper system. The technology on this disk is used on a sleeper to allow a wider spectrum of chemicals to be administered."
3 changes: 3 additions & 0 deletions code/modules/mob/living/carbon/xenomorph/Xenomorph.dm
Original file line number Diff line number Diff line change
@@ -252,6 +252,8 @@
var/organ_removed = FALSE
/// value of organ in each caste, e.g. 10k is autodoc larva removal. runner is 500
var/organ_value = 0
///value of chem credits of organ in each caste. Main way of research to gain more chem credits.
var/organ_chem_value = 0


//////////////////////////////////////////////////////////////////
@@ -355,6 +357,7 @@
if(organ_value != 0)
var/obj/item/organ/xeno/organ = new() //give
organ.forceMove(src)
organ.credit_value = organ_chem_value
organ.research_value = organ_value
organ.caste_origin = caste_type
organ.icon_state = get_organ_icon()
Original file line number Diff line number Diff line change
@@ -53,6 +53,7 @@
base_pixel_y = -20
tier = 2
organ_value = 1500
organ_chem_value = 3

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
1 change: 1 addition & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Carrier.dm
Original file line number Diff line number Diff line change
@@ -59,6 +59,7 @@
pixel_x = -16 //Needed for 2x2
old_x = -16
organ_value = 1000
organ_chem_value = 2

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
2 changes: 2 additions & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Crusher.dm
Original file line number Diff line number Diff line change
@@ -52,6 +52,8 @@

rebounds = FALSE // no more fucking pinball crooshers
organ_value = 3000
organ_chem_value = 6

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
/datum/action/xeno_action/onclick/regurgitate,
Original file line number Diff line number Diff line change
@@ -40,6 +40,7 @@
old_x = -16
tier = 1
organ_value = 1000
organ_chem_value = 2

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
1 change: 1 addition & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Drone.dm
Original file line number Diff line number Diff line change
@@ -54,6 +54,7 @@
plasma_types = list(PLASMA_PURPLE)
tier = 1
organ_value = 800
organ_chem_value = 1
pixel_x = -12
old_x = -12
base_actions = list(
Original file line number Diff line number Diff line change
@@ -57,6 +57,7 @@
drag_delay = 6 //pulling a big dead xeno is hard
tier = 2
organ_value = 1500
organ_chem_value = 3

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
1 change: 1 addition & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/King.dm
Original file line number Diff line number Diff line change
@@ -42,6 +42,7 @@
small_explosives_stun = FALSE
counts_for_slots = FALSE
organ_value = 50000
organ_chem_value = 70

claw_type = CLAW_TYPE_VERY_SHARP
age = -1
2 changes: 2 additions & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Lurker.dm
Original file line number Diff line number Diff line change
@@ -39,6 +39,8 @@
old_x = -12
tier = 2
organ_value = 2000
organ_chem_value = 4

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
/datum/action/xeno_action/onclick/regurgitate,
Original file line number Diff line number Diff line change
@@ -53,6 +53,7 @@
drag_delay = 6 //pulling a big dead xeno is hard
tier = 3
organ_value = 3000
organ_chem_value = 6

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
Original file line number Diff line number Diff line change
@@ -50,6 +50,7 @@
mob_size = MOB_SIZE_BIG
tier = 1
organ_value = 20000
organ_chem_value = 30
age = XENO_NO_AGE //Predaliens are already in their ultimate form, they don't get even better
show_age_prefix = FALSE
small_explosives_stun = FALSE
1 change: 1 addition & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Queen.dm
Original file line number Diff line number Diff line change
@@ -275,6 +275,7 @@
small_explosives_stun = FALSE
pull_speed = 3 //screech/neurodragging is cancer, at the very absolute least get some runner to do it for teamwork
organ_value = 8000 // queen is expensive
organ_chem_value = 12

icon_xeno = 'icons/mob/xenos/castes/tier_4/queen.dmi'
icon_xenonid = 'icons/mob/xenonids/castes/tier_4/queen.dmi'
2 changes: 2 additions & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Ravager.dm
Original file line number Diff line number Diff line change
@@ -51,6 +51,8 @@
old_x = -16
claw_type = CLAW_TYPE_VERY_SHARP
organ_value = 3000
organ_chem_value = 6

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
/datum/action/xeno_action/onclick/regurgitate,
1 change: 1 addition & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Runner.dm
Original file line number Diff line number Diff line change
@@ -48,6 +48,7 @@
pull_speed = -0.5
viewsize = 9
organ_value = 500 //worthless
organ_chem_value = 1

mob_size = MOB_SIZE_XENO_SMALL

Original file line number Diff line number Diff line change
@@ -40,6 +40,7 @@
old_x = -12
tier = 1
organ_value = 800
organ_chem_value = 1
base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
/datum/action/xeno_action/onclick/regurgitate,
2 changes: 2 additions & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Spitter.dm
Original file line number Diff line number Diff line change
@@ -41,7 +41,9 @@
pixel_x = -12
old_x = -12
organ_value = 2000
organ_chem_value = 4
tier = 2

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
/datum/action/xeno_action/onclick/regurgitate,
2 changes: 2 additions & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Warrior.dm
Original file line number Diff line number Diff line change
@@ -44,6 +44,8 @@
tier = 2
pull_speed = 2 // about what it was before, slightly faster
organ_value = 2000
organ_chem_value = 4

base_actions = list(
/datum/action/xeno_action/onclick/xeno_resting,
/datum/action/xeno_action/onclick/regurgitate,
2 changes: 2 additions & 0 deletions code/modules/organs/organ_objects.dm
Original file line number Diff line number Diff line change
@@ -131,6 +131,8 @@
black_market_value = 60
///value of the organ in the recycler, heavily varies from size and tier
var/research_value = 1 //depending on the size and tier
///value of the organ in chem credits when inserted into recycler, sligthly varies from size and tier
var/credit_value = 1
///the caste in a string, which is used in a xenoanalyzer
var/caste_origin // used for desc in xenoanalyzer

Original file line number Diff line number Diff line change
@@ -81,6 +81,7 @@
data["organ"] = TRUE
data["caste"] = caste_of_organ
data["value"] = organ.research_value
data["credits"] = organ.credit_value
else
data["organ"] = FALSE
data["upgrades"] = list()
@@ -117,7 +118,7 @@
if("process_organ")
if(!busy)
busy = TRUE
addtimer(CALLBACK(src, PROC_REF(process_organ), organ.research_value), 2 SECONDS)
addtimer(CALLBACK(src, PROC_REF(process_organ), organ.research_value, organ.credit_value), 2 SECONDS)
flick("xeno_analyzer_on_moving", src)
playsound(loc, 'sound/machines/blender.ogg', 25, TRUE)
QDEL_NULL(organ)
@@ -137,11 +138,11 @@
organ.forceMove(get_turf(src))
organ = null

/obj/structure/machinery/xenoanalyzer/proc/process_organ(biomass_points_to_add)
/obj/structure/machinery/xenoanalyzer/proc/process_organ(biomass_points_to_add, credits_to_add)
biomass_points += biomass_points_to_add
icon_state = "xeno_analyzer"
busy = FALSE

GLOB.chemical_data.update_credits(credits_to_add)

/obj/structure/machinery/xenoanalyzer/proc/start_print_upgrade(produce_path, mob/user)
if(stat & NOPOWER)
6 changes: 5 additions & 1 deletion tgui/packages/tgui/interfaces/XenomorphExtractor.jsx
Original file line number Diff line number Diff line change
@@ -23,6 +23,7 @@ export const XenomorphExtractor = () => {
upgrades,
caste,
value,
credits,
categories,
current_clearance,
is_x_level,
@@ -54,7 +55,10 @@ export const XenomorphExtractor = () => {
>
{!organ
? 'Process Biomass'
: 'Process Biomass, Expected value : ' + value}
: 'Process Biomass, Expected value : ' +
value +
' | Credit value : ' +
credits}
</Button>
</Stack.Item>
<Stack.Item>

0 comments on commit 295ca48

Please sign in to comment.