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

View File

@@ -250,14 +250,14 @@
icon_state = "vox-pressure"
item_state = "vox-pressure"
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
name = "alien helmet"
icon_state = "vox-pressure"
item_state = "vox-pressure"
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
name = "flexible trader pressure suit"
@@ -409,12 +409,12 @@
/obj/item/clothing/suit/space/vox/civ/mining
name = "vox mining pressure suit"
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
name = "vox mining pressure helmet"
icon_state = "vox-civ-mining"
clothing_flags = GOLIATHREINFORCE
clothing_flags = GOLIATH_REINFORCEABLE|HIVELORD_REINFORCEABLE|BASILISK_REINFORCEABLE
//Engineering
/obj/item/clothing/suit/space/vox/civ/engineer

View File

@@ -223,14 +223,14 @@
icon_state = "plasmamanMiner_suit"
armor = list(melee = 30, bullet = 5, laser = 15,energy = 5, bomb = 30, bio = 100, rad = 20)
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
name = "plasmaman miner helmet"
icon_state = "plasmamanMiner_helmet0"
base_state = "plasmamanMiner_helmet"
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

View File

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

View File

@@ -176,7 +176,7 @@
body_parts_covered = ARMS|LEGS|FULL_TORSO|FEET|HANDS
slowdown = HARDSUIT_SLOWDOWN_LOW
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

View File

@@ -134,16 +134,42 @@
if(3.0)
adjustBruteLoss(110)
/obj/item/asteroid/basilisk_hide
name = "basilisk crystals"
desc = "You shouldn't ever see this."
icon = 'icons/obj/mining.dmi'
icon_state = "Diamond ore"
/obj/item/asteroid/basilisk_hide/New()
/mob/living/simple_animal/hostile/asteroid/basilisk/death(var/gibbed = FALSE)
visible_message("<span class='danger'>\The [src] shatters before dying, leaving some diamond ore.</span>")
drop_stack(/obj/item/stack/ore/diamond, loc, 2)
..()
qdel(src)
..(gibbed)
/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
name = "goldgrub"
@@ -373,6 +399,33 @@
else
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)
if (iscarbon(user))
return consume(user, user)
@@ -548,24 +601,30 @@
w_class = W_CLASS_MEDIUM
/obj/item/asteroid/goliath_hide/afterattack(atom/target, mob/user, proximity_flag)
if(proximity_flag && istype(target, /obj/item/clothing))
var/obj/item/clothing/C = target
var/current_armor = C.armor
if(C.clothing_flags & GOLIATHREINFORCE)
C.hidecount ++
if(current_armor["melee"] < 90)
current_armor["melee"] = min(current_armor["melee"] + 10, 90)
to_chat(user, "<span class='info'>You strengthen [target], improving its resistance against melee 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)]_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()
if(!(proximity_flag && istype(target, /obj/item/clothing)))
return
var/obj/item/clothing/C = target
if(!(C.clothing_flags & GOLIATH_REINFORCEABLE))
return
C.clothing_flags &= ~HIVELORD_REINFORCEABLE
C.clothing_flags &= ~BASILISK_REINFORCEABLE
var/current_armor = C.armor
C.hidecount++
if(current_armor["melee"] < 90)
current_armor["melee"] = min(current_armor["melee"] + 10, 90)
to_chat(user, "<span class='info'>You strengthen [target], improving its resistance against melee 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)]_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
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