Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Voreupdate [MDB IGNORE] [IDB IGNORE] #1455

Merged
merged 30 commits into from
May 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
c7b6c3e
Revert "Revert "Garbage collection, asset delivery, icon2html revolut…
Heroman3003 Apr 21, 2024
ab7b0a4
wl update
Apr 23, 2024
ceb03e6
Merge pull request #15942 from PastelPrinceDan/whitelist
Novacat Apr 23, 2024
cd73ef3
Entrepreneur Expansion Part 2 (#15943)
SatinIsle Apr 25, 2024
ebc6af6
Fixed Yellow Raptor Sprite (#15945)
SatinIsle Apr 25, 2024
cb30f64
prevent flags default exclusion (#15941)
Kashargul Apr 25, 2024
c8ca8c2
commit 2 (#15946)
TheToaster98 Apr 25, 2024
0ce1e27
NanoMap Auto-Update (Thu Apr 25 18:03:52 UTC 2024) (#15947)
github-actions[bot] Apr 28, 2024
3b81411
Update talon_v2.dmm (#15940)
AzzyDreemurr13 Apr 28, 2024
dc6811d
Map Swap
Very-Soft Apr 28, 2024
2a1229f
Merge pull request #15952 from VOREStation/Map-Swap
Very-Soft Apr 28, 2024
9219da9
Merge pull request #15953 from VOREStation/master
Very-Soft Apr 28, 2024
7f4c6fa
Expanded size trait options (#15949)
SatinIsle Apr 30, 2024
3b73580
AFK vore logging (#15954)
SatinIsle Apr 30, 2024
6f046e9
fixes wrong pathing (#15955)
Kashargul Apr 30, 2024
b8bc271
Reduces vore death timer on autoresleever (#15948)
SatinIsle May 2, 2024
0977885
Void Undersuit Tweaks (#15958)
KillianKirilenko May 3, 2024
333489f
uniform insignia (#15957)
KillianKirilenko May 4, 2024
5540a96
disable ingame changelog notification (#15960)
KillianKirilenko May 4, 2024
a1b2e9c
Generic Machines Part 1 - Structure (#15959)
SatinIsle May 4, 2024
df26399
Changes wall damage from being (usually) 25 brute to 12 and doesnt ad…
ReoDaProtovali May 4, 2024
ca9b452
Digestion Pain Pref (#15944)
SatinIsle May 4, 2024
1a8b41f
Adds new buildmode - DROP (#15961)
Heroman3003 May 4, 2024
6f70660
Adds drop vore to mob falling objects (#15962)
Heroman3003 May 5, 2024
4e96efc
Ducking silly (#15963)
SatinIsle May 5, 2024
f1f6515
Map Swap
Very-Soft May 5, 2024
23178f8
Merge pull request #15965 from VOREStation/Map-Swap-1
Very-Soft May 5, 2024
737c2ab
Merge pull request #15966 from VOREStation/master
Very-Soft May 5, 2024
b100ef5
Merge branch 'release' of https://github.com/VOREStation/VOREStation
izac112 May 10, 2024
7ce5af0
tgui bundle
izac112 May 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 8 additions & 9 deletions code/datums/supplypacks/recreation_vr.dm
Original file line number Diff line number Diff line change
Expand Up @@ -108,66 +108,65 @@
containername = "Snack planets crate"

/datum/supply_pack/recreation/pinkpillows
name = "Pink Pillow Crate"
name = "Pillow Crate - Pink"
contains = list(
/obj/item/weapon/bedsheet/pillow = 6
)
cost = 10
containertype = /obj/structure/closet/crate

/datum/supply_pack/recreation/tealpillows
name = "Teal Pillow Crate"
name = "Pillow Crate - Teal"
contains = list(
/obj/item/weapon/bedsheet/pillow/teal = 6
)
cost = 10
containertype = /obj/structure/closet/crate

/datum/supply_pack/recreation/whitepillows
name = "White Pillow Crate"
name = "Pillow Crate - White"
contains = list(
/obj/item/weapon/bedsheet/pillow/white = 6
)
cost = 10
containertype = /obj/structure/closet/crate

/datum/supply_pack/recreation/blackpillows
name = "Black Pillow Crate"
name = "Pillow Crate - Black"
contains = list(
/obj/item/weapon/bedsheet/pillow/black = 6
)
cost = 10
containertype = /obj/structure/closet/crate

/datum/supply_pack/recreation/redpillows
name = "Red Pillow Crate"
name = "Pillow Crate - Red"
contains = list(
/obj/item/weapon/bedsheet/pillow/red = 6
)
cost = 10
containertype = /obj/structure/closet/crate

/datum/supply_pack/recreation/greenpillows
name = "Green Pillow Crate"
name = "Pillow Crate - Green"
contains = list(
/obj/item/weapon/bedsheet/pillow/green = 6
)
cost = 10
containertype = /obj/structure/closet/crate

/datum/supply_pack/recreation/orangepillows
name = "Orange Pillow Crate"
name = "Pillow Crate - Orange"
contains = list(
/obj/item/weapon/bedsheet/pillow/orange = 6
)
cost = 10
containertype = /obj/structure/closet/crate

/datum/supply_pack/recreation/yellowpillows
name = "Yellow Pillow Crate"
name = "Pillow Crate - Yellow"
contains = list(
/obj/item/weapon/bedsheet/pillow/yellow = 6
)
cost = 10
containertype = /obj/structure/closet/crate

8 changes: 8 additions & 0 deletions code/game/objects/items/falling_object_vr.dm
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,14 @@
qdel(src)

/atom/movable/proc/end_fall(var/crushing = FALSE)
if(istype(src, /mob/living))
var/mob/living/L = src
if(L.vore_selected && L.can_be_drop_pred && L.drop_vore)
for(var/mob/living/P in loc)
if(P.can_be_drop_prey && P.drop_vore)
L.feed_grabbed_to_self_falling_nom(L,P)
L.visible_message("<span class='vdanger'>\The [L] falls right onto \the [P]!</span>")

if(crushing)
for(var/atom/movable/AM in loc)
if(AM != src)
Expand Down
113 changes: 113 additions & 0 deletions code/game/objects/structures/watercloset.dm
Original file line number Diff line number Diff line change
Expand Up @@ -296,6 +296,18 @@
icon = 'icons/obj/watercloset.dmi'
icon_state = "rubberducky"
honk_sound = 'sound/voice/quack.ogg' //VOREStation edit
var/honk_text = 0

/obj/item/weapon/bikehorn/rubberducky/attack_self(mob/user as mob)
if(spam_flag == 0)
spam_flag = 1
playsound(src, honk_sound, 50, 1)
if(honk_text)
audible_message(span_maroon("[honk_text]"))
src.add_fingerprint(user)
spawn(20)
spam_flag = 0
return

//Admin spawn duckies

Expand All @@ -317,6 +329,8 @@
spam_flag = 1
playsound(src, honk_sound, 50, 1)
src.add_fingerprint(user)
if(honk_text)
audible_message(span_maroon("[honk_text]"))
honk_count ++
spawn(20)
spam_flag = 0
Expand All @@ -336,6 +350,100 @@
whereweare.wet_floor(2)
spam_flag = 1
playsound(src, honk_sound, 50, 1)
if(honk_text)
audible_message(span_maroon("[honk_text]"))
src.add_fingerprint(user)
spawn(20)
spam_flag = 0
return

/obj/item/weapon/bikehorn/rubberducky/pink
name = "rubber ducky"
desc = "It's extra squishy!"
icon = 'icons/obj/watercloset.dmi'
icon_state = "rubberducky_pink"
honk_sound = 'sound/vore/sunesound/pred/insertion_01.ogg'
var/honk_count = 0

/obj/item/weapon/bikehorn/rubberducky/pink/attack_self(mob/user as mob)
if(spam_flag == 0)
if(!user.devourable)
to_chat(user, "<span class='vnotice'>You can't bring yourself to squeeze it...</span>")
return
spam_flag = 1
playsound(src, honk_sound, 50, 1)
if(honk_text)
audible_message(span_maroon("[honk_text]"))
src.add_fingerprint(user)
user.drop_item()
user.forceMove(src)
to_chat(user, "<span class='vnotice'>You have been swallowed alive by the rubber ducky. Your entire body compacted up and squeezed into the tiny space that makes up the oddly realistic and not at all rubbery stomach. The walls themselves are kneading over you, grinding some sort of fluids into your trapped body. You can even hear the sound of bodily functions echoing around you...</span>")
spawn(20)
spam_flag = 0
return

/obj/item/weapon/bikehorn/rubberducky/pink/container_resist(var/mob/living/escapee)
escapee.forceMove(get_turf(src))
to_chat(escapee, "<span class='vnotice'>You managed to crawl out of the rubber ducky!</span>")

/obj/item/weapon/bikehorn/rubberducky/grey
name = "rubber ducky"
desc = "There's something otherworldly about this particular duck..."
icon = 'icons/obj/watercloset.dmi'
icon_state = "rubberducky_grey"
honk_sound = 'sound/effects/ghost.ogg'
var/honk_count = 0

/obj/item/weapon/bikehorn/rubberducky/grey/attack_self(mob/user as mob)
if(spam_flag == 0)
for(var/obj/machinery/light/L in machines)
if(L.z != user.z || get_dist(user,L) > 10)
continue
else
L.flicker(10)
spam_flag = 1
playsound(src, honk_sound, 50, 1)
if(honk_text)
audible_message(span_maroon("[honk_text]"))
src.add_fingerprint(user)
user.drop_item()
var/turf/T = locate(rand(1, 140), rand(1, 140), user.z)
src.forceMove(T)
return

/obj/item/weapon/bikehorn/rubberducky/green
name = "rubber ducky"
desc = "Like a true Nature’s child, we were born, born to be wild."
icon = 'icons/obj/watercloset.dmi'
icon_state = "rubberducky_green"
honk_sound = 'sound/arcade/mana.ogg'
var/honk_count = 0
var/list/flora = list(/obj/structure/flora/ausbushes,
/obj/structure/flora/ausbushes/reedbush,
/obj/structure/flora/ausbushes/leafybush,
/obj/structure/flora/ausbushes/palebush,
/obj/structure/flora/ausbushes/stalkybush,
/obj/structure/flora/ausbushes/grassybush,
/obj/structure/flora/ausbushes/fernybush,
/obj/structure/flora/ausbushes/sunnybush,
/obj/structure/flora/ausbushes/genericbush,
/obj/structure/flora/ausbushes/pointybush,
/obj/structure/flora/ausbushes/lavendergrass,
/obj/structure/flora/ausbushes/ywflowers,
/obj/structure/flora/ausbushes/brflowers,
/obj/structure/flora/ausbushes/ppflowers,
/obj/structure/flora/ausbushes/sparsegrass,
/obj/structure/flora/ausbushes/fullgrass)

/obj/item/weapon/bikehorn/rubberducky/green/attack_self(mob/user as mob)
if(spam_flag == 0)
var/turf/simulated/whereweare = get_turf(src)
var/obj/P = pick(flora)
new P(whereweare)
spam_flag = 1
playsound(src, honk_sound, 50, 1)
if(honk_text)
audible_message(span_maroon("[honk_text]"))
src.add_fingerprint(user)
spawn(20)
spam_flag = 0
Expand All @@ -354,6 +462,8 @@
lightning_strike(get_turf(src), 1)
spam_flag = 1
playsound(src, honk_sound, 50, 1)
if(honk_text)
audible_message(span_maroon("[honk_text]"))
src.add_fingerprint(user)
spawn(20)
spam_flag = 0 //leaving this in incase it doesn't qdel somehow
Expand All @@ -366,6 +476,7 @@
icon = 'icons/obj/watercloset.dmi'
icon_state = "rubberducky_black"
det_time = 20
var/honk_text = 0

/obj/item/weapon/grenade/anti_photon/rubberducky/black/detonate()
playsound(src, 'sound/voice/quack.ogg', 50, 1, 5)
Expand All @@ -380,6 +491,8 @@
spawn(210)
..()
playsound(src, 'sound/voice/quack.ogg', 50, 1, 5)
if(honk_text)
audible_message(span_maroon("[honk_text]"))
qdel(src)

/obj/structure/sink
Expand Down
7 changes: 4 additions & 3 deletions code/game/turfs/turf.dm
Original file line number Diff line number Diff line change
Expand Up @@ -301,9 +301,10 @@

// Called when turf is hit by a thrown object
/turf/hitby(atom/movable/AM as mob|obj, var/speed)
if(src.density)
spawn(2)
step(AM, turn(AM.last_move, 180))
if(density)
if(!has_gravity(AM)) //Checked a different codebase for reference. Turns out it's only supposed to happen in no-gravity
spawn(2)
step(AM, turn(AM.last_move, 180)) //This makes it float away after hitting a wall in 0G
if(isliving(AM))
var/mob/living/M = AM
M.turf_collision(src, speed)
Expand Down
3 changes: 2 additions & 1 deletion code/modules/admin/admin_verb_lists_vr.dm
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,8 @@ var/list/admin_verbs_spawn = list(
/client/proc/map_template_load,
/client/proc/map_template_upload,
/client/proc/map_template_load_on_new_z,
/client/proc/eventkit_open_mob_spawner //VOREStation Add
/client/proc/eventkit_open_mob_spawner,
/client/proc/generic_structure //VOREStation Add
)

var/list/admin_verbs_server = list(
Expand Down
36 changes: 35 additions & 1 deletion code/modules/admin/verbs/buildmode.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,9 @@
#define BUILDMODE_CONTENTS 7
#define BUILDMODE_LIGHTS 8
#define BUILDMODE_AI 9
#define BUILDMODE_DROP 10

#define LAST_BUILDMODE 9
#define LAST_BUILDMODE 10

/proc/togglebuildmode(mob/M as mob in player_list)
set name = "Toggle Build Mode"
Expand Down Expand Up @@ -171,6 +172,16 @@
Right Mouse Button + shift on tile = Command selected mobs to reposition to tile (will not be interrupted by enemies)<br>\
Right Mouse Button + alt on obj/turfs = Command selected mobs to attack obj/turf<br>\
***********************************************************</span>")

if(BUILDMODE_DROP)
to_chat(usr, "<span class='notice'>***********************************************************<br>\
Right Mouse Button on buildmode button = Set object type<br>\
Middle Mouse Button on buildmode button= On/Off object type saying<br>\
Middle Mouse Button on turf/obj = Capture object type<br>\
Left Mouse Button on turf/obj = Drop objects safely<br>\
Right Mouse Button = Drop objects unsafely<br>\
Mouse Button + ctrl = Copy object type<br><br>\
***********************************************************</span>")
return 1

/obj/effect/bmode/buildquit
Expand Down Expand Up @@ -315,6 +326,8 @@
var/input = input(usr, "New light color.","Light Maker",3) as null|color
if(input)
new_light_color = input
if(BUILDMODE_DROP)
objholder = get_path_from_partial_text()
return 1

/proc/build_click(var/mob/user, buildmode, params, var/obj/object)
Expand Down Expand Up @@ -637,6 +650,27 @@
flick_overlay(orderimage, list(user.client), 8, TRUE)
return


if(BUILDMODE_DROP)
if(ispath(holder.buildmode.objholder,/turf))
to_chat(user, "<span class='warning'>Cannot use turfs with this mode.</span>")
return
if(pa.Find("left") && !pa.Find("ctrl"))
if(ispath(holder.buildmode.objholder))
var/obj/effect/falling_effect/FE = new /obj/effect/falling_effect(get_turf(object), holder.buildmode.objholder)
FE.crushing = FALSE
else if(pa.Find("right"))
if(ispath(holder.buildmode.objholder))
var/obj/effect/falling_effect/FE = new /obj/effect/falling_effect(get_turf(object), holder.buildmode.objholder)
FE.crushing = TRUE
else if(pa.Find("ctrl"))
holder.buildmode.objholder = object.type
to_chat(user, "<span class='notice'>[object]([object.type]) copied to buildmode.</span>")
if(pa.Find("middle"))
holder.buildmode.objholder = text2path("[object.type]")
if(holder.buildmode.objsay)
to_chat(usr, "[object.type]")

/proc/build_drag(var/client/user, buildmode, var/atom/fromatom, var/atom/toatom, var/atom/fromloc, var/atom/toloc, var/fromcontrol, var/tocontrol, params)
var/obj/effect/bmode/buildholder/holder = null
for(var/obj/effect/bmode/buildholder/H)
Expand Down
3 changes: 3 additions & 0 deletions code/modules/client/client procs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -247,11 +247,14 @@
void = new()
screen += void

//disabled because we don't use the ingame changelog system any more
/*
if((prefs.lastchangelog != changelog_hash) && isnewplayer(src.mob)) //bolds the changelog button on the interface so we know there are updates.
to_chat(src, "<span class='info'>You have unread updates in the changelog.</span>")
winset(src, "rpane.changelog", "background-color=#eaeaea;font-style=bold")
if(config.aggressive_changelog)
src.changes()
*/

if(config.paranoia_logging)
var/alert = FALSE //VOREStation Edit start.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -180,3 +180,41 @@ Talon pin
"security-technician replikant chestplate" = /obj/item/clothing/accessory/replika/star
)
gear_tweaks += new/datum/gear_tweak/path(replika_vests)

/datum/gear/accessory/insignia
display_name = "Insignia Selection"
path = /obj/item/clothing/accessory/solgov/department

/datum/gear/accessory/insignia/New()
..()
var/insignia = list(
"Command - Crew" = /obj/item/clothing/accessory/solgov/department/command,
"Command - Crew Short" = /obj/item/clothing/accessory/solgov/department/command/service,
"Command - Bands" = /obj/item/clothing/accessory/solgov/department/command/fleet,
"Command - Echelons" = /obj/item/clothing/accessory/solgov/department/command/army,
"Security - Crew" = /obj/item/clothing/accessory/solgov/department/security,
"Security - Crew Short" = /obj/item/clothing/accessory/solgov/department/security/service,
"Security - Bands" = /obj/item/clothing/accessory/solgov/department/security/fleet,
"Security - Echelons" = /obj/item/clothing/accessory/solgov/department/security/army,
"Medical - Crew" = /obj/item/clothing/accessory/solgov/department/medical,
"Medical - Crew Short" = /obj/item/clothing/accessory/solgov/department/medical/service,
"Medical - Bands" = /obj/item/clothing/accessory/solgov/department/medical/fleet,
"Medical - Echelons" = /obj/item/clothing/accessory/solgov/department/medical/army,
"Science - Crew" = /obj/item/clothing/accessory/solgov/department/research,
"Science - Crew Short" = /obj/item/clothing/accessory/solgov/department/research/service,
"Science - Bands" = /obj/item/clothing/accessory/solgov/department/research/fleet,
"Science - Echelons" = /obj/item/clothing/accessory/solgov/department/research/army,
"Engineering - Crew" = /obj/item/clothing/accessory/solgov/department/engineering,
"Engineering - Crew Short" = /obj/item/clothing/accessory/solgov/department/engineering/service,
"Engineering - Bands" = /obj/item/clothing/accessory/solgov/department/engineering/fleet,
"Engineering - Echelons" = /obj/item/clothing/accessory/solgov/department/engineering/army,
"Supply - Crew" = /obj/item/clothing/accessory/solgov/department/supply,
"Supply - Crew Short" = /obj/item/clothing/accessory/solgov/department/supply/service,
"Supply - Bands" = /obj/item/clothing/accessory/solgov/department/supply/fleet,
"Supply - Echelons" = /obj/item/clothing/accessory/solgov/department/supply/army,
"Service - Crew" = /obj/item/clothing/accessory/solgov/department/service,
"Service - Crew Short" = /obj/item/clothing/accessory/solgov/department/service/service,
"Service - Bands" = /obj/item/clothing/accessory/solgov/department/service/fleet,
"Service - Echelons" = /obj/item/clothing/accessory/solgov/department/service/army
)
gear_tweaks += new/datum/gear_tweak/path(insignia)
Loading
Loading