mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
Merge pull request #6000 from FluffMedic/BehemothRework
Behemoth Rework and Loot
This commit is contained in:
137
modular_chomp/code/modules/clothing/spacesuits/rig/.behemoth.dm
Normal file
137
modular_chomp/code/modules/clothing/spacesuits/rig/.behemoth.dm
Normal file
@@ -0,0 +1,137 @@
|
||||
/obj/item/weapon/rig/ch/aegis
|
||||
name = "aegis control module"
|
||||
desc = "A hefty armor formed from fallen redspace construct."
|
||||
suit_type = "aegis hardsuit"
|
||||
icon = 'modular_chomp/icons/obj/rig_modules_ch.dmi'
|
||||
icon_state = "aegis_rig"
|
||||
armor = list(melee = 60, bullet = 60, laser = 60, energy = 30, bomb = 10, bio = 100, rad = 100)
|
||||
|
||||
slowdown = 6
|
||||
|
||||
chest_type = /obj/item/clothing/suit/space/rig/ch/aegis
|
||||
helm_type = /obj/item/clothing/head/helmet/space/rig/ch/aegis
|
||||
glove_type = /obj/item/clothing/gloves/gauntlets/rig/ch/aegis
|
||||
boot_type = /obj/item/clothing/shoes/magboots/rig/ch/aegis
|
||||
|
||||
/obj/item/clothing/suit/space/rig/ch/aegis
|
||||
name = "chassis"
|
||||
icon = 'icons/obj/clothing/spacesuits_ch.dmi'
|
||||
desc = "A heft chestplate, humming with energy."
|
||||
|
||||
/obj/item/clothing/head/helmet/space/rig/ch/aegis
|
||||
name = "helmet"
|
||||
icon = 'icons/obj/clothing/hats_ch.dmi'
|
||||
desc = "A protective dome for your head."
|
||||
|
||||
/obj/item/clothing/gloves/gauntlets/rig/ch/aegis
|
||||
name = "hardlight gloves"
|
||||
icon = 'icons/obj/clothing/gloves_ch.dmi'
|
||||
desc = "Gloves created with alien tech"
|
||||
var/block_chance = 15
|
||||
|
||||
/obj/item/clothing/shoes/magboots/rig/ch/aegis
|
||||
name = "hardlight boots"
|
||||
icon = 'icons/obj/clothing/shoes_ch.dmi'
|
||||
desc = "A pair of grabby boots"
|
||||
|
||||
/obj/item/weapon/rig/ch/behemoth/bullet_act(var/obj/item/projectile/P)
|
||||
var/reflectchance = 70 - round(P.damage)
|
||||
if(prob(reflectchance))
|
||||
visible_message("<span class='danger'>The [P.name] gets reflected by [src]'s shell!</span>", \
|
||||
"<span class='userdanger'>The [P.name] gets reflected by [src]'s shell!</span>")
|
||||
|
||||
// Find a turf near or on the original location to bounce to
|
||||
if(P.starting)
|
||||
var/new_x = P.starting.x + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/new_y = P.starting.y + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/turf/curloc = get_turf(src)
|
||||
|
||||
// redirect the projectile
|
||||
P.redirect(new_x, new_y, curloc, src)
|
||||
P.reflected = 1
|
||||
|
||||
return -1 // complete projectile permutation
|
||||
|
||||
return (..(P))
|
||||
|
||||
/obj/item/clothing/suit/space/rig/ch/aegis/bullet_act(var/obj/item/projectile/P)
|
||||
var/reflectchance = 70 - round(P.damage)
|
||||
if(prob(reflectchance))
|
||||
visible_message("<span class='danger'>The [P.name] gets reflected by [src]'s shell!</span>", \
|
||||
"<span class='userdanger'>The [P.name] gets reflected by [src]'s shell!</span>")
|
||||
|
||||
// Find a turf near or on the original location to bounce to
|
||||
if(P.starting)
|
||||
var/new_x = P.starting.x + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/new_y = P.starting.y + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/turf/curloc = get_turf(src)
|
||||
|
||||
// redirect the projectile
|
||||
P.redirect(new_x, new_y, curloc, src)
|
||||
P.reflected = 1
|
||||
|
||||
return -1 // complete projectile permutation
|
||||
|
||||
return (..(P))
|
||||
|
||||
/obj/item/clothing/head/helmet/space/rig/ch/aegis/bullet_act(var/obj/item/projectile/P)
|
||||
var/reflectchance = 70 - round(P.damage)
|
||||
if(prob(reflectchance))
|
||||
visible_message("<span class='danger'>The [P.name] gets reflected by [src]'s shell!</span>", \
|
||||
"<span class='userdanger'>The [P.name] gets reflected by [src]'s shell!</span>")
|
||||
|
||||
// Find a turf near or on the original location to bounce to
|
||||
if(P.starting)
|
||||
var/new_x = P.starting.x + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/new_y = P.starting.y + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/turf/curloc = get_turf(src)
|
||||
|
||||
// redirect the projectile
|
||||
P.redirect(new_x, new_y, curloc, src)
|
||||
P.reflected = 1
|
||||
|
||||
return -1 // complete projectile permutation
|
||||
|
||||
return (..(P))
|
||||
|
||||
|
||||
/obj/item/clothing/gloves/gauntlets/rig/ch/aegis/bullet_act(var/obj/item/projectile/P)
|
||||
var/reflectchance = 70 - round(P.damage)
|
||||
if(prob(reflectchance))
|
||||
visible_message("<span class='danger'>The [P.name] gets reflected by [src]'s shell!</span>", \
|
||||
"<span class='userdanger'>The [P.name] gets reflected by [src]'s shell!</span>")
|
||||
|
||||
// Find a turf near or on the original location to bounce to
|
||||
if(P.starting)
|
||||
var/new_x = P.starting.x + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/new_y = P.starting.y + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/turf/curloc = get_turf(src)
|
||||
|
||||
// redirect the projectile
|
||||
P.redirect(new_x, new_y, curloc, src)
|
||||
P.reflected = 1
|
||||
|
||||
return -1 // complete projectile permutation
|
||||
|
||||
return (..(P))
|
||||
|
||||
|
||||
/obj/item/clothing/shoes/magboots/rig/ch/aegis/bullet_act(var/obj/item/projectile/P)
|
||||
var/reflectchance = 70 - round(P.damage)
|
||||
if(prob(reflectchance))
|
||||
visible_message("<span class='danger'>The [P.name] gets reflected by [src]'s shell!</span>", \
|
||||
"<span class='userdanger'>The [P.name] gets reflected by [src]'s shell!</span>")
|
||||
|
||||
// Find a turf near or on the original location to bounce to
|
||||
if(P.starting)
|
||||
var/new_x = P.starting.x + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/new_y = P.starting.y + pick(0, 0, -1, 1, -2, 2, -2, 2, -2, 2, -3, 3, -3, 3)
|
||||
var/turf/curloc = get_turf(src)
|
||||
|
||||
// redirect the projectile
|
||||
P.redirect(new_x, new_y, curloc, src)
|
||||
P.reflected = 1
|
||||
|
||||
return -1 // complete projectile permutation
|
||||
|
||||
return (..(P))
|
||||
Reference in New Issue
Block a user