Adds basilisk hide and hivelord cores as mining rig upgrades (#33244)

* added basilisk and hivelord armor

* change laser from 90 to 50

* Update mining_mobs.dm

* rad from 100 to 50

* laser down to 30, changed scaling to 5 from 10

* lower energy to 30?

* Update mining_mobs.dm
This commit is contained in:
adacovsk
2022-09-14 11:59:40 -04:00
committed by GitHub
parent a8a2bf0d61
commit e15d9b6033
11 changed files with 114 additions and 53 deletions

View File

@@ -3,19 +3,21 @@
#define HIDES_IDENTITY_NEVER -1 #define HIDES_IDENTITY_NEVER -1
//clothing flags //clothing flags
#define MASKINTERNALS 1 // mask allows internals #define MASKINTERNALS (1 << 0) // mask allows internals
#define NOSLIP 2 //prevents from slipping on wet floors, etc #define NOSLIP (1 << 1) //prevents from slipping on wet floors, etc
#define BLOCK_GAS_SMOKE_EFFECT 4 //blocks the effect that chemical clouds would have on a mob #define BLOCK_GAS_SMOKE_EFFECT (1 << 2) //blocks the effect that chemical clouds would have on a mob
#define ONESIZEFITSALL 8 #define ONESIZEFITSALL (1 << 3)
#define PLASMAGUARD 16 //Does not get contaminated by plasma. #define PLASMAGUARD (1 << 4) //Does not get contaminated by plasma.
#define BLOCK_BREATHING 32 //When worn, prevents breathing! #define BLOCK_BREATHING (1 << 5) //When worn, prevents breathing!
#define GOLIATHREINFORCE 64 #define GOLIATH_REINFORCEABLE (1 << 6)
#define CANEXTINGUISH 128 #define HIVELORD_REINFORCEABLE (1 << 7)
#define CONTAINPLASMAMAN 256 #define BASILISK_REINFORCEABLE (1 << 8)
#define IGNORE_LUBE 512 #define CANEXTINGUISH (1 << 9)
#define MAGPULSE 1024 //prevents slipping in space, singulo pulling, etc #define CONTAINPLASMAMAN (1 << 10)
#define GENDERFIT 2048 //Toggles gender fitting so it appends _f for female mob icon. #define IGNORE_LUBE (1 << 11)
#define COLORS_OVERLAY 4096 //if toggled on, the color variable will also modify the color of how it looks on the wearer #define MAGPULSE (1 << 12) //prevents slipping in space, singulo pulling, etc
#define GENDERFIT (1 << 13) //Toggles gender fitting so it appends _f for female mob icon.
#define COLORS_OVERLAY (1 << 14)//if toggled on, the color variable will also modify the color of how it looks on the wearer
//clothing audible emote flags //clothing audible emote flags
#define CLOTHING_SOUND_SCREAM "scream" #define CLOTHING_SOUND_SCREAM "scream"

View File

@@ -250,14 +250,14 @@
icon_state = "vox-pressure" icon_state = "vox-pressure"
item_state = "vox-pressure" item_state = "vox-pressure"
desc = "A huge, pressurized suit, designed for distinctly nonhuman proportions. It looks unusually cheap, even for Vox." desc = "A huge, pressurized suit, designed for distinctly nonhuman proportions. It looks unusually cheap, even for Vox."
clothing_flags = GOLIATHREINFORCE clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
/obj/item/clothing/head/helmet/space/vox/civ/trader //brownhelmet /obj/item/clothing/head/helmet/space/vox/civ/trader //brownhelmet
name = "alien helmet" name = "alien helmet"
icon_state = "vox-pressure" icon_state = "vox-pressure"
item_state = "vox-pressure" item_state = "vox-pressure"
desc = "Hey, wasn't this a prop in \'The Abyss\'?" desc = "Hey, wasn't this a prop in \'The Abyss\'?"
clothing_flags = GOLIATHREINFORCE clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
/obj/item/clothing/suit/space/vox/civ/trader/flex /obj/item/clothing/suit/space/vox/civ/trader/flex
name = "flexible trader pressure suit" name = "flexible trader pressure suit"
@@ -409,12 +409,12 @@
/obj/item/clothing/suit/space/vox/civ/mining /obj/item/clothing/suit/space/vox/civ/mining
name = "vox mining pressure suit" name = "vox mining pressure suit"
icon_state = "vox-civ-mining" icon_state = "vox-civ-mining"
clothing_flags = GOLIATHREINFORCE clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
/obj/item/clothing/head/helmet/space/vox/civ/mining /obj/item/clothing/head/helmet/space/vox/civ/mining
name = "vox mining pressure helmet" name = "vox mining pressure helmet"
icon_state = "vox-civ-mining" icon_state = "vox-civ-mining"
clothing_flags = GOLIATHREINFORCE clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
//Engineering //Engineering
/obj/item/clothing/suit/space/vox/civ/engineer /obj/item/clothing/suit/space/vox/civ/engineer

View File

@@ -223,14 +223,14 @@
icon_state = "plasmamanMiner_suit" icon_state = "plasmamanMiner_suit"
armor = list(melee = 30, bullet = 5, laser = 15,energy = 5, bomb = 30, bio = 100, rad = 20) armor = list(melee = 30, bullet = 5, laser = 15,energy = 5, bomb = 30, bio = 100, rad = 20)
slowdown = HARDSUIT_SLOWDOWN_LOW slowdown = HARDSUIT_SLOWDOWN_LOW
clothing_flags = GOLIATHREINFORCE|CONTAINPLASMAMAN clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE|CONTAINPLASMAMAN
/obj/item/clothing/head/helmet/space/plasmaman/miner /obj/item/clothing/head/helmet/space/plasmaman/miner
name = "plasmaman miner helmet" name = "plasmaman miner helmet"
icon_state = "plasmamanMiner_helmet0" icon_state = "plasmamanMiner_helmet0"
base_state = "plasmamanMiner_helmet" base_state = "plasmamanMiner_helmet"
armor = list(melee = 30, bullet = 5, laser = 15,energy = 5, bomb = 30, bio = 100, rad = 20) armor = list(melee = 30, bullet = 5, laser = 15,energy = 5, bomb = 30, bio = 100, rad = 20)
clothing_flags = GOLIATHREINFORCE|CONTAINPLASMAMAN clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE|CONTAINPLASMAMAN
// MEDSCI // MEDSCI

View File

@@ -74,7 +74,7 @@
species_restricted = list("exclude",VOX_SHAPED) species_restricted = list("exclude",VOX_SHAPED)
armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 10) armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 10)
pressure_resistance = 40 * ONE_ATMOSPHERE pressure_resistance = 40 * ONE_ATMOSPHERE
clothing_flags = GOLIATHREINFORCE clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
/obj/item/clothing/suit/space/rig/mining /obj/item/clothing/suit/space/rig/mining
icon_state = "rig-mining" icon_state = "rig-mining"
@@ -85,7 +85,7 @@
species_restricted = list("exclude",VOX_SHAPED) species_restricted = list("exclude",VOX_SHAPED)
armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 10) armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 10)
pressure_resistance = 40 * ONE_ATMOSPHERE pressure_resistance = 40 * ONE_ATMOSPHERE
clothing_flags = GOLIATHREINFORCE clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
head_type = /obj/item/clothing/head/helmet/space/rig/mining head_type = /obj/item/clothing/head/helmet/space/rig/mining
allowed = list( allowed = list(
/obj/item/device/flashlight, /obj/item/device/flashlight,
@@ -522,7 +522,7 @@
species_fit = list(GREY_SHAPED) species_fit = list(GREY_SHAPED)
species_restricted = list("exclude",VOX_SHAPED) species_restricted = list("exclude",VOX_SHAPED)
_color = "knight" _color = "knight"
clothing_flags = PLASMAGUARD|GOLIATHREINFORCE clothing_flags = PLASMAGUARD|GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
/obj/item/clothing/suit/space/rig/knight /obj/item/clothing/suit/space/rig/knight
@@ -536,7 +536,7 @@
siemens_coefficient = 0.5 siemens_coefficient = 0.5
species_fit = list(GREY_SHAPED) species_fit = list(GREY_SHAPED)
species_restricted = list("exclude",VOX_SHAPED) species_restricted = list("exclude",VOX_SHAPED)
clothing_flags = PLASMAGUARD|GOLIATHREINFORCE clothing_flags = PLASMAGUARD|GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
head_type = /obj/item/clothing/head/helmet/space/rig/knight head_type = /obj/item/clothing/head/helmet/space/rig/knight
/obj/item/clothing/head/helmet/space/rig/knight/black /obj/item/clothing/head/helmet/space/rig/knight/black
@@ -646,7 +646,7 @@
item_state = "rorsuit" item_state = "rorsuit"
species_fit = list(INSECT_SHAPED) species_fit = list(INSECT_SHAPED)
armor = list(melee = 40, bullet = 0, laser = 0,energy = 0, bomb = 65, bio = 100, rad = 50) armor = list(melee = 40, bullet = 0, laser = 0,energy = 0, bomb = 65, bio = 100, rad = 50)
clothing_flags = GOLIATHREINFORCE clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
head_type = /obj/item/clothing/head/helmet/space/rig/ror head_type = /obj/item/clothing/head/helmet/space/rig/ror
/obj/item/clothing/head/helmet/space/rig/ror /obj/item/clothing/head/helmet/space/rig/ror
@@ -656,7 +656,7 @@
item_state = "rorhelm" item_state = "rorhelm"
species_fit = list(INSECT_SHAPED) species_fit = list(INSECT_SHAPED)
armor = list(melee = 40, bullet = 0, laser = 0,energy = 0, bomb = 65, bio = 100, rad = 50) armor = list(melee = 40, bullet = 0, laser = 0,energy = 0, bomb = 65, bio = 100, rad = 50)
clothing_flags = GOLIATHREINFORCE clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
/obj/item/clothing/head/helmet/space/rig/ror/update_icon() /obj/item/clothing/head/helmet/space/rig/ror/update_icon()
return return

View File

@@ -176,7 +176,7 @@
body_parts_covered = ARMS|LEGS|FULL_TORSO|FEET|HANDS body_parts_covered = ARMS|LEGS|FULL_TORSO|FEET|HANDS
slowdown = HARDSUIT_SLOWDOWN_LOW slowdown = HARDSUIT_SLOWDOWN_LOW
armor = list(melee = 40, bullet = 5, laser = 5, energy = 5, bomb = 0, bio = 0, rad = 0) armor = list(melee = 40, bullet = 5, laser = 5, energy = 5, bomb = 0, bio = 0, rad = 0)
clothing_flags = GOLIATHREINFORCE clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
/obj/item/clothing/suit/armor/samurai /obj/item/clothing/suit/armor/samurai

View File

@@ -134,16 +134,42 @@
if(3.0) if(3.0)
adjustBruteLoss(110) adjustBruteLoss(110)
/obj/item/asteroid/basilisk_hide /mob/living/simple_animal/hostile/asteroid/basilisk/death(var/gibbed = FALSE)
name = "basilisk crystals" visible_message("<span class='danger'>\The [src] shatters before dying, leaving some diamond ore.</span>")
desc = "You shouldn't ever see this."
icon = 'icons/obj/mining.dmi'
icon_state = "Diamond ore"
/obj/item/asteroid/basilisk_hide/New()
drop_stack(/obj/item/stack/ore/diamond, loc, 2) drop_stack(/obj/item/stack/ore/diamond, loc, 2)
..() ..(gibbed)
qdel(src)
/obj/item/asteroid/basilisk_hide
name = "basilisk hide"
desc = "Diamond-studded hide."
icon = 'icons/obj/items.dmi'
icon_state = "basilisk_hide"
/obj/item/asteroid/basilisk_hide/afterattack(atom/target, mob/user, proximity_flag)
if(!(proximity_flag && istype(target, /obj/item/clothing)))
return
var/obj/item/clothing/C = target
if(!(C.clothing_flags & BASILISK_REINFORCEABLE))
return
C.clothing_flags &= ~HIVELORD_REINFORCEABLE
C.clothing_flags &= ~GOLIATH_REINFORCEABLE
var/current_armor = C.armor
C.hidecount++
if(current_armor["laser"] < 30)
current_armor["laser"] = min(current_armor["laser"] + 5, 30)
to_chat(user, "<span class='info'>You strengthen [target], improving its dissipation of lasers.</span>")
qdel(src)
else
to_chat(user, "<span class='info'>You can't improve [C] any further.</span>")
if(has_icon(C.icon, "[initial(C.item_state)]_basilisk[C.hidecount]"))
C.name = "reinforced [initial(C.name)]"
C.item_state = "[initial(C.item_state)]_basilisk[C.hidecount]"
C.icon_state = "[initial(C.icon_state)]_basilisk[C.hidecount]"
C._color = "mining_basilisk[C.hidecount]"
if(user.is_wearing_item(C))
user.regenerate_icons()
/mob/living/simple_animal/hostile/asteroid/goldgrub /mob/living/simple_animal/hostile/asteroid/goldgrub
name = "goldgrub" name = "goldgrub"
@@ -373,6 +399,33 @@
else else
return ..() return ..()
/obj/item/asteroid/hivelord_core/afterattack(atom/target, mob/user, proximity_flag)
if(!(proximity_flag && istype(target, /obj/item/clothing)))
return
var/obj/item/clothing/C = target
if(!(C.clothing_flags & HIVELORD_REINFORCEABLE))
return
C.clothing_flags &= ~GOLIATH_REINFORCEABLE
C.clothing_flags &= ~BASILISK_REINFORCEABLE
var/current_armor = C.armor
C.hidecount++
if(current_armor["bio"] < 100 || current_armor["rad"] < 50)
current_armor["bio"] = min(current_armor["bio"] + 10, 100)
current_armor["rad"] = min(current_armor["rad"] + 10, 50)
to_chat(user, "<span class='info'>You strengthen [target], improving its resistance against biological and radiological attacks.</span>")
qdel(src)
else
to_chat(user, "<span class='info'>You can't improve [C] any further.</span>")
if(has_icon(C.icon, "[initial(C.item_state)]_hivelord[C.hidecount]"))
C.name = "reinforced [initial(C.name)]"
C.item_state = "[initial(C.item_state)]_hivelord[C.hidecount]"
C.icon_state = "[initial(C.icon_state)]_hivelord[C.hidecount]"
C._color = "mining_hivelord[C.hidecount]"
if(user.is_wearing_item(C))
user.regenerate_icons()
/obj/item/asteroid/hivelord_core/attack_self(mob/user as mob) /obj/item/asteroid/hivelord_core/attack_self(mob/user as mob)
if (iscarbon(user)) if (iscarbon(user))
return consume(user, user) return consume(user, user)
@@ -548,24 +601,30 @@
w_class = W_CLASS_MEDIUM w_class = W_CLASS_MEDIUM
/obj/item/asteroid/goliath_hide/afterattack(atom/target, mob/user, proximity_flag) /obj/item/asteroid/goliath_hide/afterattack(atom/target, mob/user, proximity_flag)
if(proximity_flag && istype(target, /obj/item/clothing)) if(!(proximity_flag && istype(target, /obj/item/clothing)))
var/obj/item/clothing/C = target return
var/current_armor = C.armor var/obj/item/clothing/C = target
if(C.clothing_flags & GOLIATHREINFORCE) if(!(C.clothing_flags & GOLIATH_REINFORCEABLE))
C.hidecount ++ return
if(current_armor["melee"] < 90)
current_armor["melee"] = min(current_armor["melee"] + 10, 90) C.clothing_flags &= ~HIVELORD_REINFORCEABLE
to_chat(user, "<span class='info'>You strengthen [target], improving its resistance against melee attacks.</span>") C.clothing_flags &= ~BASILISK_REINFORCEABLE
qdel(src)
else var/current_armor = C.armor
to_chat(user, "<span class='info'>You can't improve [C] any further.</span>") C.hidecount++
if(has_icon(C.icon, "[initial(C.item_state)]_goliath[C.hidecount]")) if(current_armor["melee"] < 90)
C.name = "reinforced [initial(C.name)]" current_armor["melee"] = min(current_armor["melee"] + 10, 90)
C.item_state = "[initial(C.item_state)]_goliath[C.hidecount]" to_chat(user, "<span class='info'>You strengthen [target], improving its resistance against melee attacks.</span>")
C.icon_state = "[initial(C.icon_state)]_goliath[C.hidecount]" qdel(src)
C._color = "mining_goliath[C.hidecount]" else
if(user.is_wearing_item(C)) to_chat(user, "<span class='info'>You can't improve [C] any further.</span>")
user.regenerate_icons() if(has_icon(C.icon, "[initial(C.item_state)]_goliath[C.hidecount]"))
C.name = "reinforced [initial(C.name)]"
C.item_state = "[initial(C.item_state)]_goliath[C.hidecount]"
C.icon_state = "[initial(C.icon_state)]_goliath[C.hidecount]"
C._color = "mining_goliath[C.hidecount]"
if(user.is_wearing_item(C))
user.regenerate_icons()
/mob/living/simple_animal/hostile/asteroid/goliath/david /mob/living/simple_animal/hostile/asteroid/goliath/david
name = "david" name = "david"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 KiB

After

Width:  |  Height:  |  Size: 235 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 444 KiB

After

Width:  |  Height:  |  Size: 457 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 KiB

After

Width:  |  Height:  |  Size: 158 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 193 KiB

After

Width:  |  Height:  |  Size: 196 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 109 KiB