Commit Graph

114 Commits

Author SHA1 Message Date
SkyratBot
72974ebac4 [MIRROR] Refactors occupant to use setter (#1357)
* Refactors occupant to use setter (#54373)

This is to make it easier to attach a signal to the setting of the occupant.

* Refactors occupant to use setter

Co-authored-by: nicbn <nicolas.nattis@gmail.com>
2020-10-18 17:05:22 +01:00
SkyratBot
970a2b03d6 [MIRROR] Mobility refactor: no more update_mobility() (#1233)
* Mobility refactor: no more update_mobility()

* Update robot.dm

Fixes robots.

* megadumb

* Update robot.dm

* weh

* Update gunpoint_datum.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-10 02:31:35 +02:00
SkyratBot
98568e191a [MIRROR] Enforce preserving parent proc return values across ui_act call stacks (#999)
* Enforce preserving parent proc return values across ui_act call stacks (#53964)

All ui_act procs should call parent by default. All procs should preserve the value of the parent proc when it's TRUTHY and pass it down the call stack. No UI should be interactible when its flags or state indicate it should not be, except when explicity overriden by child procs intentionally disregarding parent return values to achieve a specific goal.

* Enforce preserving parent proc return values across ui_act call stacks

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-09-26 17:17:59 +02:00
SkyratBot
88d720571c [MIRROR] Fix minor implant case runtime (#844)
* Fix minor implant case runtime (#53698)

* Fix minor implant case runtime

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-09-17 06:11:02 +02:00
SkyratBot
ec09510459 Bools and returns super-pr (#53221) (#565)
Replaces like 70-80% of 0 and such, as a side effect cleaned up a bunch of returns
Edit: Most left out ones are in mecha which should be done in mecha refactor already
Oh my look how clean it is

Co-authored-by: TiviPlus <TiviPlus>
Co-authored-by: Couls <coul422@gmail.com>

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Couls <coul422@gmail.com>
2020-08-30 05:12:59 +02:00
SkyratBot
f733bc21a8 [MIRROR] Mobility refactor and code cleanup - lacking appendages edition (#509)
* mobility refactor (#52929)

* Mobility refactor and code cleanup - lacking appendages edition

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-25 01:34:46 +02:00
SkyratBot
40eb0992a8 [MIRROR] Adds the anti-teleportation implant to the game/the space hotel (#511)
* Adds the anti-teleportation implant to the game/the space hotel (#52660)

* stay in the goddamn hotel

* Adds the anti-teleportation implant to the game/the space hotel

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
2020-08-25 01:33:03 +02:00
SkyratBot
72c69368b6 [MIRROR] Opacity refactor (#405)
* Opacity refactor (#52881)

    Moves all opacity var manipulation to a proc which sends a signal.
    light_blocker element for movable opaque atoms made, which tracks its movement and updates the affected turfs for proper lighting updates.
    has_opaque_atom boolean replaced by the opacity_sources lazylist to keep track of the sources, and a directional_opacity which serves a similar function but also allows for future expansion with on-border opaque objects (not yet implemented).
    Some opacity-related sight procs optimized as a result of this.
    Some variables moved to the object's definition.
    A define or two added into the mix for clarity.
    Some code cleaning, like turning booleans into their defines.
    One file renamed for clarity.

Changelog

cl
balance: Mechs no longer block sight. It's a non-trivial cost for the lighting system with little to no gain.
/cl

* Opacity refactor

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-19 04:48:14 +02:00
SkyratBot
2f7e5b762a [MIRROR] refactors resist act to be on atom level (#384)
* refactors resist act to be on atom level (#53016)

* refactors resist act to be on atom level

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-08-19 02:09:09 +02:00
Aleksej Komarov
0cf00a2645 tgui 4.0 (#52085)
* tgui 4.0 hyper squash

* Upgrade dependencies
2020-07-16 20:13:04 +02:00
jdawg1290
62676e72a8 Force LF line endings with gitattributes and convert repo (#52266)
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-07-16 03:02:40 +03:00
LemonInTheDark
e5547a8f5c Supermatter variable documentation, cleanup, bugfixes. (#51345)
* Makes the supermatter file smaller.

AHAHAHAHHAHA YOU FOOL YOU HAVE FALLEN FOR MY TRAP CARD

* stable build maybe? sm cleanup begins

* The old ones knew

* lemme atomize actually

* I know how to spell ok? OK?

* braindamage

* That'll do it

* That do it?

* There we go

* Wow I should test things

* test?

* I hope that clears it

* Should fix the formatting trouble

* isolates the opening proc

* Lowercase and fixes messed up proccall
2020-06-19 18:48:06 -03:00
nemvar
6ef421be42 Renames a few variables. Also reorders icon fallback order again. (#51060)
* Renames a few variables. Also reorders fallback order again.
Renames item_state to inhand_icon_state
Renames mob_overlay_icon to worn_icon
Renames mob_overlay_state to worn_icon_state
worn_icon_state/mob_overlay_state now never gets used for inhands.

* Fixes some comments

* Fixes map issue

* Restart lints

* Properly resolves conflicts
2020-05-25 06:47:19 +02:00
ATH1909
ad3dc55798 fixes macrobombs (#50674) 2020-04-30 21:24:07 -03:00
kingofkosmos
79c5a80ca0 Visible_messages verb time tenses changed to present. 2020-03-16 14:55:25 +02:00
Iamgoofball
64933efc23 Update implant_mindshield.dm 2020-02-17 16:06:01 -08:00
Iamgoofball
aafcd54345 Update implant_mindshield.dm 2020-02-17 15:59:40 -08:00
iamgoofball
a799487fb5 fixes 2020-02-14 04:47:02 -08:00
iamgoofball
9c8050aeb6 You son of a bitch! I'm fixed. 2020-02-14 03:10:04 -08:00
iamgoofball
b8cb713aad You son of a bitch! I'm in. 2020-02-14 03:04:42 -08:00
skoglol
a97b90bc3f Slight adrenal buffs (#49140) 2020-02-03 12:23:46 -05:00
spookydonut
ac7f2b5166 Fix Crossed/Entered/Exited/Bump/ui_act parameter casting (#49016)
About The Pull Request

Detected as part of my work on SpaceManiac/SpacemanDMM#167
2020-01-28 10:51:15 +13:00
thebleh
ea9dc6082b update implantcase icons on initialize (#48984) 2020-01-27 11:26:25 +01:00
MrPerson
e22560a346 update_icon() improvements (#48669)
* update_icon() improvements

Fixes some update_icon() calls to properly call parent and use update_overlays() and update_icon_state().

The rest of obj/item fuck it

* Suggested fixes, also passes the linter

* I always forget . = ..() is faster than return ..() FOR SOME FUCKING REASON

* Actually this is better

* Signilzes datum/action to update its icon when its connected item does.
2020-01-11 23:46:43 -05:00
AnturK
9dd3da4445 Batch of runtime fixes. (#48268)
* Abductor implant runtime

* Point blank knockback runtime + cleanup

* dog food begging runtime

* Malf power loop runtime

* Explosive gondola pod runtime.

* Plasma shard runtime and related.
2019-12-21 18:40:10 +01:00
spookydonut
f3a99558c3 Removes some dead/unused code (#48158)
* cleans up some deadcode

* ancient

* goon icons

* rice and garlic

* more

* last one

* fuuuuuuuuuuuuuuuuuucking subtypes
2019-12-15 14:09:02 -05:00
actioninja
c8ec5bdd36 Revert "[SPEED MERGE NEEDED] removes cat (#47999)"
This reverts commit 345d2bf607.
2019-11-26 04:35:58 -08:00
pireamaineach
345d2bf607 [SPEED MERGE NEEDED] removes cat (#47999) 2019-11-26 04:35:25 -08:00
kingofkosmos
280d416d4f Adds missing spans, missing periods and missing span endings. Also changes spans to suit the situation better. 2019-10-12 19:34:11 +03:00
Qustinnus
a394ccdc2b Material datum chairs & tables and applies materials to all items (Now with less pain for mining & RnD) (#46525)
removes materials list from items, uses custom_materials instead. This might introduce some bugs so we should testmerge this for a while (and Ill test stuff locally as much as I can)

this also adds material crafting to sheets. Test case being chairs. In the future we can add stuff like tables, walls, doors etc.

also applies materials to everything, with fixes, which can close #46299
2019-10-08 11:06:02 -04:00
kingofkosmos
8358169b8e New 'hear' span class (#46369)
* Reverts italics-span back to no color.

* Cleans up many extra spaces and indents.

* Adds 'hear' span class.

* Replaces all 'italics' used in heard messages with 'hear'.
2019-09-14 23:56:34 -07:00
skoglol
f4e7baa899 Adrenals reworked (#46211)
* Repurposes the adrenal implant.

* reverts adrenals back to 8tc

* updated uplink description, reduced oxy slightly.

* nanites in line, more description fix, stunresist back in.

* Pre testing.

* Final ling touches, removed stamcrit stun.

* Removes jitter, screen shake on metab end.

* woops.

* removes toxin damage.
2019-09-14 22:11:56 -07:00
spookydonut
e36f4f3c22 Fixes a bug with abductor implant (#46447) 2019-09-14 22:04:57 -07:00
Rob Bailey
2029163d33 playsound vary boolean define conversion (#46254)
About The Pull Request

Converts every single usage of playsound's vary parameter to use the boolean define instead of 1 or 0. I'm tired of people copypasting the incorrect usage.
Also changes a couple of places where a list was picked from instead of using get_sfx internal calls

This was done via regex:
(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\)) to match 1
(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\)) to match 0
full sed commands:
/(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\))/\1TRUE\2/ 1 to TRUE
/(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\))/\1FALSE\2/ 0 to FALSE

I'm not very good with regex and these could probably be optimized, but they worked.
Why It's Good For The Game

Code usability
2019-08-30 18:45:20 +12:00
kingofkosmos
df1fecc58c Adds notice-span to visible_messages with no spans (#46044)
About The Pull Request

Adds 'notice' span class to all visible_messages which had no span class, making all those black messages blue.
Why It's Good For The Game

This should help differentiate action-messages from talking-messages in the chat. More actions will be blue, thus black talking-messages should pop out more.
2019-08-26 20:50:00 +12:00
Rob Bailey
26b04ede42 Obliterates item_color: new washing machine functionality edition (#45961)
About The Pull Request

Completely removes item_color and the clusterfuck of bad programming it caused.

In places where item_color was used for entirely unique purposes it was split off and renamed to a new var on that typepath only, or refactored so it wasn't needed

In places where item_color was used as a dye color, it was converted to the new dye_color var

In places where item_color was used as the worn overlay it was removed and instead now icon_state is always used as the clothing overlay.

A new mob_overlay_icon var was added for manually setting where the mob overlay icon path is for specific items.

Moved some mob overlay files relating to clothing to their own directory as well for organization purposes.

Totally refactors washing machines, instead of the horrible abortion that was iterating through the typepath it now uses a registry of dye results.

Some bonus functionality to come out of this:
the washing machine now supports arbitrary dye colors.
Why It's Good For The Game

It's been 4 years since the "this should be deprecated soonish" comment was added, and this var is a shitpile of confusion if you just trace the usage of it.
Changelog

cl
add: Washing machines now support arbitrary dye color
add: Washing machines now dye nearly every item.
refactor: lots of backend changes to clothing overlays, report any issues
/cl
2019-08-26 20:38:11 +12:00
skoglol
8e6276d450 Adds UI dimension vars to machinery (#45959)
* Adds dimension var to machinery.

* cleaner

* newlines

* Cleanup
2019-08-22 00:33:10 -07:00
skoglol
718973fb9f Removes the assimilation/hivemind gamemode (#45316)
* Initial pass

* comment.

* stray ,

* stray define begone
2019-07-27 00:08:53 +02:00
Qustinnus
b33d1c49a3 [READY] Floydmats (Datum materials) & custom toolboxes (#45118)
* Initial work

* more

* ass

* wsedfwedff

* asss

* test

* stuff

* fuck

* sss

a

* kms

* asdadwedwdfwefwef

* start

* test

* dwwdew

* ewefwfef

* Redemption machine (#8)

* Redemption machine

* Removes debug messages

* changes

* fuckmyshitup

* coin mint works with new material shenanigans (#10)

* Auto stash before merge of "materials" and "origin/materials"

* woops

* furnace (#11)

* autolathe manufacturing of toolboxes

* eggs in a basket

* some small changes

* matcolors

* documentation

* more documentation and effects

* done

* Color man bad (#12)

* fixes designs

* ass

* more fixes

* fuck me

* firestacks adder

* epic fixes

* fixes designs

* DONE DIDDILY DOO

* removes category macro

* ch-ch-ch-changes

* fixes some stuff

* Fixes display of ore values (#9)

* Redemption machine

* Removes debug messages

* Re-adds value display

* Replaces the fire stacking component with an element instead (#13)

* fixes examine

* fixes ligma bugs

* double ligma boofus

* fix

* misses some defines

* fixes ORM

* Update code/datums/components/material_container.dm

Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com>

* fixes

* Makes glass objects weaker (#14)

* Makes glass objects weaker

* uses correct proc

* fixes shit

* honk honk

* better

* oh shit oh fuck

* fixes

* fuck ORMs

* fixes the biogen

* documentation

* ass (#15)

* component

* changes

* ass

* ass

* doc

* Auto stash before merge of "materials-plasmacomponent" and "origin/materials-plasmacomponent"

* fixes rounding

* fixed
2019-07-24 11:27:01 -04:00
YakumoChen
b2502f10cf Fixes diagonal box movement, makes stealth box reveal when damaged (#45274)
About The Pull Request

Lowers the integrity of the implant box from 70 (normal cardboard boxes) to 1
fixes #38612
Why It's Good For The Game

The stealth box is already an extremely powerful item, mostly due to a bug #38612 that has been around ever since we could move diagonally and hasn't been fixed.

The box is supposed to be comparable to the other stealthy item, the Chameleon Projector. However, the box has several large advantages, including:
-Full invisibility
-Faster movement (especially with the bug)
-Less obvious when moving around
-The box takes more hits to reveal you
-Easier to get back to being hard to find when revealed
-You need an open hand to open the box manually, putting you in melee range and without a weapon in the selected hand, leaving you at a major disadvantage.
-The projector can be taken away from you / dropped and takes up inventory space
-The projector needs to be in hand to use, implant is hands free
-Projector needs to be in your in-use hand to disable yourself, the box is a button, meaning you can be more prepared with the box to strike out from stealth.

The projector still has a niche, however the box is currently the meta stealth item to pick.

This PR fixes the movement bug (no more wavedashing) and makes any damage to the box reveal the user, no longer letting it be a massive damage sponge. This should bring the box much closer in line to where the Chameleon Projector is, balance wise.
Changelog

cl Chen Yakumo
balance: The stealth implant box is now flimsier than it was before.
fix: You can no longer zoom around in a box by hugging walls.
/cl
2019-07-21 11:05:43 +12:00
Garen Crownguard
6f837d6ae4 properly uses up mindshield implant on unconvertables 2019-07-10 20:58:06 -05:00
vuonojenmustaturska
8ddc9677c7 examine-code refactor (#44636)
* 1/4 done? maybe?

* more

* stuff

* incremental stuff

* stuff

* stuff & things

* mostly done but not yet

* stuffing

* stuffing 2: electric boogaloo

* Git Commit and the Kingdom of the Crystal Skull

* make it actually compile

* found more stuff

* fixes

* fix AI laws appearing out of order

* fix windows

* should be the remaining stuff

* this time for real

* i guess it should compile too

* fix sechuds
2019-06-19 22:07:57 +02:00
Emmett Gaines
c3f95024b2 Gets rid of the GetComponent macros (#44220)
* Removes the GetComponent macros

* Regex replacement for GET_COMPONENT

Search: `GET_COMPONENT\( *(.+?) *, *(.+?) *\)`
Replace: `var$2/$1 = GetComponent($2)`

* Regex replacement for GET_COMPONENT_FROM

Search: `GET_COMPONENT_FROM\( *(.+?) *, *(.+?) *, *(.+?) *\)`
Replace: `var$2/$1 = $3.GetComponent($2)`
2019-06-04 17:39:58 +02:00
vuonojenmustaturska
6a106bc877 Remove reagent ids and use typepaths where applicable (#44166)
cl Naksu
code: reagent IDs have been removed in favor using reagent typepaths where applicable
fix: mechas, borg hyposprays etc no longer display internal reagent ids to the player
/cl
2019-05-31 21:57:26 +12:00
bgobandit
e74f35b4cc requested changes 2019-05-28 02:27:28 -04:00
bgobandit
243dd8f377 Storage implants drop their items when removed. 2019-05-26 20:15:45 -04:00
vuonojenmustaturska
fb45b7a017 Turns trait accessors into defines, fixes some bugs (#43820)
It's free performance.
2019-05-06 19:44:05 -04:00
Kierany9
3b80b35cb7 Fixes the radar bugs for real (#43385)
* fixes it for real

* possible
2019-04-03 11:27:42 +13:00
Tad Hardesty
197a311fd9 Fix some proc overrides missing their parent's kwargs 2019-03-11 21:15:26 -07:00
Kierany9
14fa6040e5 Assimilation 2.0: Not quite a big enough PR to be worthy of the 2.0 title but almost (#42607)
* one

* ???

* big

* sprites

* it is done

* oofs

* no more bad jokes

* location -> reception

* i forgot a feature lmao

* yo lemme nerf this op power

* adjust removal and makes panic less insane

* hey i forgot another feature

* one mind removals

* *laser eyes meme*

* Disables multiple one minds for real this time
2019-02-12 20:02:23 -05:00