Aro shipself v3
@@ -86,23 +86,31 @@ var/list/marker_beacon_colors = list(
|
|||||||
light_power = 0.8
|
light_power = 0.8
|
||||||
var/remove_speed = 15
|
var/remove_speed = 15
|
||||||
var/picked_color
|
var/picked_color
|
||||||
|
var/perma = FALSE
|
||||||
|
var/mapped_in_color
|
||||||
|
|
||||||
/obj/structure/marker_beacon/New(newloc, set_color)
|
/obj/structure/marker_beacon/New(newloc, set_color)
|
||||||
. = ..()
|
. = ..()
|
||||||
picked_color = set_color
|
if(set_color)
|
||||||
|
picked_color = set_color
|
||||||
|
else if(mapped_in_color)
|
||||||
|
picked_color = mapped_in_color
|
||||||
update_icon()
|
update_icon()
|
||||||
|
|
||||||
/obj/structure/marker_beacon/examine(mob/user)
|
/obj/structure/marker_beacon/examine(mob/user)
|
||||||
. = ..()
|
. = ..()
|
||||||
. += "<span class='notice'>Alt-click to select a color. Current color is [picked_color].</span>"
|
if(!perma)
|
||||||
|
. += "<span class='notice'>Alt-click to select a color. Current color is [picked_color].</span>"
|
||||||
|
|
||||||
/obj/structure/marker_beacon/update_icon()
|
/obj/structure/marker_beacon/update_icon()
|
||||||
while(!picked_color || !marker_beacon_colors[picked_color])
|
if(!picked_color || !marker_beacon_colors[picked_color])
|
||||||
picked_color = pick(marker_beacon_colors)
|
picked_color = pick(marker_beacon_colors)
|
||||||
icon_state = "[initial(icon_state)][lowertext(picked_color)]-on"
|
icon_state = "[initial(icon_state)][lowertext(picked_color)]-on"
|
||||||
set_light(light_range, light_power, marker_beacon_colors[picked_color])
|
set_light(light_range, light_power, marker_beacon_colors[picked_color])
|
||||||
|
|
||||||
/obj/structure/marker_beacon/attack_hand(mob/living/user)
|
/obj/structure/marker_beacon/attack_hand(mob/living/user)
|
||||||
|
if(perma)
|
||||||
|
return
|
||||||
to_chat(user, "<span class='notice'>You start picking [src] up...</span>")
|
to_chat(user, "<span class='notice'>You start picking [src] up...</span>")
|
||||||
if(do_after(user, remove_speed, target = src))
|
if(do_after(user, remove_speed, target = src))
|
||||||
var/obj/item/stack/marker_beacon/M = new(loc)
|
var/obj/item/stack/marker_beacon/M = new(loc)
|
||||||
@@ -114,6 +122,8 @@ var/list/marker_beacon_colors = list(
|
|||||||
qdel(src) //otherwise delete us
|
qdel(src) //otherwise delete us
|
||||||
|
|
||||||
/obj/structure/marker_beacon/attackby(obj/item/I, mob/user, params)
|
/obj/structure/marker_beacon/attackby(obj/item/I, mob/user, params)
|
||||||
|
if(perma)
|
||||||
|
return
|
||||||
if(istype(I, /obj/item/stack/marker_beacon))
|
if(istype(I, /obj/item/stack/marker_beacon))
|
||||||
var/obj/item/stack/marker_beacon/M = I
|
var/obj/item/stack/marker_beacon/M = I
|
||||||
to_chat(user, "<span class='notice'>You start picking [src] up...</span>")
|
to_chat(user, "<span class='notice'>You start picking [src] up...</span>")
|
||||||
@@ -126,6 +136,8 @@ var/list/marker_beacon_colors = list(
|
|||||||
|
|
||||||
/obj/structure/marker_beacon/AltClick(mob/living/user)
|
/obj/structure/marker_beacon/AltClick(mob/living/user)
|
||||||
..()
|
..()
|
||||||
|
if(perma)
|
||||||
|
return
|
||||||
if(user.incapacitated() || !istype(user))
|
if(user.incapacitated() || !istype(user))
|
||||||
to_chat(user, "<span class='warning'>You can't do that right now!</span>")
|
to_chat(user, "<span class='warning'>You can't do that right now!</span>")
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/decl/closet_appearance/wall/autolok
|
/decl/closet_appearance/wall_double/autolok
|
||||||
color = COLOR_GRAY20
|
color = COLOR_GRAY20
|
||||||
decals = null
|
decals = null
|
||||||
extra_decals = list(
|
extra_decals = list(
|
||||||
|
|||||||
@@ -207,8 +207,8 @@
|
|||||||
/obj/structure/closet/autolok_wall
|
/obj/structure/closet/autolok_wall
|
||||||
name = "autolok suit storage"
|
name = "autolok suit storage"
|
||||||
desc = "It's wall-mounted storage unit for an AutoLok suit."
|
desc = "It's wall-mounted storage unit for an AutoLok suit."
|
||||||
icon = 'icons/obj/closets/bases/wall.dmi'
|
icon = 'icons/obj/closets/bases/wall_double.dmi'
|
||||||
closet_appearance = /decl/closet_appearance/wall/autolok
|
closet_appearance = /decl/closet_appearance/wall_double/autolok
|
||||||
anchored = 1
|
anchored = 1
|
||||||
density = 0
|
density = 0
|
||||||
wall_mounted = 1
|
wall_mounted = 1
|
||||||
|
|||||||
@@ -132,4 +132,7 @@
|
|||||||
icon_state = "talon_center"
|
icon_state = "talon_center"
|
||||||
|
|
||||||
/obj/effect/floor_decal/emblem/itgdauntless
|
/obj/effect/floor_decal/emblem/itgdauntless
|
||||||
icon_state = "itgdauntless"
|
icon_state = "itgdauntless"
|
||||||
|
|
||||||
|
/obj/effect/floor_decal/emblem/aronai
|
||||||
|
icon_state = "aronai"
|
||||||
@@ -113,6 +113,18 @@
|
|||||||
if(can_join_with(W))
|
if(can_join_with(W))
|
||||||
dirs += get_dir(src, W)
|
dirs += get_dir(src, W)
|
||||||
|
|
||||||
|
if(material.icon_base == "hull") // Could be improved...
|
||||||
|
var/additional_dirs = 0
|
||||||
|
for(var/direction in alldirs)
|
||||||
|
var/turf/T = get_step(src,direction)
|
||||||
|
if(T && (locate(/obj/structure/hull_corner) in T))
|
||||||
|
dirs += direction
|
||||||
|
additional_dirs |= direction
|
||||||
|
if(additional_dirs)
|
||||||
|
for(var/diag_dir in cornerdirs)
|
||||||
|
if ((additional_dirs & diag_dir) == diag_dir)
|
||||||
|
dirs += diag_dir
|
||||||
|
|
||||||
wall_connections = dirs_to_corner_states(dirs)
|
wall_connections = dirs_to_corner_states(dirs)
|
||||||
|
|
||||||
/turf/simulated/wall/proc/can_join_with(var/turf/simulated/wall/W)
|
/turf/simulated/wall/proc/can_join_with(var/turf/simulated/wall/W)
|
||||||
|
|||||||
@@ -307,6 +307,57 @@
|
|||||||
var/image/I = image(icon = src.icon, icon_state = "o_[icon_state]")
|
var/image/I = image(icon = src.icon, icon_state = "o_[icon_state]")
|
||||||
I.color = stripe_color
|
I.color = stripe_color
|
||||||
add_overlay(I)
|
add_overlay(I)
|
||||||
|
<<<<<<< HEAD
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
||||||| parent of eb9de2cb7c... Merge pull request #10411 from VOREStation/Arokha/aro3
|
||||||
|
=======
|
||||||
|
|
||||||
|
// Fake corners for making hulls look pretty
|
||||||
|
/obj/structure/hull_corner
|
||||||
|
name = "hull corner"
|
||||||
|
|
||||||
|
icon = 'icons/turf/wall_masks.dmi'
|
||||||
|
icon_state = "hull_corner"
|
||||||
|
|
||||||
|
anchored = TRUE
|
||||||
|
density = TRUE
|
||||||
|
breakable = TRUE
|
||||||
|
|
||||||
|
/obj/structure/hull_corner/Initialize()
|
||||||
|
return INITIALIZE_HINT_LATELOAD
|
||||||
|
|
||||||
|
/obj/structure/hull_corner/LateInitialize()
|
||||||
|
. = ..()
|
||||||
|
update_look()
|
||||||
|
|
||||||
|
/obj/structure/hull_corner/proc/update_look()
|
||||||
|
cut_overlays()
|
||||||
|
|
||||||
|
var/turf/simulated/wall/T = get_step(src, dir)
|
||||||
|
if(!istype(T))
|
||||||
|
log_error("[src] at [x],[y] not placed facing a hull")
|
||||||
|
return
|
||||||
|
|
||||||
|
name = T.name
|
||||||
|
desc = T.desc
|
||||||
|
|
||||||
|
var/datum/material/B = T.material
|
||||||
|
var/datum/material/R = T.reinf_material
|
||||||
|
|
||||||
|
if(B?.icon_colour)
|
||||||
|
color = B.icon_colour
|
||||||
|
if(R?.icon_colour)
|
||||||
|
var/image/I = image(icon, icon_state+"_reinf", dir=dir)
|
||||||
|
I.color = R.icon_colour
|
||||||
|
add_overlay(I)
|
||||||
|
|
||||||
|
/obj/structure/hull_corner/long_vert
|
||||||
|
icon = 'icons/turf/wall_masks32x64.dmi'
|
||||||
|
bound_height = 64
|
||||||
|
|
||||||
|
/obj/structure/hull_corner/long_horiz
|
||||||
|
icon = 'icons/turf/wall_masks64x32.dmi'
|
||||||
|
bound_width = 64
|
||||||
|
>>>>>>> eb9de2cb7c... Merge pull request #10411 from VOREStation/Arokha/aro3
|
||||||
|
|||||||
@@ -18,7 +18,8 @@
|
|||||||
..(newloc)
|
..(newloc)
|
||||||
if(!isnull(_age))
|
if(!isnull(_age))
|
||||||
graffiti_age = _age
|
graffiti_age = _age
|
||||||
message = _message
|
if(!isnull(_message))
|
||||||
|
message = _message
|
||||||
if(!isnull(author))
|
if(!isnull(author))
|
||||||
author = _author
|
author = _author
|
||||||
|
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 128 KiB After Width: | Height: | Size: 137 KiB |
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 118 KiB |
BIN
icons/turf/wall_masks32x64.dmi
Normal file
|
After Width: | Height: | Size: 5.2 KiB |
BIN
icons/turf/wall_masks64x32.dmi
Normal file
|
After Width: | Height: | Size: 3.8 KiB |
123
maps/offmap_vr/om_ships/aro3.dm
Normal file
@@ -0,0 +1,123 @@
|
|||||||
|
// Compile in the map for CI testing if we're testing compileability of all the maps
|
||||||
|
#if MAP_TEST
|
||||||
|
#include "aro3.dmm"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Map template for spawning the shuttle
|
||||||
|
/datum/map_template/om_ships/aro3
|
||||||
|
name = "OM Ship - Aronai 3.0 (New Z)"
|
||||||
|
desc = "It's Aronai! As a spaceship."
|
||||||
|
mappath = 'aro3.dmm'
|
||||||
|
|
||||||
|
/area/aro3
|
||||||
|
requires_power = 1
|
||||||
|
|
||||||
|
/area/aro3/cockpit
|
||||||
|
name = "Aronai - Cockpit"
|
||||||
|
/area/aro3/kitchen
|
||||||
|
name = "Aronai - Kitchen"
|
||||||
|
/area/aro3/eva_hall
|
||||||
|
name = "Aronai - EVA Hall"
|
||||||
|
/area/aro3/function
|
||||||
|
name = "Aronai - Function Room"
|
||||||
|
/area/aro3/hallway_port
|
||||||
|
name = "Aronai - Port Hallway"
|
||||||
|
/area/aro3/hallway_starboard
|
||||||
|
name = "Aronai - Starboard Hallway"
|
||||||
|
/area/aro3/park
|
||||||
|
name = "Aronai - Park"
|
||||||
|
/area/aro3/wc_port
|
||||||
|
name = "Aronai - Port Public WC"
|
||||||
|
/area/aro3/wc_starboard
|
||||||
|
name = "Aronai - Starboard Public WC"
|
||||||
|
/area/aro3/suite_port
|
||||||
|
name = "Aronai - Port Suite (Room)"
|
||||||
|
/area/aro3/suite_starboard
|
||||||
|
name = "Aronai - Starboard Suite (Room)"
|
||||||
|
/area/aro3/suite_port_wc
|
||||||
|
name = "Aronai - Port Suite (WC)"
|
||||||
|
/area/aro3/suite_starboard_wc
|
||||||
|
name = "Aronai - Starboard Suite (WC)"
|
||||||
|
/area/aro3/surfluid
|
||||||
|
name = "Aronai - Surfluid Access"
|
||||||
|
/area/aro3/bunkrooms
|
||||||
|
name = "Aronai - Bunkrooms"
|
||||||
|
/area/aro3/hallway_bunkrooms
|
||||||
|
name = "Aronai - Bunkroom Access"
|
||||||
|
/area/aro3/bar
|
||||||
|
name = "Aronai - Bar"
|
||||||
|
/area/aro3/medical
|
||||||
|
name = "Aronai - Medical"
|
||||||
|
/area/aro3/workshop
|
||||||
|
name = "Aronai - Workshop"
|
||||||
|
/area/aro3/repair_bay
|
||||||
|
name = "Aronai - Repair Bay"
|
||||||
|
/area/aro3/flight_deck
|
||||||
|
name = "Aronai - Flight Deck"
|
||||||
|
/area/aro3/atmos
|
||||||
|
name = "Aronai - Atmospherics"
|
||||||
|
/area/aro3/power
|
||||||
|
name = "Aronai - Power Supply"
|
||||||
|
/area/aro3/engines
|
||||||
|
name = "Aronai - Engines"
|
||||||
|
dynamic_lighting = FALSE
|
||||||
|
|
||||||
|
/area/shuttle/aroboat3
|
||||||
|
name = "Aronai - Ship's Boat"
|
||||||
|
requires_power = 1
|
||||||
|
dynamic_lighting = 1
|
||||||
|
|
||||||
|
/turf/simulated/floor/water/indoors/surfluid
|
||||||
|
name = "surfluid pool"
|
||||||
|
desc = "A pool of inky-black fluid that shimmers oddly in the light if hit just right."
|
||||||
|
description_info = "Surfluid is KHI's main method of production, using swarms of nanites to process raw materials into finished products at the cost of immense amounts of energy."
|
||||||
|
color = "#222222"
|
||||||
|
outdoors = FALSE
|
||||||
|
reagent_type = "liquid_protean"
|
||||||
|
|
||||||
|
// The 'ship'
|
||||||
|
/obj/effect/overmap/visitable/ship/aro3
|
||||||
|
name = "spacecraft"
|
||||||
|
desc = "Spacefaring vessel. Friendly IFF detected."
|
||||||
|
scanner_name = "Aronai Sieyes"
|
||||||
|
scanner_desc = @{"[i]Registration[/i]: Aronai Sieyes
|
||||||
|
[i]Class[/i]: Small Frigate (Low Displacement)
|
||||||
|
[i]Transponder[/i]: Transmitting (CIV), non-hostile
|
||||||
|
[b]Notice[/b]: Automated vessel"}
|
||||||
|
color = "#00aaff" //Bluey
|
||||||
|
vessel_mass = 8000
|
||||||
|
vessel_size = SHIP_SIZE_SMALL
|
||||||
|
initial_generic_waypoints = list("aronai3_fore", "aronai3_aft", "aronai3_port", "aronai3_starboard")
|
||||||
|
initial_restricted_waypoints = list("Aro's Boat" = list("omship_spawn_aroboat3"))
|
||||||
|
fore_dir = NORTH
|
||||||
|
|
||||||
|
skybox_icon = 'aro3.dmi'
|
||||||
|
skybox_icon_state = "skybox"
|
||||||
|
skybox_pixel_x = 130
|
||||||
|
skybox_pixel_y = 120
|
||||||
|
|
||||||
|
|
||||||
|
// The shuttle's 'shuttle' computer
|
||||||
|
/obj/machinery/computer/shuttle_control/explore/aroboat3
|
||||||
|
name = "boat control console"
|
||||||
|
shuttle_tag = "Aro's Boat"
|
||||||
|
req_one_access = list(access_cent_general)
|
||||||
|
|
||||||
|
// A shuttle lateloader landmark
|
||||||
|
/obj/effect/shuttle_landmark/shuttle_initializer/aroboat3
|
||||||
|
name = "Aronai's Boat Bay"
|
||||||
|
base_area = /area/aro3/flight_deck
|
||||||
|
base_turf = /turf/simulated/floor/tiled/eris/dark/techfloor_grid
|
||||||
|
landmark_tag = "omship_spawn_aroboat3"
|
||||||
|
docking_controller = "aroship3_boatbay"
|
||||||
|
shuttle_type = /datum/shuttle/autodock/overmap/aroboat3
|
||||||
|
|
||||||
|
// The 'shuttle'
|
||||||
|
/datum/shuttle/autodock/overmap/aroboat3
|
||||||
|
name = "Aro's Boat"
|
||||||
|
current_location = "omship_spawn_aroboat3"
|
||||||
|
docking_controller_tag = "aroboat3_docker"
|
||||||
|
shuttle_area = /area/shuttle/aroboat3
|
||||||
|
fuel_consumption = 0
|
||||||
|
defer_initialisation = TRUE
|
||||||
|
range = 1
|
||||||
BIN
maps/offmap_vr/om_ships/aro3.dmi
Normal file
|
After Width: | Height: | Size: 50 KiB |
25693
maps/offmap_vr/om_ships/aro3.dmm
Normal file
@@ -519,6 +519,13 @@
|
|||||||
#include "../../offmap_vr/om_ships/screebarge.dm"
|
#include "../../offmap_vr/om_ships/screebarge.dm"
|
||||||
#include "../../offmap_vr/om_ships/aro.dm"
|
#include "../../offmap_vr/om_ships/aro.dm"
|
||||||
#include "../../offmap_vr/om_ships/aro2.dm"
|
#include "../../offmap_vr/om_ships/aro2.dm"
|
||||||
|
<<<<<<< HEAD
|
||||||
|
||||||| parent of eb9de2cb7c... Merge pull request #10411 from VOREStation/Arokha/aro3
|
||||||
|
#include "../../offmap_vr/om_ships/bearcat.dm"
|
||||||
|
=======
|
||||||
|
#include "../../offmap_vr/om_ships/aro3.dm"
|
||||||
|
#include "../../offmap_vr/om_ships/bearcat.dm"
|
||||||
|
>>>>>>> eb9de2cb7c... Merge pull request #10411 from VOREStation/Arokha/aro3
|
||||||
#include "../../offmap_vr/om_ships/cruiser.dm"
|
#include "../../offmap_vr/om_ships/cruiser.dm"
|
||||||
#include "../../offmap_vr/om_ships/vespa.dm"
|
#include "../../offmap_vr/om_ships/vespa.dm"
|
||||||
#include "../../offmap_vr/om_ships/generic_shuttle.dm"
|
#include "../../offmap_vr/om_ships/generic_shuttle.dm"
|
||||||
|
|||||||