mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-24 17:11:22 +00:00
Merge branch 'master' into development
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
#ifdef AO_USE_LIGHTING_OPACITY
|
||||
#define AO_TURF_CHECK(T) (!T.has_opaque_atom)
|
||||
#define AO_TURF_CHECK(T) (!T.has_opaque_atom || !T.permit_ao)
|
||||
#else
|
||||
#define AO_TURF_CHECK(T) (!T.density || !T.opacity)
|
||||
#define AO_TURF_CHECK(T) (!T.density || !T.opacity || !T.permit_ao)
|
||||
#endif
|
||||
|
||||
/turf
|
||||
|
||||
@@ -31,7 +31,9 @@
|
||||
"toggles",
|
||||
"asfx_togs",
|
||||
"lastmotd" = "motd_hash",
|
||||
"lastmemo" = "memo_hash"
|
||||
"lastmemo" = "memo_hash",
|
||||
"parallax_toggles" = "parallax_togs",
|
||||
"parallax_speed"
|
||||
),
|
||||
"args" = list("ckey")
|
||||
)
|
||||
|
||||
@@ -64,7 +64,7 @@ var/list/gear_datums = list()
|
||||
continue
|
||||
if(G.whitelisted && preference_mob)
|
||||
for(var/species in G.whitelisted)
|
||||
if(is_alien_whitelisted(preference_mob, species))
|
||||
if(is_alien_whitelisted(preference_mob, global.all_species[species]))
|
||||
. += gear_name
|
||||
break
|
||||
else
|
||||
|
||||
@@ -206,7 +206,7 @@ All custom items with worn sprites must follow the contained sprite system: http
|
||||
contained_sprite = TRUE
|
||||
gender = NEUTER
|
||||
body_parts_covered = null
|
||||
|
||||
fingerprint_chance = 50
|
||||
|
||||
/obj/structure/bed/chair/wheelchair/fluff/nomak_scooter //Mobility Scooter - Dubaku Nomak - demonofthefall
|
||||
name = "mobility scooter"
|
||||
@@ -491,7 +491,7 @@ All custom items with worn sprites must follow the contained sprite system: http
|
||||
species_restricted = null
|
||||
gender = NEUTER
|
||||
body_parts_covered = null
|
||||
|
||||
fingerprint_chance = 100
|
||||
|
||||
/obj/item/clothing/under/dress/fluff/sayyidah_dress //Traditional Jumper Dress - Sayyidah Al-Kateb - alberyk
|
||||
name = "traditional jumper dress"
|
||||
@@ -1403,15 +1403,15 @@ All custom items with worn sprites must follow the contained sprite system: http
|
||||
|
||||
if (use_check(usr)) return
|
||||
|
||||
var/style = input("You change the shirt to;","Change the shirt style") as null|anything in list("Eiffel Tower Diner","Pyramids of Giza Caf<EFBFBD>","Phoenixport","New Parthenon")
|
||||
var/style = input("You change the shirt to;","Change the shirt style") as null|anything in list("Eiffel Tower Diner","Pyramids of Giza Café","Phoenixport","New Parthenon")
|
||||
switch(style)
|
||||
if("Eiffel Tower Diner")
|
||||
item_state = "harley_uniform"
|
||||
desc = "A white t-shirt with the writing \"Eiffel Tower Diner\" on it in a small font, below a recreation of the famous monument in question, the Eiffel Tower."
|
||||
|
||||
if("Pyramids of Giza Caf<EFBFBD>")
|
||||
if("Pyramids of Giza Café")
|
||||
item_state = "harley_uniform_1"
|
||||
desc = "A white t-shirt with \"GIZA CAF<EFBFBD>\" written in large, retro font, with a small background. It looks slightly well-worn."
|
||||
desc = "A white t-shirt with \"GIZA CAFÉ\" written in large, retro font, with a small background. It looks slightly well-worn."
|
||||
|
||||
if("Phoenixport")
|
||||
item_state = "harley_uniform_2"
|
||||
@@ -1424,3 +1424,25 @@ All custom items with worn sprites must follow the contained sprite system: http
|
||||
usr.update_inv_w_uniform()
|
||||
usr.visible_message("<span class='notice'>[user] fumbles with \the [src], changing the shirt..</span>",
|
||||
"<span class='notice'>You change \the [src]'s style to be '[style]'.</span>")
|
||||
|
||||
|
||||
/obj/item/clothing/gloves/watch/fluff/rex_watch //Engraved Wristwatch - Rex Winters - tailson
|
||||
name = "engraved wristwatch"
|
||||
desc = " A fine gold watch. On the inside is an engraving that reads \"Happy birthday dad, thinking of you always\"."
|
||||
icon = 'icons/obj/custom_items/rex_watch.dmi'
|
||||
icon_state = "rex_watch"
|
||||
|
||||
|
||||
/obj/item/device/camera/fluff/hadley_camera //Hadley's Camera - Hadley Dawson - fekkor
|
||||
name = "customized camera"
|
||||
desc = "A early 2450's Sunny camera with an adjustable lens, this one has a sticker with the name \"Hadley\" on the back."
|
||||
icon = 'icons/obj/custom_items/hadley_camera.dmi'
|
||||
icon_state = "hadley_camera"
|
||||
icon_on = "hadley_camera"
|
||||
icon_off = "hadley_camera_off"
|
||||
|
||||
|
||||
/obj/item/clothing/accessory/medal/silver/fluff/kalren_medal //Silver Star of Merit - Kalren Halstere - brutishcrab51
|
||||
name = "silver star of merit"
|
||||
desc = "The Biesel Silver Star of Merit, rewarded for bravery and professionalism in the line of duty."
|
||||
icon_state = "silver_sword"
|
||||
|
||||
@@ -50,7 +50,7 @@ var/list/ghost_traps
|
||||
/datum/ghosttrap/proc/request_player(var/mob/target, var/request_string, var/request_timeout)
|
||||
if(request_timeout)
|
||||
request_timeouts[target] = world.time + request_timeout
|
||||
target.OnDestroy(CALLBACK(src, .proc/target_destroyed))
|
||||
destroyed_event.register(target, src, /datum/ghosttrap/proc/target_destroyed)
|
||||
else
|
||||
request_timeouts -= target
|
||||
|
||||
|
||||
@@ -91,7 +91,8 @@
|
||||
|
||||
for(var/i = 1 to outputs.len)
|
||||
set_pin_data(IC_OUTPUT, i, i == output_index ? output : null)
|
||||
|
||||
|
||||
push_data()
|
||||
activate_pin(2)
|
||||
|
||||
/obj/item/integrated_circuit/transfer/demultiplexer/medium
|
||||
|
||||
@@ -166,6 +166,7 @@
|
||||
else
|
||||
set_pin_data(IC_OUTPUT, 1, null)
|
||||
|
||||
push_data()
|
||||
activate_pin(2)
|
||||
|
||||
/obj/item/integrated_circuit/input/adjacent_locator
|
||||
@@ -185,6 +186,7 @@
|
||||
var/atom/A = get_pin_data_as_type(IC_INPUT, 1, /atom)
|
||||
if(!A)
|
||||
set_pin_data(IC_OUTPUT, 1, null)
|
||||
push_data()
|
||||
return
|
||||
var/desired_type = A.type
|
||||
|
||||
@@ -197,6 +199,7 @@
|
||||
|
||||
if(valid_things.len)
|
||||
set_pin_data(IC_OUTPUT, 1, pick(valid_things))
|
||||
push_data()
|
||||
|
||||
/obj/item/integrated_circuit/input/signaler
|
||||
name = "integrated signaler"
|
||||
|
||||
@@ -170,14 +170,14 @@
|
||||
// These procs do not relocate the grenade, that's the callers responsibility
|
||||
/obj/item/integrated_circuit/manipulation/grenade/proc/attach_grenade(var/obj/item/weapon/grenade/G)
|
||||
attached_grenade = G
|
||||
attached_grenade.OnDestroy(CALLBACK(src, .proc/detach_grenade))
|
||||
destroyed_event.register(attached_grenade, src, .proc/detach_grenade)
|
||||
size += G.w_class
|
||||
desc += " \An [attached_grenade] is attached to it!"
|
||||
|
||||
/obj/item/integrated_circuit/manipulation/grenade/proc/detach_grenade()
|
||||
if(!attached_grenade)
|
||||
return
|
||||
attached_grenade.UnregisterOnDestroy(src)
|
||||
destroyed_event.unregister(attached_grenade, src)
|
||||
attached_grenade = null
|
||||
size = initial(size)
|
||||
desc = initial(desc)
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
for(var/i = 1 to inputs.len)
|
||||
var/data = get_pin_data(IC_INPUT, i)
|
||||
set_pin_data(IC_OUTPUT, i, data)
|
||||
|
||||
push_data()
|
||||
activate_pin(2)
|
||||
|
||||
/obj/item/integrated_circuit/memory/storage/medium
|
||||
@@ -85,6 +85,7 @@
|
||||
|
||||
/obj/item/integrated_circuit/memory/constant/do_work()
|
||||
set_pin_data(IC_OUTPUT, 1, data)
|
||||
push_data()
|
||||
activate_pin(2)
|
||||
|
||||
/obj/item/integrated_circuit/memory/constant/attack_self(mob/user)
|
||||
|
||||
@@ -272,6 +272,7 @@
|
||||
if(camera)
|
||||
set_camera_status(0)
|
||||
set_pin_data(IC_INPUT, 2, FALSE)
|
||||
push_data()
|
||||
|
||||
/obj/item/integrated_circuit/output/led
|
||||
name = "light-emitting diode"
|
||||
@@ -292,6 +293,7 @@
|
||||
|
||||
/obj/item/integrated_circuit/output/led/power_fail()
|
||||
set_pin_data(IC_INPUT, 1, FALSE)
|
||||
push_data()
|
||||
|
||||
/obj/item/integrated_circuit/output/led/any_examine(mob/user)
|
||||
var/text_output = list()
|
||||
|
||||
@@ -20,11 +20,14 @@
|
||||
set_pin_data(IC_OUTPUT, 1, null)
|
||||
|
||||
if(!isweakref(I.data))
|
||||
push_data()
|
||||
return
|
||||
var/atom/A = I.data.resolve()
|
||||
if(!A)
|
||||
push_data()
|
||||
return
|
||||
if(!(A in view(get_turf(src))))
|
||||
push_data()
|
||||
return // Can't see the target.
|
||||
var/desired_dir = get_dir(get_turf(src), A)
|
||||
|
||||
|
||||
@@ -357,8 +357,8 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
|
||||
stop_following()
|
||||
following = target
|
||||
following.OnMove(CALLBACK(src, /atom/movable/.proc/move_to_destination))
|
||||
following.OnDestroy(CALLBACK(src, .proc/stop_following))
|
||||
moved_event.register(following, src, /atom/movable/proc/move_to_destination)
|
||||
destroyed_event.register(following, src, /mob/dead/observer/proc/stop_following)
|
||||
|
||||
src << "<span class='notice'>Now following \the [following]</span>"
|
||||
move_to_destination(following, following.loc, following.loc)
|
||||
@@ -366,8 +366,8 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
/mob/dead/observer/proc/stop_following()
|
||||
if(following)
|
||||
src << "<span class='notice'>No longer following \the [following]</span>"
|
||||
following.UnregisterOnMove(src)
|
||||
following.UnregisterOnDestroy(src)
|
||||
moved_event.unregister(following, src)
|
||||
destroyed_event.unregister(following, src)
|
||||
following = null
|
||||
|
||||
/mob/dead/observer/move_to_destination(var/atom/movable/am, var/old_loc, var/new_loc)
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
|
||||
/mob/living/death(gibbed, deathmessage="seizes up and falls limp...")
|
||||
. = ..()
|
||||
if (.)
|
||||
if(.)
|
||||
// If true, the mob went from living to dead (assuming everyone has been overriding as they should...)
|
||||
cultnet.updateVisibility(src)
|
||||
|
||||
|
||||
@@ -205,12 +205,8 @@
|
||||
asleep = 1
|
||||
icon_state = "sarlacc_asleep"
|
||||
sarlacc.deployed = 0
|
||||
var/make_loot = loot_count
|
||||
visible_message("<span class='danger'>With a contented heave, \the [src] slides into the earth and begins regurgitating several treasures before shutting tight.</span>")
|
||||
while(make_loot)
|
||||
for(var/turf/simulated/floor/F in orange(1,src))
|
||||
new /obj/random/loot(F)
|
||||
make_loot--
|
||||
new/obj/random/loot(get_turf(src))
|
||||
|
||||
/mob/living/simple_animal/hostile/greatworm/FindTarget()
|
||||
if(eating)
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
/mob/living/death(gibbed,deathmessage="seizes up and falls limp...")
|
||||
. = ..()
|
||||
if (.)
|
||||
if(.)
|
||||
stop_aiming(no_message=1)
|
||||
|
||||
/mob/living/update_canmove()
|
||||
|
||||
@@ -173,9 +173,9 @@ obj/aiming_overlay/proc/update_aiming_deferred()
|
||||
locked = 0
|
||||
update_icon()
|
||||
lock_time = world.time + 35
|
||||
owner.OnMove(CALLBACK(src, .proc/update_aiming))
|
||||
aiming_at.OnMove(CALLBACK(src, .proc/target_moved))
|
||||
aiming_at.OnDestroy(CALLBACK(src, .proc/cancel_aiming))
|
||||
moved_event.register(owner, src, /obj/aiming_overlay/proc/update_aiming)
|
||||
moved_event.register(aiming_at, src, /obj/aiming_overlay/proc/target_moved)
|
||||
destroyed_event.register(aiming_at, src, /obj/aiming_overlay/proc/cancel_aiming)
|
||||
|
||||
/obj/aiming_overlay/proc/aim_cooldown(var/seconds)
|
||||
aimcooldown = world.time + seconds SECONDS
|
||||
@@ -213,10 +213,10 @@ obj/aiming_overlay/proc/update_aiming_deferred()
|
||||
if(!no_message)
|
||||
owner.visible_message("<span class='notice'>\The [owner] lowers \the [aiming_with].</span>")
|
||||
|
||||
owner.UnregisterOnMove(src)
|
||||
moved_event.unregister(owner, src)
|
||||
if(aiming_at)
|
||||
aiming_at.UnregisterOnMove(src)
|
||||
aiming_at.UnregisterOnDestroy(src)
|
||||
moved_event.unregister(aiming_at, src)
|
||||
destroyed_event.unregister(aiming_at, src)
|
||||
aiming_at.aimed -= src
|
||||
aiming_at = null
|
||||
|
||||
|
||||
Reference in New Issue
Block a user