mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-24 20:47:43 +01:00
Stasis Cage Exporting (#19612)
* sellable stasis cage * Sellable mobs * crate code cleanup * export fix * clamp * sold mobs should vanish
This commit is contained in:
@@ -27,23 +27,36 @@
|
||||
if(istype(AM,/obj/effect))
|
||||
return 0
|
||||
|
||||
var/final_output = span_boldnotice("\The [src] assesses the supply point value of \the [AM]...\n")
|
||||
var/final_output = span_boldnotice("\The [src] assesses the value of \the [AM]...\n")
|
||||
playsound(src, 'sound/machines/beep.ogg', 50, 1)
|
||||
|
||||
// Some things cannot be sold
|
||||
if(isliving(AM) || isstructure(AM) || isturf(AM))
|
||||
if(isliving(AM) || isturf(AM))
|
||||
final_output += span_danger("-Cannot be sold.")
|
||||
to_chat(user,final_output)
|
||||
return 0
|
||||
|
||||
// Get item value
|
||||
var/value = SEND_SIGNAL(AM,COMSIG_ITEM_SCAN_PROFIT)
|
||||
var/value = 0
|
||||
if(istype(AM,/obj/structure/closet/crate))
|
||||
// Scan all contents in crate
|
||||
for(var/atom/movable/thing in AM.contents)
|
||||
value += SEND_SIGNAL(thing,COMSIG_ITEM_SCAN_PROFIT)
|
||||
else
|
||||
// Get single item value
|
||||
value = SEND_SIGNAL(AM,COMSIG_ITEM_SCAN_PROFIT)
|
||||
|
||||
if(!value)
|
||||
final_output += span_danger("-It's worth nothing.")
|
||||
to_chat(user,final_output)
|
||||
return 0
|
||||
|
||||
// Stasis cages are for RESEARCH!
|
||||
if(istype(AM,/obj/structure/stasis_cage))
|
||||
final_output += span_notice("-Its contents can be studied for [value] research points.")
|
||||
to_chat(user,final_output)
|
||||
return value
|
||||
|
||||
var/price = SSsupply.points_to_cash(value)
|
||||
final_output += span_notice("-It can be sold for [value] points, or [price] [price > 1 ? "thalers" : "thaler"]")
|
||||
final_output += span_notice("-It can be sold for [value] supply points, or [price] [price > 1 ? "thalers" : "thaler"]")
|
||||
to_chat(user,final_output)
|
||||
return value
|
||||
|
||||
@@ -166,12 +166,14 @@
|
||||
var/heal_countdown = 5 //VOREStation Edit - A cooldown ticker for passive healing
|
||||
var/list/myid_access = list() //VOREStation Edit
|
||||
var/ID_provided = FALSE //VOREStation Edit
|
||||
// VOREStation Add: Move/Shoot/Attack delays based on damage
|
||||
var/damage_fatigue_mult = 1 // Our multiplier for how heavily mobs are affected by injury. [UPDATE THIS IF THE FORMULA CHANGES]: Formula = injury_level = round(rand(1,3) * damage_fatigue_mult * clamp(((rand(2,5) * (h / getMaxHealth())) - rand(0,2)), 1, 5))
|
||||
var/injury_level = 0 // What our injury level is. Rather than being the flat damage, this is the amount added to various delays to simulate injuries in a manner as lightweight as possible.
|
||||
var/threshold = 0.6 // When we start slowing down. Configure this setting per-mob. Default is 60%
|
||||
var/injury_enrages = FALSE // Do injuries enrage (aka strengthen) our mob? If yes, we'll interpret how hurt we are differently.
|
||||
// VOREStation Add End
|
||||
|
||||
// Stasis cage cargo export values
|
||||
var/export_research_value // Amount of research points gained when this mob is sold from cargo in a stasis cage
|
||||
var/export_research_diminished_max // Amount of mobs that can be sold before the value reaches its lowest point
|
||||
|
||||
var/has_recoloured = FALSE
|
||||
var/hunting_cooldown = 0
|
||||
|
||||
@@ -129,6 +129,8 @@
|
||||
|
||||
no_pull_when_living = TRUE
|
||||
|
||||
export_research_value = TECHWEB_TIER_1_POINTS
|
||||
export_research_diminished_max = 3
|
||||
|
||||
/mob/living/simple_mob/animal/giant_spider/Initialize(mapload)
|
||||
. = ..()
|
||||
|
||||
@@ -35,6 +35,9 @@
|
||||
|
||||
can_be_drop_prey = FALSE
|
||||
|
||||
export_research_value = TECHWEB_TIER_2_POINTS
|
||||
export_research_diminished_max = 4
|
||||
|
||||
/mob/living/simple_mob/animal/space/alien/drone
|
||||
name = "alien drone"
|
||||
icon_state = "aliend_running"
|
||||
|
||||
@@ -30,6 +30,9 @@
|
||||
can_be_drop_prey = FALSE
|
||||
allow_mind_transfer = TRUE
|
||||
|
||||
export_research_value = TECHWEB_TIER_1_POINTS
|
||||
export_research_diminished_max = 3
|
||||
|
||||
/datum/say_list/bear
|
||||
speak = list("RAWR!","Rawr!","GRR!","Growl!")
|
||||
emote_see = list("stares ferociously", "stomps")
|
||||
|
||||
@@ -67,6 +67,9 @@
|
||||
var/random_color = FALSE
|
||||
var/rarechance = 1
|
||||
|
||||
export_research_value = TECHWEB_TIER_1_POINTS
|
||||
export_research_diminished_max = 4
|
||||
|
||||
var/static/list/carp_colors = list(\
|
||||
"lightpurple" = "#c3b9f1", \
|
||||
"lightpink" = "#da77a8", \
|
||||
|
||||
@@ -110,6 +110,9 @@ I think I covered everything.
|
||||
special_attack_max_range = 10
|
||||
special_attack_cooldown = 80
|
||||
|
||||
export_research_value = TECHWEB_TIER_4_POINTS
|
||||
export_research_diminished_max = 2
|
||||
|
||||
plane = MOB_PLANE
|
||||
|
||||
//Dragon vars
|
||||
|
||||
@@ -78,6 +78,9 @@
|
||||
can_be_drop_prey = FALSE
|
||||
allow_mind_transfer = TRUE
|
||||
|
||||
export_research_value = TECHWEB_TIER_1_POINTS
|
||||
export_research_diminished_max = 3
|
||||
|
||||
/mob/living/simple_mob/vore/aggressive/corrupthound/prettyboi
|
||||
name = "corrupt corrupt hound"
|
||||
desc = "Bad boy machine broke as well. Seems an attempt was made to achieve a less threatening look, and this one is definitely having some conflicting feelings about it."
|
||||
|
||||
@@ -72,6 +72,9 @@
|
||||
|
||||
can_be_drop_prey = FALSE
|
||||
|
||||
export_research_value = TECHWEB_TIER_2_POINTS
|
||||
export_research_diminished_max = 3
|
||||
|
||||
/mob/living/simple_mob/vore/aggressive/deathclaw/Login()
|
||||
. = ..()
|
||||
if(!riding_datum)
|
||||
|
||||
@@ -58,6 +58,9 @@
|
||||
pain_emote_1p = list("yelp", "whine", "bark", "growl")
|
||||
pain_emote_3p = list("yelps", "whines", "barks", "growls")
|
||||
|
||||
export_research_value = TECHWEB_TIER_2_POINTS
|
||||
export_research_diminished_max = 3
|
||||
|
||||
/mob/living/simple_mob/vore/greatwolf/black
|
||||
name = "great black wolf"
|
||||
desc = "A massive black wolf with a sandy colored underside, and intimidating amber eyes. Much like a dire wolf, but bigger. Passive, until you give it a reason to not be."
|
||||
|
||||
@@ -53,6 +53,9 @@
|
||||
pain_emote_1p = list("yelp", "whine", "bark", "growl")
|
||||
pain_emote_3p = list("yelps", "whines", "barks", "growls")
|
||||
|
||||
export_research_value = TECHWEB_TIER_2_POINTS
|
||||
export_research_diminished_max = 2
|
||||
|
||||
/datum/category_item/catalogue/fauna/leopardmander
|
||||
name = "Sivian Fauna - Va'aen Drake"
|
||||
desc = "Classification: S Draconis uncia\
|
||||
|
||||
@@ -65,6 +65,9 @@ GLOBAL_VAR_INIT(moth_amount, 0)
|
||||
allow_mind_transfer = TRUE
|
||||
glow_override = TRUE
|
||||
|
||||
export_research_value = TECHWEB_TIER_1_POINTS
|
||||
export_research_diminished_max = 6
|
||||
|
||||
/datum/say_list/solargrub
|
||||
emote_see = list("squelches", "squishes")
|
||||
|
||||
|
||||
@@ -72,6 +72,9 @@
|
||||
|
||||
glow_override = TRUE
|
||||
|
||||
export_research_value = TECHWEB_TIER_2_POINTS
|
||||
export_research_diminished_max = 4
|
||||
|
||||
/datum/say_list/solarmoth
|
||||
emote_see = list("flutters")
|
||||
|
||||
|
||||
@@ -120,3 +120,6 @@
|
||||
|
||||
/mob/living/simple_mob/vore/aggressive
|
||||
mob_bump_flag = HEAVY
|
||||
|
||||
export_research_value = TECHWEB_TIER_1_POINTS
|
||||
export_research_diminished_max = 5
|
||||
|
||||
Reference in New Issue
Block a user