From c59e63674606bc99e786ea07b74c322ecc3ffc2a Mon Sep 17 00:00:00 2001 From: RustingWithYou <63625389+RustingWithYou@users.noreply.github.com> Date: Fri, 19 Apr 2024 23:06:35 +1200 Subject: [PATCH] Uueoa-Esa, Part 3: Ruin Assets (#18956) Adds several new items and structures for use in Unathi ruins. These include: Several ancient Unathi clothing items, including two sets of armor. Pillars and statues for ruin decoration. Three ancient Unathi melee weapons. Several flags/banners/tapestries. Sarcophagi, complete with booby-traps. An undetonated nuclear bomb, for, uh... don't worry about it. Bomb sprite by @nauticall, other ruin sprites by Gecko --------- Signed-off-by: RustingWithYou <63625389+RustingWithYou@users.noreply.github.com> Co-authored-by: Fluffy <65877598+FluffyGhoster@users.noreply.github.com> --- aurorastation.dme | 1 + .../objects/items/weapons/material/misc.dm | 15 ++ .../items/weapons/material/twohanded.dm | 24 ++ .../crates_lockers/closets/gimmick.dm | 82 +++++++ code/game/objects/structures/flags_banners.dm | 211 ++++++++++++++++++ code/game/objects/structures/statue.dm | 57 +++++ .../objects/structures/undetonated_nuke.dm | 62 +++++ code/modules/clothing/gloves/xeno/unathi.dm | 27 +++ code/modules/clothing/head/xenos/unathi.dm | 42 ++++ code/modules/clothing/shoes/miscellaneous.dm | 23 ++ code/modules/clothing/suits/xeno/unathi.dm | 21 ++ code/modules/clothing/under/xenos/unathi.dm | 19 ++ code/modules/vehicles/bike.dm | 10 + .../RustingWithYou - ruinassets.yml | 58 +++++ icons/obj/unathi_ruins.dmi | Bin 1417 -> 35841 bytes icons/obj/vehicle/bike.dmi | Bin 73552 -> 78098 bytes 16 files changed, 652 insertions(+) create mode 100644 code/game/objects/structures/undetonated_nuke.dm create mode 100644 html/changelogs/RustingWithYou - ruinassets.yml diff --git a/aurorastation.dme b/aurorastation.dme index 8297dde86bb..2a7647edd94 100644 --- a/aurorastation.dme +++ b/aurorastation.dme @@ -1348,6 +1348,7 @@ #include "code\game\objects\structures\tranqcabinet.dm" #include "code\game\objects\structures\trash_pile.dm" #include "code\game\objects\structures\under_wardrobe.dm" +#include "code\game\objects\structures\undetonated_nuke.dm" #include "code\game\objects\structures\urban.dm" #include "code\game\objects\structures\warp_drive.dm" #include "code\game\objects\structures\watercloset.dm" diff --git a/code/game/objects/items/weapons/material/misc.dm b/code/game/objects/items/weapons/material/misc.dm index 2fc39c6bb69..4fc7cb7e4fe 100644 --- a/code/game/objects/items/weapons/material/misc.dm +++ b/code/game/objects/items/weapons/material/misc.dm @@ -179,3 +179,18 @@ throw_speed = 2 throw_range = 3 w_class = ITEMSIZE_SMALL + +/obj/item/material/scythe/sickle/warsickle + name = "war sickle" + desc = "A short and wickedly curved blade, this sickle was often used as a melee weapon by ancient Unathi civilizations." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "warsickle" + item_state = "warsickle" + contained_sprite = TRUE + slot_flags = SLOT_BELT + force_divisor = 0.7 // 42 when wielded with hardnes 60 (steel) + thrown_force_divisor = 0.5 // 10 when thrown with weight 20 (steel) + applies_material_colour = FALSE + +/obj/item/material/scythe/sickle/warsickle/bronze/Initialize(newloc, material_key) + . = ..(newloc, MATERIAL_BRONZE) diff --git a/code/game/objects/items/weapons/material/twohanded.dm b/code/game/objects/items/weapons/material/twohanded.dm index eb3688febe6..3fd8fca8362 100644 --- a/code/game/objects/items/weapons/material/twohanded.dm +++ b/code/game/objects/items/weapons/material/twohanded.dm @@ -670,3 +670,27 @@ reach = 2 attack_verb = list("attacked", "poked", "jabbed", "torn", "gored") armor_penetration = wielded_ap + +/obj/item/material/twohanded/pike/halberd/warscythe + name = "war scythe" + desc = "An ancient Unathi weapon, this heavy polearm was frequently wielded by cavalry forces of pre-Hegemony kingdoms." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "warspike0" + base_icon = "warspike" + contained_sprite = TRUE + applies_material_colour = FALSE + +/obj/item/material/twohanded/pike/halberd/warscythe/bronze/Initialize(newloc, material_key) + . = ..(newloc, MATERIAL_BRONZE) + +/obj/item/material/twohanded/pike/mador_trident + name = "ancient trident" + desc = "An ancient weapon, this three-pointed polearm was often wielded by the ancient Sinta'Mador civilization of Moghes." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "mador_trident0" + base_icon = "mador_trident" + contained_sprite = TRUE + applies_material_colour = FALSE + +/obj/item/material/twohanded/pike/mador_trident/bronze/Initialize(newloc, material_key) + . = ..(newloc, MATERIAL_BRONZE) diff --git a/code/game/objects/structures/crates_lockers/closets/gimmick.dm b/code/game/objects/structures/crates_lockers/closets/gimmick.dm index c0701141d17..62655c68b3e 100644 --- a/code/game/objects/structures/crates_lockers/closets/gimmick.dm +++ b/code/game/objects/structures/crates_lockers/closets/gimmick.dm @@ -134,3 +134,85 @@ canbemoved = FALSE open_sound = 'sound/machines/wooden_closet_open.ogg' close_sound = 'sound/machines/wooden_closet_close.ogg' + +/obj/structure/closet/sarcophagus + name = "sandstone sarcophagus" + desc = "An ancient sarcophagus made of sandstone." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "wc_sarcophagus" + dense_when_open = TRUE + anchored = TRUE + canbemoved = FALSE + open_sound = 'sound/effects/stonedoor_openclose.ogg' + close_sound = 'sound/effects/stonedoor_openclose.ogg' + ///Icon state for the open sarcophagus + var/open_state = "wc_sarcophagus_open" + ///Icon state for the closed sarcophagus + var/closed_state = "wc_sarcophagus" + ///Does this sarcophagus have a booby trap? + var/trapped = FALSE + ///Has this sarcophagus's trap been triggered? + var/triggered = FALSE + +/obj/structure/closet/sarcophagus/update_icon() + if(!opened) + layer = OBJ_LAYER + icon_state = closed_state + + else + layer = BELOW_OBJ_LAYER + icon_state = open_state + +/obj/structure/closet/sarcophagus/animate_door(var/closing = FALSE) + return + +/obj/structure/closet/sarcophagus/attack_hand(mob/user) + ..() + if(ishuman(user)) + var/mob/living/carbon/human/H = user + if(trapped && !triggered) + do_trap_effect(H) + +///Sets off the sarcophagus's trap if not already triggered. +/obj/structure/closet/sarcophagus/proc/do_trap_effect(var/mob/living/carbon/human/H) + if(triggered) + return + if(prob(33)) + var/turf/T = get_turf(src) + var/obj/item/arrow/arrow = new(T) + playsound(usr.loc, 'sound/weapons/crossbow.ogg', 75, 1) + arrow.throw_at(H, 10, 9, src) //same values as a full draw crossbow shot would have + + else if(prob(33)) + visible_message(SPAN_DANGER("Flames engulf \the [H]!")) + H.apply_damage(30, DAMAGE_BURN) + H.IgniteMob(5) + + else + var/datum/reagents/R = new/datum/reagents(20) + R.my_atom = src + R.add_reagent(/singleton/reagent/toxin,20) + var/datum/effect/effect/system/smoke_spread/chem/S = new /datum/effect/effect/system/smoke_spread/chem(/singleton/reagent/toxin) // have to explicitly say the type to avoid issues with warnings + S.show_log = 0 + S.set_up(R, 10, 0, src, 40) + S.start() + qdel(R) + + triggered = TRUE + +/obj/structure/closet/sarcophagus/random/Initialize() //low chance of being trapped + . = ..() + if(prob(10)) + trapped = TRUE + +/obj/structure/closet/sarcophagus/mador + name = "granite sarcophagus" + desc = "An ancient sarcophagus made of granite." + icon_state = "mador_sarcophagus" + closed_state = "mador_sarcophagus" + open_state = "mador_sarcophagus_open" + +/obj/structure/closet/sarcophagus/mador/random/Initialize() + . = ..() + if(prob(10)) + trapped = TRUE diff --git a/code/game/objects/structures/flags_banners.dm b/code/game/objects/structures/flags_banners.dm index 82224134852..dcd656317b6 100644 --- a/code/game/objects/structures/flags_banners.dm +++ b/code/game/objects/structures/flags_banners.dm @@ -3274,3 +3274,214 @@ /obj/structure/sign/flag/hiskyn/unmovable unmovable = TRUE + +//Unathi Ruin Flags/Tapestries +/obj/item/flag/unathi_tapestry + name = "folded tapestry" + desc = "An ancient piece of woven cloth, carefully folded." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "tapestry_folded" + flag_structure = /obj/structure/sign/flag/unathi_tapestry + +/obj/structure/sign/flag/unathi_tapestry + name = "sun tapestry" + desc = "A worn and faded tapestry depicting a bright sun shining down on the surface of Moghes." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "sun" + flag_path = "sun" + flag_item = /obj/item/flag/unathi_tapestry + +/obj/item/flag/unathi_tapestry/moon + flag_structure = /obj/structure/sign/flag/unathi_tapestry/moon + +/obj/structure/sign/flag/unathi_tapestry/moon + name = "moon tapestry" + desc = "A worn and faded tapestry depicting a crescent moon." + icon_state = "moon" + flag_path = "moon" + flag_item = /obj/item/flag/unathi_tapestry/moon + +/obj/item/flag/unathi_tapestry/crown + flag_structure = /obj/structure/sign/flag/unathi_tapestry/crown + +/obj/structure/sign/flag/unathi_tapestry/crown + name = "crown tapestry" + desc = "A worn and faded tapestry depicting an Unathi figure, with a crown being lowered onto their head." + icon_state = "crown" + flag_path = "crown" + flag_item = /obj/item/flag/unathi_tapestry/crown + +/obj/item/flag/unathi_tapestry/warrior + flag_structure = /obj/structure/sign/flag/unathi_tapestry/warrior + +/obj/structure/sign/flag/unathi_tapestry/warrior + name = "warrior tapestry" + desc = "A worn and faded tapestry depicting an Unathi figure in full battle armor." + icon_state = "warrior" + flag_path = "warrior" + flag_item = /obj/item/flag/unathi_tapestry/warrior + +/obj/item/flag/unathi_tapestry/brothers + flag_size = TRUE + flag_structure = /obj/structure/sign/flag/unathi_tapestry/brothers + +/obj/structure/sign/flag/unathi_tapestry/brothers + name = "brothers tapestry" + desc = "A large and faded tapestry depicting two Unathi wielding war scythes, standing back to back." + icon_state = "brothers_l" + flag_path = "brothers" + flag_size = TRUE + flag_item = /obj/item/flag/unathi_tapestry/brothers + +/obj/structure/sign/flag/unathi_tapestry/brothers/north/Initialize(mapload) + . = ..(mapload, NORTH) + +/obj/structure/sign/flag/unathi_tapestry/brothers/south/Initialize(mapload) + . = ..(mapload, SOUTH) + +/obj/structure/sign/flag/unathi_tapestry/brothers/east/Initialize(mapload) + . = ..(mapload, EAST) + +/obj/structure/sign/flag/unathi_tapestry/brothers/west/Initialize(mapload) + . = ..(mapload, WEST) + +/obj/item/flag/unathi_tapestry/city + flag_size = TRUE + flag_structure = /obj/structure/sign/flag/unathi_tapestry/city + +/obj/structure/sign/flag/unathi_tapestry/city + name = "city tapestry" + desc = "A large and faded tapestry depicting an ancient city, towering resplendent over the land." + icon_state = "city_l" + flag_path = "city" + flag_size = TRUE + flag_item = /obj/item/flag/unathi_tapestry/city + +/obj/structure/sign/flag/unathi_tapestry/city/north/Initialize(mapload) + . = ..(mapload, NORTH) + +/obj/structure/sign/flag/unathi_tapestry/city/south/Initialize(mapload) + . = ..(mapload, SOUTH) + +/obj/structure/sign/flag/unathi_tapestry/city/east/Initialize(mapload) + . = ..(mapload, EAST) + +/obj/structure/sign/flag/unathi_tapestry/city/west/Initialize(mapload) + . = ..(mapload, WEST) + +/obj/item/flag/unathi_tapestry/wall + flag_size = TRUE + flag_structure = /obj/structure/sign/flag/unathi_tapestry/wall + +/obj/structure/sign/flag/unathi_tapestry/wall + name = "wall tapestry" + desc = "A large and faded tapestry depicting a mighty wall, staffed by hundreds of warriors. Storm clouds gather above it." + icon_state = "wall_l" + flag_path = "wall" + flag_size = TRUE + flag_item = /obj/item/flag/unathi_tapestry/wall + +/obj/structure/sign/flag/unathi_tapestry/wall/north/Initialize(mapload) + . = ..(mapload, NORTH) + +/obj/structure/sign/flag/unathi_tapestry/wall/south/Initialize(mapload) + . = ..(mapload, SOUTH) + +/obj/structure/sign/flag/unathi_tapestry/wall/east/Initialize(mapload) + . = ..(mapload, EAST) + +/obj/structure/sign/flag/unathi_tapestry/wall/west/Initialize(mapload) + . = ..(mapload, WEST) + +/obj/item/flag/unathi_tapestry/unathi + flag_size = TRUE + flag_structure = /obj/structure/sign/flag/unathi_tapestry/unathi + +/obj/structure/sign/flag/unathi_tapestry/unathi + name = "unathi tapestry" + desc = "A large and faded tapestry depicting a single Unathi figure - regal, resplendent, and utterly alone.." + icon_state = "unathi_l" + flag_path = "unathi" + flag_size = TRUE + flag_item = /obj/item/flag/unathi_tapestry/unathi + +/obj/structure/sign/flag/unathi_tapestry/unathi/north/Initialize(mapload) + . = ..(mapload, NORTH) + +/obj/structure/sign/flag/unathi_tapestry/unathi/south/Initialize(mapload) + . = ..(mapload, SOUTH) + +/obj/structure/sign/flag/unathi_tapestry/unathi/east/Initialize(mapload) + . = ..(mapload, EAST) + +/obj/structure/sign/flag/unathi_tapestry/unathi/west/Initialize(mapload) + . = ..(mapload, WEST) + +/obj/item/flag/unathi_tapestry/mador + icon_state = "mador_tapestry_folded" + flag_structure = /obj/structure/sign/flag/unathi_tapestry/mador_1 + +/obj/structure/sign/flag/unathi_tapestry/mador_1 + name = "\improper Sinta'Mador tapestry" + desc = "A worn and faded tapestry bearing script in the lost language of the Sinta'Mador." + icon_state = "mador3" + flag_path = "mador3" + flag_item = /obj/item/flag/unathi_tapestry/mador + +/obj/item/flag/unathi_tapestry/mador/mador_2 + flag_structure = /obj/structure/sign/flag/unathi_tapestry/mador_2 + +/obj/structure/sign/flag/unathi_tapestry/mador_2 + name = "\improper Sinta'Mador tapestry" + desc = "A worn and faded tapestry bearing script in the lost language of the Sinta'Mador." + icon_state = "mador4" + flag_path = "mador4" + flag_item = /obj/item/flag/unathi_tapestry/mador/mador_2 + +/obj/item/flag/unathi_tapestry/mador_3 + flag_structure = /obj/structure/sign/flag/unathi_tapestry/mador_3 + flag_size = TRUE + +/obj/structure/sign/flag/unathi_tapestry/mador_3 + name = "large Sinta'Mador tapestry" + desc = "A large tapestry bearing script in the lost language of the Sinta'Mador" + icon_state = "mador1_l" + flag_path = "mador1" + flag_size = TRUE + flag_item = /obj/item/flag/unathi_tapestry/mador_3 + +/obj/structure/sign/flag/unathi_tapestry/mador_3/north/Initialize(mapload) + . = ..(mapload, NORTH) + +/obj/structure/sign/flag/unathi_tapestry/mador_3/south/Initialize(mapload) + . = ..(mapload, SOUTH) + +/obj/structure/sign/flag/unathi_tapestry/mador_3/east/Initialize(mapload) + . = ..(mapload, EAST) + +/obj/structure/sign/flag/unathi_tapestry/mador_3/west/Initialize(mapload) + . = ..(mapload, WEST) + +/obj/item/flag/unathi_tapestry/mador_4 + flag_structure = /obj/structure/sign/flag/unathi_tapestry/mador_4 + flag_size = TRUE + +/obj/structure/sign/flag/unathi_tapestry/mador_4 + name = "large Sinta'Mador tapestry" + desc = "A large tapestry bearing script in the lost language of the Sinta'Mador" + icon_state = "mador2_l" + flag_path = "mador2" + flag_size = TRUE + flag_item = /obj/item/flag/unathi_tapestry/mador_4 + +/obj/structure/sign/flag/unathi_tapestry/mador_4/north/Initialize(mapload) + . = ..(mapload, NORTH) + +/obj/structure/sign/flag/unathi_tapestry/mador_4/south/Initialize(mapload) + . = ..(mapload, SOUTH) + +/obj/structure/sign/flag/unathi_tapestry/mador_4/east/Initialize(mapload) + . = ..(mapload, EAST) + +/obj/structure/sign/flag/unathi_tapestry/mador_4/west/Initialize(mapload) + . = ..(mapload, WEST) diff --git a/code/game/objects/structures/statue.dm b/code/game/objects/structures/statue.dm index 18324e5199b..e3fe38d2dee 100644 --- a/code/game/objects/structures/statue.dm +++ b/code/game/objects/structures/statue.dm @@ -6,3 +6,60 @@ density = TRUE anchored = TRUE layer = ABOVE_HUMAN_LAYER + +//Unathi statues +/obj/structure/unathi_pillar + name = "pillar" + desc = "An ancient and weathered sandstone pillar. It is covered in what looks like Sinta'Azaziba writing." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "pillar" + anchored = TRUE + density = TRUE + can_be_unanchored = FALSE + +/obj/structure/unathi_pillar/mador + desc = "An ancient and weathered granite pillar. It is inscribed with symbols of an unknown language." + icon_state = "mador_pillar" + +/obj/structure/unathi_statue + name = "ancient statue" + desc = "An ancient and crumbling sandstone statue of an Unathi." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "statue" + anchored = TRUE + density = TRUE + +/obj/structure/unathi_statue/warrior + name = "warrior statue" + desc = "An ancient and crumbling sandstone statue of an Unathi. This one is armored, and wields a war scythe." + icon_state = "warriorstatue_left" + +/obj/structure/unathi_statue/warrior/right + icon_state = "warriorstatue_right" + +/obj/structure/unathi_statue/crown + name = "crowned statue" + desc = "An ancient and crumbling sandstone statue of an Unathi. This one is robed, and wears a crown upon its head." + icon_state = "crownstatue" + +/obj/structure/unathi_statue/robe + name = "robed statue" + desc = "An ancient and crumbling sandstone statue of an Unathi. This one is clad in a humble robe and hood, and bears no weapons." + icon_state = "robestatue" + +/obj/structure/unathi_statue/mador + desc = "An ancient and crumbling granite statue of an Unathi, worn away by time." + icon_state = "mador_statue" + +/obj/structure/unathi_statue/mador/armored + name = "armored statue" + desc = "An ancient and crumbling granite statue of an Unathi clad in strange and bulky armor." + icon_state = "mador_statue_armored" + +/obj/structure/unathi_statue/mador/warrior + name = "warrior statue" + desc = "An ancient and crumbling granite statue of an Unathi. This one is armored, and wields a trident." + icon_state = "mador_statue_warrior_left" + +/obj/structure/unathi_statue/mador/warrior/right + icon_state = "mador_statue_warrior_right" diff --git a/code/game/objects/structures/undetonated_nuke.dm b/code/game/objects/structures/undetonated_nuke.dm new file mode 100644 index 00000000000..cdef37a9d75 --- /dev/null +++ b/code/game/objects/structures/undetonated_nuke.dm @@ -0,0 +1,62 @@ +/obj/structure/undetonated_nuke + name = "undetonated nuclear bomb" + desc = "This rusted bomb looks like it's been here for decades. Flaking paint on the side depicts the battle standard of the Traditionalist Coalition. Something is written in Sinta'Azaziba on the side." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "bomb" + density = TRUE + anchored = FALSE + ///Whether this nuke will explode if caught in an explosion. + var/can_explode = TRUE + +/obj/structure/undetonated_nuke/get_examine_text(mob/user, distance) + . = ..() + if(GLOB.all_languages[LANGUAGE_AZAZIBA] in user.languages) + . += SPAN_NOTICE("The inscription reads \"WARNING: FISSILE MATERIAL. HANDLE WITH CARE.\" Underneath are a few words, scratched into the metal. They read \"IF FOUND, RETURN TO SKALAMAR AT HIGH VELOCITY\"") + +/obj/structure/undetonated_nuke/ex_act(severity) + if(!can_explode) + return + switch(severity) + if(1.0) + explode() + return + if(2.0) + if(prob(50)) + explode() + return + if(3.0) + return + +///Sets off a large conventional explosion from the trigger and spreads radioactive material. Does not set off a nuclear explosion. +/obj/structure/undetonated_nuke/proc/explode() + var/turf/T = get_turf(src) + can_explode = FALSE + visible_message(SPAN_DANGER("\The [src] explodes!")) + explosion(T, 6, 8, 10) + SSradiation.radiate(src, 250) + new /obj/effect/decal/cleanable/greenglow(T) + +/obj/structure/undetonated_nuke/buried + name = "buried nuclear bomb" + desc = "This rusted metal shell is half-buried in the sand, and seems to have been that way for decades. Flaking paint on the side depicts the battle standard of the Traditionalist Coalition. Something is written in Sinta'Azaziba on the side." + anchored = TRUE + icon_state = "bomb_buried" + +/obj/structure/undetonated_nuke/buried/Initialize(mapload) + . = ..() + if(prob(50)) + can_explode = FALSE + +/obj/structure/undetonated_nuke/buried/attackby(obj/item/attacking_item, mob/user, params) + . = ..() + var/turf/current_turf = get_turf(src) + if(istype(current_turf, /turf/simulated/floor/exoplanet)) + var/turf/simulated/floor/exoplanet/T = current_turf + if(attacking_item.is_shovel() && T.diggable) + visible_message(SPAN_NOTICE("\The [user] begins to excavate \the [src].")) + if(attacking_item.use_tool(src, user, 100, volume = 50)) + visible_message(SPAN_NOTICE("\The [user] finishes digging \the [src] from \the [T]!")) + new /obj/structure/pit(T) + var/obj/structure/undetonated_nuke/N = new(T) + N.can_explode = can_explode + qdel(src) diff --git a/code/modules/clothing/gloves/xeno/unathi.dm b/code/modules/clothing/gloves/xeno/unathi.dm index 3c7ba7f2ce1..b129f5c7abb 100644 --- a/code/modules/clothing/gloves/xeno/unathi.dm +++ b/code/modules/clothing/gloves/xeno/unathi.dm @@ -9,3 +9,30 @@ slot_flags = SLOT_GLOVES|SLOT_WRISTS drop_sound = 'sound/items/drop/cloth.ogg' pickup_sound = 'sound/items/pickup/cloth.ogg' + +/obj/item/clothing/gloves/unathi/ancient + name = "ancient bronze gauntlets" + desc = "A set of heavy bronze gauntlets, tarnished from centuries of age. They appear to be made to fit clawed hands." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "ancient_gauntlets" + item_state = "ancient_gauntlets" + species_restricted = list(BODYTYPE_UNATHI) + contained_sprite = TRUE + armor = list( //not designed to hold up to bullets or lasers, but still better than nothing. + melee = ARMOR_MELEE_MAJOR, + bullet = ARMOR_BALLISTIC_MINOR, + laser = ARMOR_LASER_SMALL + ) + force = 5 + punch_force = 5 + drop_sound = 'sound/items/drop/sword.ogg' + pickup_sound = /singleton/sound_category/sword_pickup_sound + matter = list(MATERIAL_BRONZE = 1000) + +/obj/item/clothing/gloves/unathi/ancient/mador + name = "\improper Sinta'Mador bladed gauntlets" + desc = "A set of bronze gauntlets, adorned with wickedly sharp curved blades. Those familiar with Moghresian archaeology might recognize these as being forged in a Sinta'Mador style." + icon_state = "mador_gauntlets" + item_state = "mador_gauntlets" + sharp = 1 + edge = TRUE diff --git a/code/modules/clothing/head/xenos/unathi.dm b/code/modules/clothing/head/xenos/unathi.dm index 9a3ebbafb17..87260b2b458 100644 --- a/code/modules/clothing/head/xenos/unathi.dm +++ b/code/modules/clothing/head/xenos/unathi.dm @@ -63,3 +63,45 @@ M.pixel_y = 12 I.add_overlay(M) return I + +/obj/item/clothing/head/helmet/unathi/ancient + name = "ancient bronze helmet" + desc = "An outdated helmet designated to be worn by an Unathi, it was commonly used by the Hegemony Levies." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "ancient_helm" + item_state = "ancient_helm" + armor = list( //not designed to hold up to bullets or lasers, but still better than nothing. + melee = ARMOR_MELEE_MAJOR, + bullet = ARMOR_BALLISTIC_MINOR, + laser = ARMOR_LASER_SMALL + ) + matter = list(MATERIAL_BRONZE = 1000) + drop_sound = 'sound/items/drop/sword.ogg' + pickup_sound = /singleton/sound_category/sword_pickup_sound + +/obj/item/clothing/head/helmet/unathi/ancient/mador + name = "\improper Sinta'Mador bronze helmet" + desc = "A large and unusual helmet of corroded bronze. Those familiar with Moghresian archaeology might recognize this item as being forged in a Sinta'Mador style." + icon_state = "mador_helm" + item_state = "mador_helm" + +/obj/item/clothing/head/unathi/ancienthood + name = "ragged ancient hood" + desc = "An ancient cloth hood, remarkably intact given the wear of centuries." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "ancient_hood" + item_state = "ancient_hood" + +/obj/item/clothing/head/unathi/ancienthood/crown + name = "worn ancient crown" + desc = "An ancient and elaborate crowned hood - clearly meant to adorn the head of someone important." + icon_state = "ancient_crown" + item_state = "ancient_crown" + species_restricted = list(BODYTYPE_UNATHI) + +/obj/item/clothing/head/unathi/mador + name = "\improper Sinta'Mador head wrappings" + desc = "A set of gray cloth wrappings, used in traditional Sinta'Mador burials. Remarkably well preserved with age." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "mador_headwrappings" + item_state = "mador_headwrappings" diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index d7a9b5b9074..dbd413fa782 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -87,3 +87,26 @@ icon_supported_species_tags = null var/list/clothing_choices = list() siemens_coefficient = 0.75 + +/obj/item/clothing/shoes/ancient_unathi + name = "ancient bronze greaves" + desc = "A set of bronze leg armor, corroded by age. It appears to be shaped for an Unathi." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "ancient_boots" + item_state = "ancient_boots" + species_restricted = list(BODYTYPE_UNATHI) + contained_sprite = TRUE + armor = list( //not designed to hold up to bullets or lasers, but still better than nothing. + melee = ARMOR_MELEE_MAJOR, + bullet = ARMOR_BALLISTIC_MINOR, + laser = ARMOR_LASER_SMALL + ) + drop_sound = 'sound/items/drop/sword.ogg' + pickup_sound = /singleton/sound_category/sword_pickup_sound + matter = list(MATERIAL_BRONZE = 1000) + +/obj/item/clothing/shoes/ancient_unathi/mador + name = "\improper Sinta'Mador bronze greaves" + desc = "A set of bronze leg armor, fitted for an Unathi and corroded by age. Those familiar with Moghresian archaeology may recognize these as being of Sinta'Mador design." + icon_state = "mador_boots" + item_state = "mador_boots" diff --git a/code/modules/clothing/suits/xeno/unathi.dm b/code/modules/clothing/suits/xeno/unathi.dm index 6de727826bf..5fcd64600f2 100644 --- a/code/modules/clothing/suits/xeno/unathi.dm +++ b/code/modules/clothing/suits/xeno/unathi.dm @@ -57,3 +57,24 @@ flags_inv = HIDEJUMPSUIT|HIDETAIL species_restricted = list(BODYTYPE_UNATHI) contained_sprite = TRUE + +/obj/item/clothing/suit/armor/unathi/ancient + name = "ancient bronze armor" + desc = "An ancient bronze breastplate, remarkably well-preserved given how old it must be. It is unmistakably designed to fit an Unathi." + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "ancient_armor" + item_state = "ancient_armor" + armor = list( //not designed to hold up to bullets or lasers, but still better than nothing. + melee = ARMOR_MELEE_MAJOR, + bullet = ARMOR_BALLISTIC_MINOR, + laser = ARMOR_LASER_SMALL + ) + matter = list(MATERIAL_BRONZE = 1000) + drop_sound = 'sound/items/drop/sword.ogg' + pickup_sound = /singleton/sound_category/sword_pickup_sound + +/obj/item/clothing/suit/armor/unathi/ancient/mador + name = "\improper Sinta'Mador bronze armor" + desc = "An ancient set of interlocking bronze plates, designed to reach to the knees of an Unathi. Those familiar with Moghresian archaeology might recognise this set as being a Sinta'Mador relic." + icon_state = "mador_armor" + item_state = "mador_armor" diff --git a/code/modules/clothing/under/xenos/unathi.dm b/code/modules/clothing/under/xenos/unathi.dm index 170b4667c7a..c98bcfde7cf 100644 --- a/code/modules/clothing/under/xenos/unathi.dm +++ b/code/modules/clothing/under/xenos/unathi.dm @@ -135,3 +135,22 @@ desc = "A simple brown and red robe with gilded ornamentation, identifying its wearer as a member of the Sk'akh Church's clergy. The ornamentation and colors of this one identify its wearer as an Aspect Priest of the Warrior." icon_state = "skakh-warrior" item_state = "skakh-warrior" + +/obj/item/clothing/under/unathi/ancient + name = "ancient unathi vestments" + desc = "A set of faded cloth vestments that look very, very old. They look like they are made to fit an Unathi" + icon = 'icons/obj/unathi_ruins.dmi' + icon_state = "ancient_clothing1" + item_state = "ancient_clothing1" + +/obj/item/clothing/under/unathi/ancient/robes + name = "ancient unathi robes" + desc = "A set of faded cloth robes that look very, very old. They resemble traditional Unathi garb." + icon_state = "ancient_clothing2" + item_state = "ancient_clothing2" + +/obj/item/clothing/under/unathi/ancient/mador + name = "\improper Sinta'Mador burial wrappings" + desc = "A set of gray cloth wrappings, used in traditional Sinta'Mador burials. Remarkably well preserved with age." + icon_state = "mador_wrappings" + item_state = "mador_wrappings" diff --git a/code/modules/vehicles/bike.dm b/code/modules/vehicles/bike.dm index 290e8ce5e66..2a505e92e21 100644 --- a/code/modules/vehicles/bike.dm +++ b/code/modules/vehicles/bike.dm @@ -339,6 +339,16 @@ storage_type = /obj/item/storage/toolbox/bike_storage/speeder bike_icon = "speeder" +/obj/vehicle/bike/speeder/izweski + name = "hegemony speeder" + desc = "A Hephaestus-manufactured military speeder, used by the forces of the Izweski Hegemony." + icon_state = "heg_speeder_on" + bike_icon = "heg_speeder" + land_speed = 2 + space_speed = 1 + health = 250 + maxhealth = 250 + /obj/vehicle/bike/monowheel name = "adhomian monowheel" desc = "A one-wheeled vehicle, fairly popular with Little Adhomai's greasers." diff --git a/html/changelogs/RustingWithYou - ruinassets.yml b/html/changelogs/RustingWithYou - ruinassets.yml new file mode 100644 index 00000000000..805f24d5667 --- /dev/null +++ b/html/changelogs/RustingWithYou - ruinassets.yml @@ -0,0 +1,58 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# - (fixes bugs) +# wip +# - (work in progress) +# qol +# - (quality of life) +# soundadd +# - (adds a sound) +# sounddel +# - (removes a sound) +# rscadd +# - (adds a feature) +# rscdel +# - (removes a feature) +# imageadd +# - (adds an image or sprite) +# imagedel +# - (removes an image or sprite) +# spellcheck +# - (fixes spelling or grammar) +# experiment +# - (experimental change) +# balance +# - (balance changes) +# code_imp +# - (misc internal code change) +# refactor +# - (refactors code) +# config +# - (makes a change to the config files) +# admin +# - (makes changes to administrator tools) +# server +# - (miscellaneous changes to server) +################################# + +# Your name. +author: RustingWithYou + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit. +# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Adds several items and structures for use in Uueoa-Esa ruins." diff --git a/icons/obj/unathi_ruins.dmi b/icons/obj/unathi_ruins.dmi index 73992a443c9c102dae13881547b1c27aac79c222..c026ed9fddffda8e6865bd74d5ec537dd648b546 100644 GIT binary patch literal 35841 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 SF9I&HVeoYIb6Mw<&;$S#A4CKI literal 1417 zcmV;41$O$0P)bSIPIZ^9MJ-@p zU_)htk~k%ik&!?^KuAbPO-)Sz001T?Cd|wLw%g&4yTV#)Zs_RfdU|@3lan|+J*1=n z$jHdRz`&(3_p|^200DGTPE!Ct=GbNc004}7R9JLGWpiV4X>fFDZ*Bkpc$`yKaB_9` z^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDainGjE%TBGg33tGfE(w;*!LYR3KBSG%v9v zBeS?5F*&ukG_xeWxKxRYGbOXA7-Rw$XIfEWZYqdvh*e8QYEEu^Mk*;bL_t(&f$f?NbK4*chQaw#48c- zjgy3%E>aklz@YzfW;c>x;EC}E3D%R!4HyrrNBHqJeZJ0svlB^pxAXaHEl=~ zRlCTqIkn*|b>tJkV!d83LKX=iqz*v>fFXeD5x!LfU}OMem_Pz(8b<+ufz6{(00AEn zzyY;)5u&5yb?u+vyAL04E4Wa(A0hg3PteRUH})cA5doekH3zx*JpjYw2zc*#1n^Jt z8=S+9Ga`77U635DRz?(o_NZdJjN;g#cCfcn{z=hAB;I4u)CC0bn)} zVv9lx0WgTZ#6Dgozu9cC8!q;-f3~vtJJlDj0QQ0iFa!hRF>1G4PXILm`0X|V@E$wp z!2kk)_YnYf&~AMmz;CTIM95@~;Ynr;eTn=n@D-+khHd0ie&8gyRtfhg$)Ux$K_ax) zSBL4`PMQ30t)5HvK5-o8*gL) z<2TQkqq3AmTny<3@@ar@6X9RvQ+d95>f}vG;^Z~oZxRA8Hbz=xt^j5( zhf?D!rCoN^%M?zki!$FpF zB=ge(M=x@PoUc?c2MBD)k!ajBeSxNtVp_C=??t}{z{W`e+t-k_W4*uqzW))E9OI0w z!vDnd6&~*o257C@jx;a{dts>T54Rr<(EEMYy}TYcLT=u*M^dZbPA7q&JtCMsA6^pe zF~Q5>+))-OK<|H0{qs2u5b6g48Q^r+8z|*ZM>t)<5dEHyp;p zLGD3IP8WtzEPze1{y7P-TrRmhzRUiRt^u|_rvO53N|6NUy7UNKF3SrEU!^(Nve_ov ztKJG>Nq-RFs=otpJoe>rs73#SAPo@eCuX7U%gcAUy6Aom>Wk?2lQg~5kkiM=0T&%4 z=g<4CUXpZrA<6~d;9hVbQ+C!bDk>@}Dk>@}Dk>@}D*E4*eg6N6jmU8T!;km#8<``O zIUkVU$Q)ZgbABMdkvUGe^8@*f%&`EO^8@*f%#rmo=Lb}NBXgW`=Lb}NA8{l==KR3q z0NL{cD!-9A5+HMafRx*)9Hrd(fj}_jMrH2&z!xZYe&9<0hRzR6EDzrB!}sL*fr-oW z00000NkvXXu0mjfRtb-o diff --git a/icons/obj/vehicle/bike.dmi b/icons/obj/vehicle/bike.dmi index 900371ff57b3b37c0d6715d067b08f4b72bc824b..a3a474af47e9fd2211d0796ebae420d87049d6f5 100644 GIT binary patch delta 15094 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