Hard upstream sync (#6951)
* maps - none of our changes included yet i'll get them in after i finish up the rest of the sync * sync part 1 - underscore folders in code * controllers folder * datums folder * game folder * cmon, work * modules - admin to awaymissions * cargo to events * fields to lighting * mapping > ruins * rest of the code folder * rest of the folders in the root directory * DME * fixes compiling errors. it compiles so it works * readds map changes * fixes dogborg module select * fixes typo in moduleselect_alternate_icon filepath
This commit is contained in:
@@ -130,7 +130,7 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list(
|
||||
if(new_baseturfs.len == 1)
|
||||
new_baseturfs = new_baseturfs[1]
|
||||
return ChangeTurf(turf_type, new_baseturfs, flags)
|
||||
|
||||
|
||||
if(baseturfs == type)
|
||||
return src
|
||||
|
||||
@@ -171,7 +171,7 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list(
|
||||
|
||||
var/turf/newT
|
||||
if(flags & CHANGETURF_SKIP) // We haven't been initialized
|
||||
if(initialized)
|
||||
if(flags_1 & INITIALIZED_1)
|
||||
stack_trace("CHANGETURF_SKIP was used in a PlaceOnTop call for a turf that's initialized. This is a mistake. [src]([type])")
|
||||
assemble_baseturfs()
|
||||
if(fake_turf_type)
|
||||
@@ -217,7 +217,7 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list(
|
||||
|
||||
if(depth)
|
||||
var/list/target_baseturfs
|
||||
if(length(copytarget.baseturfs))
|
||||
if(length(copytarget.baseturfs))
|
||||
// with default inputs this would be Copy(CLAMP(2, -INFINITY, baseturfs.len))
|
||||
// Don't forget a lower index is lower in the baseturfs stack, the bottom is baseturfs[1]
|
||||
target_baseturfs = copytarget.baseturfs.Copy(CLAMP(1 + ignore_bottom, 1 + copytarget.baseturfs.len - depth, copytarget.baseturfs.len))
|
||||
|
||||
@@ -72,6 +72,17 @@
|
||||
desc = "A floor made of invulnerable notebook paper."
|
||||
icon_state = "paperfloor"
|
||||
|
||||
/turf/open/indestructible/binary
|
||||
name = "tear in the fabric of reality"
|
||||
CanAtmosPass = ATMOS_PASS_NO
|
||||
baseturfs = /turf/open/indestructible/binary
|
||||
icon_state = "binary"
|
||||
|
||||
/turf/open/indestructible/airblock
|
||||
icon_state = "bluespace"
|
||||
CanAtmosPass = ATMOS_PASS_NO
|
||||
baseturfs = /turf/open/indestructible/airblock
|
||||
|
||||
/turf/open/indestructible/clock_spawn_room
|
||||
name = "cogmetal"
|
||||
desc = "Brass plating that gently radiates heat. For some reason, it reminds you of blood."
|
||||
|
||||
@@ -28,6 +28,20 @@
|
||||
/turf/open/chasm/MakeDry()
|
||||
return
|
||||
|
||||
/turf/open/chasm/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd)
|
||||
switch(the_rcd.mode)
|
||||
if(RCD_FLOORWALL)
|
||||
return list("mode" = RCD_FLOORWALL, "delay" = 0, "cost" = 3)
|
||||
return FALSE
|
||||
|
||||
/turf/open/chasm/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, passed_mode)
|
||||
switch(passed_mode)
|
||||
if(RCD_FLOORWALL)
|
||||
to_chat(user, "<span class='notice'>You build a floor.</span>")
|
||||
PlaceOnTop(/turf/open/floor/plating)
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/turf/open/chasm/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir)
|
||||
underlay_appearance.icon = 'icons/turf/floors.dmi'
|
||||
underlay_appearance.icon_state = "basalt"
|
||||
@@ -86,3 +100,19 @@
|
||||
underlay_appearance.icon = 'icons/turf/floors.dmi'
|
||||
underlay_appearance.icon_state = "dirt"
|
||||
return TRUE
|
||||
|
||||
//For Bag of Holding Bombs
|
||||
|
||||
/turf/open/chasm/magic
|
||||
name = "tear in the fabric of reality"
|
||||
desc = "Where does it lead?"
|
||||
icon = 'icons/turf/floors/magic_chasm.dmi'
|
||||
baseturfs = /turf/open/chasm/magic
|
||||
light_range = 1.9
|
||||
light_power = 0.65
|
||||
|
||||
/turf/open/chasm/magic/Initialize()
|
||||
. = ..()
|
||||
var/turf/T = safepick(get_area_turfs(/area/fabric_of_reality))
|
||||
if(T)
|
||||
set_target(T)
|
||||
@@ -45,13 +45,10 @@
|
||||
var/turf/p_turf = get_turf(P)
|
||||
var/face_direction = get_dir(src, p_turf)
|
||||
var/face_angle = dir2angle(face_direction)
|
||||
var/incidence_s = WRAP(GET_ANGLE_OF_INCIDENCE(face_angle, P.Angle), -90, 90)
|
||||
var/new_angle = face_angle + incidence_s
|
||||
var/new_angle_s = new_angle
|
||||
while(new_angle_s > 180) // Translate to regular projectile degrees
|
||||
new_angle_s -= 360
|
||||
while(new_angle_s < -180)
|
||||
new_angle_s += 360
|
||||
var/incidence_s = GET_ANGLE_OF_INCIDENCE(face_angle, (P.Angle + 180))
|
||||
if(abs(incidence_s) > 90 && abs(incidence_s) < 270)
|
||||
return FALSE
|
||||
var/new_angle_s = SIMPLIFY_DEGREES(face_angle + incidence_s)
|
||||
P.setAngle(new_angle_s)
|
||||
return TRUE
|
||||
|
||||
|
||||
@@ -28,9 +28,9 @@
|
||||
icon_state = SPACE_ICON_STATE
|
||||
air = space_gas
|
||||
|
||||
if(initialized)
|
||||
if(flags_1 & INITIALIZED_1)
|
||||
stack_trace("Warning: [src]([type]) initialized multiple times!")
|
||||
initialized = TRUE
|
||||
flags_1 |= INITIALIZED_1
|
||||
|
||||
var/area/A = loc
|
||||
if(!IS_DYNAMIC_LIGHTING(src) && IS_DYNAMIC_LIGHTING(A))
|
||||
|
||||
@@ -40,9 +40,9 @@
|
||||
. = ..()
|
||||
|
||||
/turf/Initialize()
|
||||
if(initialized)
|
||||
if(flags_1 & INITIALIZED_1)
|
||||
stack_trace("Warning: [src]([type]) initialized multiple times!")
|
||||
initialized = TRUE
|
||||
flags_1 |= INITIALIZED_1
|
||||
|
||||
assemble_baseturfs()
|
||||
|
||||
@@ -92,7 +92,7 @@
|
||||
SSair.remove_from_active(src)
|
||||
visibilityChanged()
|
||||
QDEL_LIST(blueprint_data)
|
||||
initialized = FALSE
|
||||
flags_1 &= ~INITIALIZED_1
|
||||
requires_activation = FALSE
|
||||
..()
|
||||
|
||||
@@ -245,19 +245,19 @@
|
||||
|
||||
/turf/proc/levelupdate()
|
||||
for(var/obj/O in src)
|
||||
if(O.level == 1 && O.initialized)
|
||||
if(O.level == 1 && (O.flags_1 & INITIALIZED_1))
|
||||
O.hide(src.intact)
|
||||
|
||||
// override for space turfs, since they should never hide anything
|
||||
/turf/open/space/levelupdate()
|
||||
for(var/obj/O in src)
|
||||
if(O.level == 1 && O.initialized)
|
||||
if(O.level == 1 && (O.flags_1 & INITIALIZED_1))
|
||||
O.hide(0)
|
||||
|
||||
// Removes all signs of lattice on the pos of the turf -Donkieyo
|
||||
/turf/proc/RemoveLattice()
|
||||
var/obj/structure/lattice/L = locate(/obj/structure/lattice, src)
|
||||
if(L && L.initialized)
|
||||
if(L && (L.flags_1 & INITIALIZED_1))
|
||||
qdel(L)
|
||||
|
||||
/turf/proc/phase_damage_creatures(damage,mob/U = null)//>Ninja Code. Hurts and knocks out creatures on this turf //NINJACODE
|
||||
|
||||
Reference in New Issue
Block a user