mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-20 22:54:46 +00:00
## About The Pull Request <details> - renamed ai folder to announcer -- announcer -- - moved vox_fem to announcer - moved approachingTG to announcer - separated the ambience folder into ambience and instrumental -- ambience -- - created holy folder moved all related sounds there - created engineering folder and moved all related sounds there - created security folder and moved ambidet there - created general folder and moved ambigen there - created icemoon folder and moved all icebox-related ambience there - created medical folder and moved all medbay-related ambi there - created ruin folder and moves all ruins ambi there - created beach folder and moved seag and shore there - created lavaland folder and moved related ambi there - created aurora_caelus folder and placed its ambi there - created misc folder and moved the rest of the files that don't have a specific category into it -- instrumental -- - moved traitor folder here - created lobby_music folder and placed our songs there (title0 not used anywhere? - server-side modification?) -- items -- - moved secdeath to hailer - moved surgery to handling -- effects -- - moved chemistry into effects - moved hallucinations into effects - moved health into effects - moved magic into effects -- vehicles -- - moved mecha into vehicles created mobs folder -- mobs -- - moved creatures folder into mobs - moved voice into mobs renamed creatures to non-humanoids renamed voice to humanoids -- non-humanoids-- created cyborg folder created hiss folder moved harmalarm.ogg to cyborg -- humanoids -- -- misc -- moved ghostwhisper to misc moved insane_low_laugh to misc I give up trying to document this. </details> - [X] ambience - [x] announcer - [x] effects - [X] instrumental - [x] items - [x] machines - [x] misc - [X] mobs - [X] runtime - [X] vehicles - [ ] attributions ## Why It's Good For The Game This folder is so disorganized that it's vomit inducing, will make it easier to find and add new sounds, providng a minor structure to the sound folder. ## Changelog 🆑 grungussuss refactor: the sound folder in the source code has been reorganized, please report any oddities with sounds playing or not playing server: lobby music has been repathed to sound/music/lobby_music /🆑
90 lines
3.4 KiB
Plaintext
90 lines
3.4 KiB
Plaintext
/obj/projectile/bullet/cannonball
|
|
name = "cannonball"
|
|
icon_state = "cannonball"
|
|
damage = 110 //gets set to 100 before first mob impact.
|
|
sharpness = NONE
|
|
wound_bonus = 0
|
|
projectile_piercing = ALL
|
|
dismemberment = 0
|
|
paralyze = 5 SECONDS
|
|
stutter = 20 SECONDS
|
|
embed_type = null
|
|
hitsound = 'sound/effects/meteorimpact.ogg'
|
|
hitsound_wall = 'sound/items/weapons/sonic_jackhammer.ogg'
|
|
/// If our cannonball hits something, it reduces the damage by this value.
|
|
var/damage_decrease_on_hit = 10
|
|
/// This is the cutoff point of our cannonball, so that it stops piercing past this value.
|
|
var/stop_piercing_threshold = 40
|
|
/// This is the damage value we do to objects on hit. Usually, more than the actual projectile damage
|
|
var/object_damage = 80
|
|
/// Whether or not our cannonball loses object damage upon hitting an object.
|
|
var/object_damage_decreases = FALSE
|
|
/// How much our object damage decreases on hit, similar to normal damage.
|
|
var/object_damage_decrease_on_hit = 0
|
|
|
|
/obj/projectile/bullet/cannonball/on_hit(atom/target, blocked = 0, pierce_hit)
|
|
damage -= damage_decrease_on_hit
|
|
if(object_damage_decreases)
|
|
object_damage -= min(damage, object_damage_decrease_on_hit)
|
|
if(damage < stop_piercing_threshold)
|
|
projectile_piercing = NONE //so it finishes its rampage
|
|
if(blocked == 100)
|
|
return ..()
|
|
if(isobj(target))
|
|
var/obj/hit_object = target
|
|
hit_object.take_damage(object_damage, BRUTE, BULLET, FALSE)
|
|
else if(isclosedturf(target))
|
|
damage -= max(damage - 30, 10) //lose extra momentum from busting through a wall
|
|
if(!isindestructiblewall(target))
|
|
var/turf/closed/hit_turf = target
|
|
hit_turf.ScrapeAway()
|
|
return ..()
|
|
|
|
/obj/projectile/bullet/cannonball/explosive
|
|
name = "explosive shell"
|
|
color = COLOR_RED
|
|
projectile_piercing = NONE
|
|
damage = 40 //set to 30 before first mob impact, but they're gonna be gibbed by the explosion
|
|
|
|
/obj/projectile/bullet/cannonball/explosive/on_hit(atom/target, blocked = 0, pierce_hit)
|
|
explosion(target, devastation_range = 2, heavy_impact_range = 3, light_impact_range = 4, explosion_cause = src)
|
|
. = ..()
|
|
|
|
/obj/projectile/bullet/cannonball/emp
|
|
name = "malfunction shot"
|
|
icon_state = "emp_cannonball"
|
|
projectile_piercing = NONE
|
|
damage = 15 //very low
|
|
|
|
/obj/projectile/bullet/cannonball/emp/on_hit(atom/target, blocked = 0, pierce_hit)
|
|
empulse(src, 4, 10)
|
|
. = ..()
|
|
|
|
/obj/projectile/bullet/cannonball/biggest_one
|
|
name = "\"The Biggest One\""
|
|
icon_state = "biggest_one"
|
|
damage = 70 //low pierce
|
|
|
|
/obj/projectile/bullet/cannonball/biggest_one/on_hit(atom/target, blocked = 0, pierce_hit)
|
|
if(projectile_piercing == NONE)
|
|
explosion(target, devastation_range = GLOB.MAX_EX_DEVESTATION_RANGE, heavy_impact_range = GLOB.MAX_EX_HEAVY_RANGE, light_impact_range = GLOB.MAX_EX_LIGHT_RANGE, flash_range = GLOB.MAX_EX_FLASH_RANGE, explosion_cause = src)
|
|
. = ..()
|
|
|
|
/obj/projectile/bullet/cannonball/trashball
|
|
name = "trashball"
|
|
icon_state = "trashball"
|
|
damage = 90 //better than the biggest one but no explosion, so kinda just a worse normal cannonball
|
|
|
|
/obj/projectile/bullet/cannonball/meteorslug
|
|
name = "meteorslug"
|
|
icon = 'icons/obj/meteor.dmi'
|
|
icon_state = "small"
|
|
damage = 40 //REALLY not as bad as a real cannonball but they'll fucking hurt
|
|
paralyze = 1 SECONDS //The original stunned, okay?
|
|
knockdown = 8 SECONDS
|
|
stutter = null
|
|
stop_piercing_threshold = 10
|
|
object_damage_decreases = TRUE
|
|
object_damage_decrease_on_hit = 40
|
|
range = 7 //let's keep it a bit sane, okay?
|