Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dense obstruction tweaks #3566

Merged
merged 1 commit into from
Jul 15, 2024
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 45 additions & 23 deletions code/modules/halo/structures/dense_obstructions.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,16 @@
plane = ABOVE_HUMAN_PLANE
density = 1
opacity = 1
alpha = 150
alpha = 200
pixel_x = 0
health = 1250
maxHealth = 1250
closerange_freefire = 0
bump_climb = 1
mob_climb_time = 4 SECONDS
mob_climb_time = 2 SECONDS
explosion_damage_mult = 0.1
loot_types = list()
scrap_types = list()
var/list/states_ignore = list("rocks_1","rocks_2","rocks_3","rocks_4") //States in the provided icon file to ignore whilst randomising tree type.
var/max_offset = 12
var/min_offset = -12
Expand All @@ -39,11 +41,11 @@
var/list/valid_Istates = icon_obj.IconStates() - states_ignore
qdel(icon_obj)
for(var/iter = 0 to obstruction_num)
var/image/I = image(icon,pick(valid_Istates))
var/image/I = image(icon,icon_state=pick(valid_Istates))
var/x_offset = rand(min_offset,max_offset)
var/y_offset = rand(min_offset,max_offset)
I.pixel_x = src.pixel_x + x_offset
I.pixel_y = src.pixel_y + y_offset
I.pixel_x = x_offset
I.pixel_y = y_offset
I.alpha = alpha
overlays += I
else
Expand All @@ -59,17 +61,33 @@


//Variants//
/obj/structure/destructible/dense_obstruction/grass_and_shrub
name = "grass and shrubbery"
desc = "Wide patches of grass and shrubbery. Can, rarely, hinder gunfire. Easy to walk over. Can be destroyed with enough concentrated firepower."
icon = 'code/modules/halo/flora/swamp_ausflora.dmi'
icon_state = "busha_1"
plane = OBJ_PLANE
density = 0
opacity = 0
states_ignore = list("rock_1","rock_2","rock_3","rock_4","rock_5")
cover_rating = 5
max_offset = 16
min_offset = -16
obstruction_num = 8

/obj/structure/destructible/dense_obstruction/flora_assorted
name = "dense flora"
desc = "Hard to see through, but easy to move through. Provides minimal protection against gunfire. Can be destroyed with enough concentrated firepower."
desc = "Patches of assorted flora. Can be seen through and moved over. Provides minimal protection against gunfire. Can be destroyed with enough concentrated firepower."
icon = 'code/modules/halo/flora/ausflora.dmi'
icon_state = "fern_1"
plane = ABOVE_HUMAN_PLANE
density = 0
opacity = 0
cover_rating = 20
states_ignore = list() //States in the provided icon file to ignore whilst randomising tree type.
max_offset = 7
min_offset = -7
obstruction_num = 4
max_offset = 12
min_offset = -12
obstruction_num = 6

/obj/structure/destructible/dense_obstruction/flora_jungle
name = "dense flora"
Expand All @@ -78,7 +96,7 @@
icon_state = "bush_1"
density = 0
cover_rating = 20
states_ignore = list("rocks_1","rocks_2","rocks_3","rocks_4") //States in the provided icon file to ignore whilst randomising tree type.
states_ignore = list("busha1",) //States in the provided icon file to ignore whilst randomising tree type.
max_offset = 10
min_offset = -10
obstruction_num = 6
Expand All @@ -88,7 +106,8 @@
desc = "Hard to see through, and hard to move through. Provides minimal protection against gunfire. Can be destroyed with enough concentrated firepower."
icon = 'code/modules/halo/flora/swamp_ausflora_large.dmi'
icon_state = "bush_1"
pixel_x = -16
pixel_x = -24
pixel_y = -12
cover_rating = 30
states_ignore = list("rocks_1","rocks_2","rocks_3","rocks_4") //States in the provided icon file to ignore whilst randomising tree type.
max_offset = 10
Expand All @@ -98,10 +117,10 @@
/obj/structure/destructible/dense_obstruction/rocks
name = "boulders"
desc = "Hard to see through, and hard to move through. Provides significant protection against gunfire. Can be destroyed with enough concentrated firepower."
icon = 'code/modules/halo/flora/jungleflora.dmi'
icon_state = "rocks_1"
icon = 'code/modules/halo/flora/swamp_ausflora.dmi'
icon_state = "rock_1"
cover_rating = 60
states_ignore = list("bush_1","bush_2","bush_3") //States in the provided icon file to ignore whilst randomising tree type.
states_ignore = list("busha_1","busha_2","busha_3","bushb_1","bushb_2","bushb_3","bushc_1","bushc_2","bushc_3","grassa_1","grassa_2","grassa_3","grassa_4","grassa_5","grassa_6","grassa_7","grassa_8","grassa_9","grassa_10","grassa_11")
max_offset = 10
min_offset = -10
obstruction_num = 5
Expand All @@ -111,9 +130,10 @@
desc = "Hard to see through, and hard to move through. Provides significant protection against gunfire. Can be destroyed with enough concentrated firepower."
icon = 'code/modules/halo/flora/swamp_ausflora_large.dmi'
icon_state = "rocks_1"
pixel_x = -16
pixel_x = -24
pixel_y = -12
cover_rating = 60
states_ignore = list("bush_1","bush_2","bush_3") //States in the provided icon file to ignore whilst randomising tree type.
states_ignore = list("bush_1","bush_2","bush_3")
max_offset = 10
min_offset = -10
obstruction_num = 3
Expand All @@ -123,23 +143,25 @@
desc = "Hard to see through, and hard to move through. Provides excellent protection against gunfire. Can be destroyed with enough concentrated firepower."
icon = 'code/modules/halo/flora/jungletree.dmi'
icon_state = "tree_1"
alpha = 170
cover_rating = 80
states_ignore = list() //States in the provided icon file to ignore whilst randomising tree type.
states_ignore = list()
pixel_x = -32
pixel_y = -6
max_offset = 7
min_offset = -7
max_offset = 8
min_offset = -8
obstruction_num = 2

/obj/structure/destructible/dense_obstruction/trees_large
name = "dense trees"
desc = "Hard to see through, and hard to move through. Provides excellent protection against gunfire. Can be destroyed with enough concentrated firepower."
icon = 'code/modules/halo/flora/jungletreelarge.dmi'
icon_state = "tree_1"
alpha = 170
cover_rating = 80
states_ignore = list() //States in the provided icon file to ignore whilst randomising tree type.
pixel_x = -64
states_ignore = list()
pixel_x = -48
pixel_y = -16
max_offset = 7
min_offset = -7
max_offset = 8
min_offset = -8
obstruction_num = 2
Loading