Standardised Contained Sprites : Now Atomic (#15142)

This commit is contained in:
Wowzewow (Wezzy)
2022-12-17 19:28:27 +08:00
committed by GitHub
parent 25e5f08bbd
commit e7aabb7e14
248 changed files with 341 additions and 324 deletions

View File

@@ -1,7 +1,7 @@
/obj/machinery/ammunition_loader
name = "ammunition loader"
desc = "An ammunition loader for ship weapons systems. All hands to battlestations!"
icon = 'icons/obj/machines/ship_guns/ship_weapon_attachments.dmi'
icon = 'icons/obj/machinery/ship_guns/ship_weapon_attachments.dmi'
icon_state = "ammo_loader"
density = TRUE
anchored = TRUE
@@ -89,7 +89,7 @@
/obj/structure/viewport
name = "viewport"
desc = "A viewport for some sort of ship-mounted weapon. You can see your enemies blow up into many, many bits and pieces from here."
icon = 'icons/obj/machines/ship_guns/ship_weapon_attachments.dmi'
icon = 'icons/obj/machinery/ship_guns/ship_weapon_attachments.dmi'
icon_state = "viewport_generic"
density = TRUE
opacity = FALSE

View File

@@ -1,7 +1,7 @@
/obj/machinery/ship_weapon
name = "ship weapon"
desc = "You shouldn't be seeing this."
icon = 'icons/obj/machines/ship_guns/longbow.dmi'
icon = 'icons/obj/machinery/ship_guns/longbow.dmi'
idle_power_usage = 1500
active_power_usage = 50000
anchored = TRUE
@@ -14,7 +14,7 @@
var/special_firing_mechanism = FALSE //If set to TRUE, the gun won't show up on normal controls.
var/charging_sound //The sound played when the gun is charging up.
var/caliber = SHIP_CALIBER_NONE
var/use_ammunition = TRUE //If we use physical ammo or not. Note that the creation of ammunition in pre_fire() is still REQUIRED!
var/use_ammunition = TRUE //If we use physical ammo or not. Note that the creation of ammunition in pre_fire() is still REQUIRED!
//This just skips the initial check for ammunition.
var/list/obj/item/ship_ammunition/ammunition = list()
var/ammo_per_shot = 1
@@ -108,7 +108,7 @@
if(istype(W, /obj/item/weldingtool) && damage)
var/obj/item/weldingtool/WT = W
if(WT.get_fuel() >= 20)
user.visible_message(SPAN_NOTICE("[user] starts slowly welding kinks and holes in \the [src] back to working shape..."),
user.visible_message(SPAN_NOTICE("[user] starts slowly welding kinks and holes in \the [src] back to working shape..."),
SPAN_NOTICE("You start welding kinks and holes back to working shape. This'll take a long while..."))
if(do_after(user, 15 SECONDS))
add_damage(-max_damage)
@@ -258,7 +258,7 @@
//What kind of dinky ass gun is only 32x32?
/obj/structure/ship_weapon_dummy
name = "ship weapon dummy"
icon = 'icons/obj/machines/ship_guns/ship_weapon_dummy.dmi'
icon = 'icons/obj/machinery/ship_guns/ship_weapon_dummy.dmi'
icon_state = "dummy"
mouse_opacity = 2
layer = OBJ_LAYER+0.1 //Higher than the gun itself.
@@ -433,7 +433,7 @@
return
playsound(src, clicksound, clickvol)
if(href_list["fire"])
var/obj/effect/landmark/LM
if(!selected_entrypoint)
@@ -455,7 +455,7 @@
if(SHIP_GUN_FIRING_SUCCESSFUL)
to_chat(usr, SPAN_WARNING("The console shows a positive message: firing sequence successful!"))
log_and_message_admins("[usr] has fired [cannon] with target [linked.targeting] and entry point [LM]!", location = get_turf(usr))
if(href_list["viewing"])
if(usr)
viewing_overmap(usr) ? unlook(usr) : look(usr)
@@ -475,4 +475,4 @@
names_to_entries[capitalize_first_letters(O.name)] = O
. = sortList(.)
if(!length(.))
. += SHIP_HAZARD_TARGET //No entrypoints == hazard
. += SHIP_HAZARD_TARGET //No entrypoints == hazard

View File

@@ -1,7 +1,7 @@
/obj/machinery/ship_weapon/bruiser
name = "bruiser cannon II"
desc = "Among the Hegemony's earliest forays into ranged weaponry for their military ships, although obsolete nowadays, the Bruiser is popular among many Unathi sailors - including pirates - for its extreme simplicity, allowing it to fire handcraft ammo with minimal modification."
icon = 'icons/obj/machines/ship_guns/bruiser.dmi'
icon = 'icons/obj/machinery/ship_guns/bruiser.dmi'
heavy_firing_sound = 'sound/weapons/gunshot/cannon.ogg'
icon_state = "weapon_base"
max_ammo = 1
@@ -167,4 +167,4 @@
if(istype(target))
var/throwdir = dir
target.throw_at(get_edge_target_turf(target, throwdir),9,8)
return 1
return 1

View File

@@ -2,7 +2,7 @@
name = "type 21 nadziak solarian coilgun"
desc = "The venerable Nadziak-class line of coilguns was born in the fires of the Interstellar War, where its ability to shred shields and low-class hulls have ensured its immortality in the infrastructure of the Solarian Navy."
desc_extended = "Although originally an expensive blunder made by over-worked Kumar Arms designers, the Nadziak later preformed to an outstanding degree following numerous improvements. Its fame among post-War Admirals was such that its name and purpose has largely remained the same, with a new 'Type' iteration commissioned every decade or so. With the expulsion of Zavodskoi and its subsidiary from Solarian space, this aging giant and symbol of military might is under threat of being consumed by the resulting arms manufacturing vacuum."
icon = 'icons/obj/machines/ship_guns/sol_coilgun.dmi'
icon = 'icons/obj/machinery/ship_guns/sol_coilgun.dmi'
icon_state = "weapon_base"
projectile_type = /obj/item/projectile/ship_ammo/coilgun
@@ -40,4 +40,4 @@
icon_state = "ammo_loader_sol"
/obj/structure/viewport/sol
icon_state = "viewport_sol"
icon_state = "viewport_sol"

View File

@@ -1,7 +1,7 @@
/obj/machinery/ship_weapon/francisca
name = "francisca rotary gun"
desc = "A Kumar Arms rotary gun developed in 2461. While its barrels may be smaller than its significantly larger kin's, the Longbow's, don't let that fool you: this gun will shred through smaller ships."
icon = 'icons/obj/machines/ship_guns/francisca.dmi'
icon = 'icons/obj/machinery/ship_guns/francisca.dmi'
heavy_firing_sound = 'sound/weapons/gunshot/ship_weapons/rotary_fire.ogg'
icon_state = "weapon_base"
max_ammo = 3
@@ -44,4 +44,4 @@
name = "40mm AP bullet"
damage = 30
armor_penetration = 100
penetrating = 4
penetrating = 4

View File

@@ -2,7 +2,7 @@
name = "grauwolf flak battery"
desc = "A Kumar Arms flak battery developed in 2461 as part of the same <i>\"Chivalry\"</i> line of the Longbow. Its barrels may look smaller than its significantly larger kin's, \
but don't let that fool you: this gun will shred through smaller ships."
icon = 'icons/obj/machines/ship_guns/grauwolf.dmi'
icon = 'icons/obj/machinery/ship_guns/grauwolf.dmi'
heavy_firing_sound = 'sound/weapons/gunshot/ship_weapons/flak_fire.ogg'
icon_state = "weapon_base"
max_ammo = 5
@@ -48,4 +48,4 @@
name = "armor-piercing flak"
damage = 50
armor_penetration = 50
penetrating = 2
penetrating = 2

View File

@@ -1,7 +1,7 @@
/obj/machinery/ship_weapon/leviathan
name = "leviathan zero-point artillery"
desc = "A hulking structure made up of an uncalculable amount of moving parts, components and capacitors. It has no branding other than the \"ZAT\" inscription on the sides."
icon = 'icons/obj/machines/ship_guns/leviathan.dmi'
icon = 'icons/obj/machinery/ship_guns/leviathan.dmi'
icon_state = "weapon_off"
special_firing_mechanism = TRUE
max_damage = 10000
@@ -22,7 +22,7 @@
/obj/machinery/ship_weapon/leviathan/Destroy()
smes = null
return ..()
/obj/machinery/ship_weapon/leviathan/LateInitialize()
. = ..()
couple_to_smes()
@@ -151,7 +151,7 @@
impact_type = /obj/effect/projectile/impact/pulse
/obj/item/projectile/ship_ammo/leviathan/on_hit(atom/target, blocked, def_zone, is_landmark_hit)
if(!is_landmark_hit)
if(!is_landmark_hit)
if(ismob(target))
var/mob/M = target
M.visible_message(SPAN_DANGER("<font size=6>[M] evaporates as they are engulfed by the beam!</font>"))
@@ -211,13 +211,13 @@
name = "leviathan activation key"
desc = "A key made of hardlight used to activate the Leviathan. It is a software-controlled morphing key that uses self-replicating encryption: \
it cannot be replicated at all. Most importantly, if it is stolen, it can simply be deactivated by the SCC. A marvel of modern technology!"
icon = 'icons/obj/machines/ship_guns/zat_confirmation_terminals.dmi'
icon = 'icons/obj/machinery/ship_guns/zat_confirmation_terminals.dmi'
icon_state = "cannon_key"
/obj/item/leviathan_case
name = "leviathan key case"
desc = "It contains the Leviathan's activation key. The case is made out of authentic ebony wood, while the cushioning on the inside is made of silk."
icon = 'icons/obj/machines/ship_guns/zat_confirmation_terminals.dmi'
icon = 'icons/obj/machinery/ship_guns/zat_confirmation_terminals.dmi'
icon_state = "key_case"
var/open = FALSE
var/obj/item/leviathan_key/LK
@@ -243,7 +243,7 @@
else
user.visible_message(SPAN_NOTICE("[user] closes \the [src]."))
icon_state = "key_case"
/obj/item/leviathan_case/attack_hand(mob/user)
if(!open || !LK || !ishuman(loc))
. = ..()
@@ -267,11 +267,11 @@
LK = key
user.drop_from_inventory(key, src)
icon_state = "key_case-o"
/obj/machinery/leviathan_safeguard
name = "leviathan activation terminal"
desc = "The terminal used to confirm if you really want to wipe someone out."
icon = 'icons/obj/machines/ship_guns/zat_confirmation_terminals.dmi'
icon = 'icons/obj/machinery/ship_guns/zat_confirmation_terminals.dmi'
icon_state = "safeguard"
anchored = TRUE
density = TRUE
@@ -294,7 +294,7 @@
QDEL_NULL(key)
button = null
return ..()
/obj/machinery/leviathan_safeguard/LateInitialize()
if(current_map.use_overmap && !linked)
var/my_sector = map_sectors["[z]"]
@@ -340,7 +340,7 @@
/obj/machinery/leviathan_button
name = "leviathan fire button"
desc = "The button that controls the Leviathan's firing mechanism."
icon = 'icons/obj/machines/ship_guns/zat_confirmation_terminals.dmi'
icon = 'icons/obj/machinery/ship_guns/zat_confirmation_terminals.dmi'
icon_state = "button_closed"
anchored = TRUE
var/open = FALSE
@@ -392,4 +392,4 @@
visible_message(SPAN_DANGER("[user] presses \the [src]!"))
for(var/obj/machinery/ship_weapon/leviathan/LT in linked.ship_weapons)
if(istype(LT))
LT.firing_command(linked.targeting, landmark)
LT.firing_command(linked.targeting, landmark)

View File

@@ -77,7 +77,7 @@
data["status"] = "MISSING"
data["range"] = "N/A"
data["on"] = 0
if(identification)
data["id_on"] = identification.use_power
if(identification.disabled)
@@ -196,7 +196,7 @@
/obj/machinery/shipsensors
name = "sensors suite"
desc = "Long range gravity scanner with various other sensors, used to detect irregularities in surrounding space. Can only run in vacuum to protect delicate quantum BS elements."
icon = 'icons/obj/machines/sensors.dmi'
icon = 'icons/obj/machinery/sensors.dmi'
icon_state = "sensors"
anchored = 1
var/max_health = 200
@@ -305,7 +305,7 @@
if (heat > 0)
heat = max(0, heat - heat_reduction)
update_icon()
/obj/machinery/shipsensors/power_change()

View File

@@ -1,7 +1,7 @@
/obj/machinery/iff_beacon
name = "IFF transponder" //This object handles ship identification on sensors.
desc = "A complex set of various bluespace and subspace arrays that transmit a ship's identification tags."
icon = 'icons/obj/machines/telecomms.dmi'
icon = 'icons/obj/machinery/telecomms.dmi'
icon_state = "ntnet"
idle_power_usage = 500
var/datum/wires/iff/wires
@@ -71,4 +71,4 @@
/obj/machinery/iff_beacon/name_change
can_change_name = TRUE
can_change_class = FALSE
can_change_class = FALSE