Commit Graph

769 Commits

Author SHA1 Message Date
Timberpoes 8b08bdcfd7 Fixes issues where players can enter the game without accepted interviews. (#67565)
* Feex

* Buttonguard

* Re-add removed code from debugging

* Remove duplicate line

* Be nice
2022-06-06 23:11:16 -04:00
Kapu1178 6d470992cb This tail refactor turned into an organ refactor. Funny how that works. (#67017)
* Fuck you (refactors ur tails)

* Errors

* Wow. Pain.

* Fixes up probably everything

* finish up here

* Fixes hard del maybe

* original owner hard del

* garbage collection runtime

* suck my peen byond

* Mapped tails

* motherfucker.

* motherrfucker. again.

* Whooopppppsie

* yeah bad idea

* Turns out external organs literally just sat in nullspace forever if their parent was deleted, and didnt Remove() themselves, causing harddels.

* So anyways I repathed all organs

* Fixes

* really.

* unit test... test

* unit test-test but it passes linters this time because im a moh-ron

* I've lost track of what im doing at this point

* Hopefully fixes hard del?

* meh

* Update code/datums/dna.dm

* things n stuff

* repath from master pull
2022-05-30 21:18:34 -07:00
Tim 0c5b3ac1fd New illiterate quirk (#66648)
* New illiterate quirk that makes a person unable to read or write. This applies to books, PDAs, paper, computers, and other electronics.
* New brain trauma dyslexia that makes you illiterate until fixed.
* Ashlizards are now illiterate as a default starting trait. The mining shuttle computer has been updated to compensate illiterate mobs randomly smashing buttons that causes a shuttle launch.

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2022-05-23 20:06:52 -04:00
LemonInTheDark 7e9ff85f2a [NO GBP] Jetpack and spacedrift: Fixes and niceties (#66628)
* Jetpack and spacedrift: Fixes and niceties

Ok so when I ported spacemovement onto movement loop,
I neglected to port this behavior that existed to support jetpacks.

Basically, if something that lets you move while spacedrifing
completes a move while you're spacedrifting, the
drift should "disable" to let it complete, and then later restart.

I neglected to add support for that, so that's what this does.

There's some other stuff going on here, mostly things to let jetpacks
ignore some of drift's extra behavior, since when a jetpack is not on
stablized, we want both to coexist.

It's a bit of a mess, I'm sorry about that.

Oh and at temporal's suggestion I've moved the visual_delay set from
newtonian move to an istype on the drift component, that was a good
idea, thanks quiet

* Makes dropping a pull while drifting carry the momentum into the pulled thing\

* Adds some extra context to Process_Spacemove, fixes a bunch of stupid
space bugs

It used to be, if you called Process_Spacemove with a direction, it
assumed you were an "action", so a client or mob trying to move in a
direction.

Unfortuantely for it, I needed to be able to use direction to make mob
pull drifting work. So we now actually pass in a second variable
called continuous_move, which tracks if this Process_Spacemove is on
behalf of a continuous move or not

In addition to this, I've added logic to bumping "off" someone to
prevent backbumping if that makes sense, since the bump is in the form
of a newtonian move that's run before the thing that's bumping actually
moves, we need some way to exclude it from holding the other object in
place.

* Adds a jetpack component, uses it to unify all three versions of
jetpacking

I hate you fikou
There were three copies of the same behavior, which made it hard to fix
stuff. Let's just componentize it

* Fixes jetpacks stabalizing even without fuel

This is mildly hacky. The real fix is to do this with events, but I
really don't wanna bend my brain like that. This'll do

* Ensures turn_off always has a user)

* Shut pu

* Bulky drags no longer effect your movespeed in space, fixing a consistency issue between them and all other forms of drags

* Removes some redundant code, cleans up some messy stuff

* Removes redundant safety checking from jetpack code

* see above

* Removes redundant signals
2022-05-20 00:54:00 -07:00
magatsuchi bea9387458 refactors statpanel to use tgui API (#66971)
refactors the status panel to utilize the tgui/byond communication APIs instead of passing along href data, as well as converts the entirety of it into a datum/tgui_window

Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2022-05-16 07:12:05 +03:00
wesoda25 ba9b1d4786 Allows ethereals to ghost out of crystallization (#66853)
* moves around tgui question so it doesnt piss off linter or someting idk

* code clean up
2022-05-12 15:12:30 -04:00
Fikou 2c24073042 adds a random job button (#66660) 2022-05-06 11:26:09 -07:00
LemonInTheDark 24326bc649 Hud Image Culling By Z Level: Theft edition (#65189)
* makes hud images only apply by z level

* makes some of the atom_hud procs have better names

* fixes warning with the hud_user list and adds better documentation

* better docs for hud_images

* removes TODOs

* docs for hud_list

* adds support for linked z levels so mobs can see lower ones

* fixes merge conflict and shittily makes only shocked airlocks get added

* adds support for setting images in the hud as active and inactive

* gets rid of unatomic spatial grid change

* maybe i should actually try COMPILING my changes

* fixes merge skew and makes it compile again

* fixes huds refusing to remove from users who changed z level

* improves z level and registration logic

* fixes antag huds not appearing

* Fixes antag huds not properly setting. We now use hud_list in init, so it needs to be set before the new call, not after. Not sure why the use of appearance key was split like this, but none else knows either so none can stop me

* Ensures that hiding a basic appearance also hides the atom's active list too

* Fixes antag huds going poof

Ensures that remove_atom_from_hud will return false if the passed atom
isn't managed by it

This fixes antag huds disappearing randomly, since they assumed that if
the parent call of remove_atom_from_hud returned true, we should delete
ourselves. This is a safe assumption for them to make, since they should
only ever have one atom.

Does kinda bork if we call remove_atom_from_hud in a way that is unsure
if the passed atom is actually in that list. We were forced into doing
this by how atom huds use the qdeleting signal.

* makes basic alternate_appearance's only update themselves when setting their hud image to active and makes them not add themselves to the global huds_by_category list

* fixes mistake with hud_users list being set non associatively (bad)

* as anything in bot path loops

* Fixes merge skew problems

* Makes bot paths non global

This way they can show themselves to only the bot that "owns" them, ya
feel me?

* Fixes huds not showing up sometimes, cleans up some code

Post Kapu's limb refactor, we were calling prepare_huds twice in a human
init call chain. What was happening was this:

call prepare_huds() // Human
I gained a new hud image
I set active hud icons to mirror it
call prepare_huds() // Living
I overwrote the new hud image
I attempted to set active hud icons, which failed because it assumes
this can never happen

*cries*

* Renames add_hud_to_atom to show_to

My hope is this will make understanding hud code a bit easier, by tying
the behavior to a "verb" more closely. Also renamed a few vars

* remove_hud_from_mob -> hide_from

* Nitpicks a few comments

* Whoops/fuck/shit/damn it all/hhhhhhhhhhhh

* Moves check down, improves stack trace a bit

Co-authored-by: KylerAce <kylerlumpkin1@gmail.com>
2022-05-04 22:15:10 -07:00
Mothblocks 0204332c8d Granular admin perms (#66368)
* Granular admin perms

* Implement temporary user specific permissions menu

* Restore config

* Fix TESTING
2022-05-03 21:59:22 -07:00
Tim 231f3a2c3a Fix ghosts not being able to read (#66539) 2022-04-30 18:08:42 -05:00
Kyle Spier-Swenson 565319095f Adds MC initialization stages. Earlier stages can fire while later ones init. Fixes tgui chat reconnection banner showing during init. (#66473)
* Adds MC initialization stages. Earlier stages can fire while later ones init.
Removes TICK_LIMIT_MC_INIT config for barely doing anything to speed up init and being inconvenient to work with if fires and inits can happen at the same time.
2022-04-24 21:29:06 -07:00
LemonInTheDark 19f2df000b Fixes the latejoin menu never closing (#65671)
Reverts 17c603f1d0
Turns out, we had one html menu left. So when tivi removed the proc we
used to close them on join, he broke one.

Someone make this tgui please, thx.
2022-03-25 22:52:34 -04:00
dragomagol a364ce1e68 [READY] Podperson hair (sprites by Shiets!) (#65205)
Adds 10+ plant based hairstyles for podpeople to use in the form of an external organ.
2022-03-22 16:48:18 -05:00
Mothblocks 0d4f2c1e47 Log filters better (#65539) 2022-03-22 17:08:29 -04:00
LemonInTheDark dc20fa1c8c Changes the default ghost lighting, makes it a preference (#65352)
* Changes the default ghost lighting, makes it a preference

I think the way ghost lighting looks right now is really crummy.
It's dark enough you can see where the shadows should be, but it's just
bright enough for everything to look like dog poo

A lot of what makes the game look nice is the depth of the lighting
and if we just hide that for observers we're shooting ourselves in the
foot.

I'm also making it a game preference, so if someone wants to have bad
opinions they can easily.
2022-03-10 23:11:28 -08:00
GoldenAlpharex 686e29cf29 Fixes ghosts orbit animations not being reliable for the no floating trait (#65051)
Moved all the logic of adding the TRAIT_NO_FLOATING_ANIM to the orbiter component.
2022-02-21 20:12:44 -06:00
GoldenAlpharex b1788ef6c7 Fixing ghost bobbing (for real this time) (#64891) 2022-02-15 16:52:23 -06:00
Mothblocks ad68c542db Makes the observe button not require tgui. Please stop making the observe button require tgui. (#64721) 2022-02-06 17:59:46 -03:00
Jeremiah 30253cf6a8 Tgui input refresh (#64331) 2022-02-05 19:44:59 +02:00
redguy999 41aa7164ac Adds some more moth wings & antennae (#64293)
add: ports some moth wings & antennae from fulp
2022-01-24 17:40:31 -05:00
jjpark-kb 607749302a Fixes ghosts not bobbing up and down (#64288) 2022-01-22 17:55:22 -06:00
LemonInTheDark f8aad14ae8 Harddel Fix Pack #42 + Better Live Reftracking Support (#63877)
* Hard Del Fixes, Ref Tracking Changes
2022-01-12 22:46:13 +01:00
Seth Scherer c744385537 Fixes not being able to say ahelp in dchat (#63988)
* fix

* better code
2022-01-11 22:23:15 -05:00
GoldenAlpharex c6d616ff11 Documents and improves the variable names of the shuttle subsystem (#63946) 2022-01-11 16:08:34 -05:00
LemonInTheDark eea6591f56 Kills all unneeded uses of spawn() (#63876)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-01-10 23:22:29 -08:00
Seth Scherer 3898e6e9d3 Fixes runtimes when admin ghosting out of a camera eye (#63838)
observetarget is not guaranteed to exist
2022-01-06 13:35:39 -08:00
Mothblocks ae427c0058 Remove the auto updating in the orbit menu and bring back manual refresh (#63790) 2022-01-05 07:01:48 -08:00
Jeremiah 9c6fdb567d TGUI list conversions + bug fixes (#63354)
About The Pull Request

    Converts more inputs to TGUI. Possibly all user-facing input lists in the game.
    Did any surrounding text/number inputs as well
    Added null choice support so users can press cancel.
    Added some misc TGUI input fixes
    Fixed custom vendors while I was there

I refactored a lot of code while just poking around.
Primarily, usage of .len in files where I was already working on lists.
Some code was just awful - look at guardian.dm and its non use of early returns
If there are any disputes, I can revert it just fine, those changes are not integral to the PR.
Why It's Good For The Game

Fixes #63629
Fixes #63307
Fixes custom vendors /again/
Text input is more performant.
Part of a long series of TGUI conversion to make the game more visually appealing
Changelog

cl
refactor: The majority of user facing input lists have been converted to TGUI.
refactor: Tgui text inputs now scale with entered input.
fix: Many inputs now properly accept cancelling out of the menu.
fix: Fixes an edge case where users could not press enter on number inputs.
fix: Custom vendor bluescreen.
fix: You can now press ENTER on text inputs without an entry to cancel.
/cl
2021-12-31 11:07:28 +13:00
John Willard aa1a07663d fixes latejoin tgui menu (#63598)
Alt to #63596
2021-12-24 16:27:09 +00:00
Jeremiah dcab86ba2c More standard tgui input conversions (#63464) 2021-12-24 13:04:18 +02:00
John Willard 2834383245 Makes all default job titles, defines. (#63357)
Jesus christ we were just waiting for someone to misspell something eh?
2021-12-14 17:48:46 -08:00
Jeremiah 60922e7cfc TGUI list input conversions (#63315)
Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Sealed101 <75863639+Sealed101@users.noreply.github.com>
2021-12-10 02:20:01 -08:00
Ghom 21ac10d3d4 multiz movement refactor redux (#62132) 2021-12-06 23:13:48 -08:00
GoldenAlpharex 4d2a074a1a Ghosts can have colorful hair again! (#63129)
The PR that updated the codebase to no longer use legacy colors didn't check this specific proc, which is to my knowledge only used by ghosts lightening their hair color. That's it.
2021-12-03 20:31:42 +00:00
Ghom 79c8b3a8ca Gradients can now be applied to facial hair too. (#62996)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-11-25 22:44:06 -08:00
ShizCalev e100f3ca8c Fixes ghosts' boo ability going on cooldown when the light they tried to flicker didn't flick (#62965) 2021-11-23 17:58:43 -08:00
Timberpoes 1152f4f15a Exempts non-deadminned admins from all the chat filters so they can break the server rules and get banned if they want to. (#62944)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-11-19 23:18:11 -08:00
Timberpoes c157d40e17 Overhauls job eligibility checking and improves job debug logging. (#62586) 2021-11-09 12:38:54 -08:00
MrMelbert 948d548ed4 Adminwho and the status panel now shows when fellow admins are readied up in pre-game lobby (#62670) 2021-11-09 02:24:51 -08:00
John Willard b39ccd408e Beepsky refactor and Bot code improvement (#62510) 2021-11-08 01:35:54 -08:00
John Willard 88d7dbfc10 removes double spaces before symbols (#62397)
This can apparently cause some bugs on occasions, so I thought I might as well try to kill them all.
2021-10-28 19:25:50 -03:00
NamelessFairy 1238ce2373 Adds the ability to soft filter words, also fixes some word filter bugs (#62158) 2021-10-26 12:45:36 -07:00
Seris02 aa9c06bce5 fixes a slight issue with the hair color not being visible on ghosts after the legacy color removal (#62225) 2021-10-25 11:25:06 -04:00
Seris02 694c2999b0 makes it so the sanitize_hexcolors' default is 6 characters rather than 3 and gets rid of color_legacy (#61980) 2021-10-15 11:48:55 -07:00
Ghilker 95c8e00af7 cleanup _HELPERS/_lists.dm and all the necessary files (#61827)
Bring _HELPERS/_lists.dm to latest standards by:
-Adding proper documentation and fixing existing one
-Giving vars proper names
-Procs now use snake case as per standard (many files that use those procs will be affected)
2021-10-12 14:48:51 +01:00
Seris02 5816d4c55c better fix for some runtimes with clients in player_list (maybe) (#62028) 2021-10-12 02:39:17 -07:00
Fikou 4663f9afce secret gateway update (#62003)
admins are now notified about a secret gateway load failing, also logs this
secret z levels are protected from incorporeal movement
fixes unpowered ruin areas being powered
adds a bunch of new areas for secret gateways, since var edited areas probably arent a good idea its good to have a few presets
adds cordon turfs and areas, ingame they just look like the z level border, they are completely indestructible, you cant pass them, and if you somehow do, the cordon area kills you (idea from goon but the code and sprites are mine)
adds a z level injector mapping trait, injects a z level trait into the z level its placed on, if you want to add something like ash storms or whatever to your map
adds an anti xray z level trait, you can optionally add this with the z level injector to protect your map against any xray or whatever
2021-10-10 20:20:22 +01:00
TiviPlus 17c603f1d0 Remove deprecated preferences/lobby menu proc (#61945) 2021-10-07 23:20:16 -07:00
NamelessFairy cb31682d91 Replaces the Mafia button with the Minigames button. Adds tgui panels for selecting minigames and for CTF (#61638)
This PR replaces the Mafia button on the observer HUD with a minigames button that allows you to access both CTF and Mafia.

It also adds a CTF menu that allows you to view current scores, players needed to start a game, and joining a ctf game without needing to move to the spawner.

Co-authored-by: Jared-Fogle <35135081+Mothblocks@users.noreply.github.com>
2021-10-07 16:42:06 +03:00
Timberpoes ce352fb46b Use ckeys instead of keys in key name helper proc and new_player login. (#61857) 2021-10-03 20:15:57 -07:00