Commit Graph

40 Commits

Author SHA1 Message Date
LemonInTheDark
cd576ab519 Del The World: Unit testing for hard deletes (#59612)
Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
2021-08-15 21:09:26 -07:00
Fikou
270acce4f5 [Ready] Mining Loot Rework (#60516)
Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
2021-08-08 02:22:34 -07:00
Watermelon914
375a20e49b Refactors most spans into span procs (#59645)
Converts most spans into span procs. Mostly used regex for this and sorted out any compile time errors afterwards so there could be some bugs.
Was initially going to do defines, but ninja said to make it into a proc, and if there's any overhead, they can easily be changed to defines.

Makes it easier to control the formatting and prevents typos when creating spans as it'll runtime if you misspell instead of silently failing.
Reduces the code you need to write when writing spans, as you don't need to close the span as that's automatically handled by the proc.

(Note from Lemon: This should be converted to defines once we update the minimum version to 514. Didn't do it now because byond pain and such)
2021-06-14 13:03:53 -07:00
ishitbyabullet
c1d1fae8ea Empty graves can now be spawned (#58200)
* i walked along the no mans road

POV: you got fucked on a previous branch from something stupid

* Update code/modules/ruins/lavalandruin_code/elephantgraveyard.dm

Co-authored-by: Fikou <piotrbryla@onet.pl>

* Update code/modules/ruins/lavalandruin_code/elephantgraveyard.dm

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>

Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-04-08 15:48:40 -04:00
cacogen
99ca79822e Standardises Donk Co. stylisation (#57383) 2021-03-04 13:12:47 -08:00
TemporalOroboros
e4079c87b8 update_appearance (#55468)
Creates update_name and update_desc
Creates the wrapper proc update_appearance to batch update_name, update_desc, and update_icon together
Less non-icon handling code in update_icon and friends
Signal hooks for things that want to change names and descriptions
99%+ of the changes in this are just from switching everything over to update_appearance from update_icon
2021-02-19 12:06:18 -03:00
LemonInTheDark
5c22a0cfc1 Converts many proc overrides to properly use list/modifiers, lots of other smaller things (#56847)
Converts many proc overrides to properly use list/modifiers, fixes some spots where modifiers should have been passed, calls modifiers what it is, a lazy list, and cleans up some improper arg names like L, M, C, and N. Oh and I think there was a spot where someone was trying to pass M.name in as a string, but forgot to wrap it in []. I fixed that too.
2021-02-16 09:18:46 -05:00
Mothblocks
0f435d5dff Remove hideous inline tab indentation, and bans it in contributing guidelines (#56912)
Done using this command sed -Ei 's/(\s*\S+)\s*\t+/\1 /g' code/**/*.dm

We have countless examples in the codebase with this style gone wrong, and defines and such being on hideously different levels of indentation. Fixing this to keep the alignment involves tainting the blames of code your PR doesn't need to be touching at all. And ultimately, it's hideous.

There are some files that this sed makes uglier. I can fix these when they are pointed out, but I believe this is ultimately for the greater good of readability. I'm more concerned with if any strings relied on this.

Hi codeowners!

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2021-02-14 16:53:29 -08:00
cacogen
6fdefe3e73 Fixes tags on ordered pizza (#56369)
Box tags

    Fixes bug where box tags weren't updating correctly on creation
    Adds box tag flavours for the pizzas without them (i.e. Donk Pocket -> Bangin' Donk, Dank -> Fresh Herb, Sassysage -> Sausage Lovers, Arnold -> 9mm Pepperoni)

Randomised pizza crates

    Pizza crates can now come with any five pizzas, weighted by disruptiveness
    Small chance of getting one pizza bomb in a pizza crate (either armed or not) per shift

Armed pizza bomb

    Adds an armed variant of the bomb pizza box, which has the boxtag "Meat Explosion", contains a meat pizza and explodes 5 seconds after opening
    Makes the pizza party spawner use the armed bomb pizza box, instead of giving whoever a free syndicate pizza bomb they probably aren't allowed to use anyway

Secure kitchen crate

    Adds the secure kitchen crate from my previous PR
    Adds a secure pizza crate variant to KiloStation's cargo warehouse where the freezer crate was, which contains the pizza party and is locked with kitchen access

Ghost examines

    Adds ghost examine messages for pizza boxes with bombs or the nanomachine pizza in them
2021-02-13 03:35:37 -03:00
Qustinnus
707fc287b4 Replaces intents with combat mode (#56601)
About The Pull Request

This PR removes intents and replaces them with a combat mode. An explanation of what this means can be found below
Major changes:

    Disarm and Grab intents have been removed.
    Harm/Help is now combat mode, toggled by F or 4 by default
    The context/verb/popup menu now only works when you do shift+right-click
    Right click is now disarm, both in and out of combat mode.
    Grabbing is now on ctrl-click.
    If you're in combat mode, and are currently grabbing/pulling someone, and ctrl-click somewhere else, it will not release the grab (To prevent misclicks)

Minor interaction changes:

Right click to dissasemble tables, racks, filing cabinets (When holding the right tool to do so)
Left click to stunbaton, right click to harmbaton
Right click to tip cows
Right click to malpractice surgery
Right click to hold people at gunpoint (if youre holding a gun)
Why It's Good For The Game

Intents heavily cripple both the code and the UI design of interactions. While I understand that a lot of people will dislike this PR as they are used to intents, they are one of our weakest links in terms of explaining to players how to do specific things, and require a lot more keypresses to do compared to this.

As an example, martial arts can now be done without having to juggle 1 2 3 and 4 to switch intents quickly.

As some of you who saw the first combat mode PR, the context menu used to be disabled in combat mode. In this version it is instead on shift-right click ensuring that you can always use it in the same way.

In this version, combat mode also no longer prevents you from attacking with items when you would so before, as this was something that was commonly complained about.

The full intention of this shift in control scheme is that right click will become "secondary interaction" for items, which prevents some of the awkward juggling we have now with item modes etcetera.
Changelog

cl Qustinnus
add: Intents have been replaced with a combat mode. For more info find the PR here: #56601
/cl
2021-02-04 16:37:32 +13:00
小月猫
2e764a03c9 Refactors how floors turfs set broken/burnt states + fixes glass plating turning invisible when damaged (#56200)
adds sprites for both normal and reinforced glass plating (i reduced it to 2, from 5, from when the image was taken), the sprites arent the absolute best but arent terrible imho,

refactor to floor code to not dumbly hardcode an initialization for broken_state list sprites, as well as moves burnt and broken states to procs, and has an override to all floor turfs which have both a broken and/or burnt icons unique to it

also changed how certain tiles react when broken, now, instead of magically turning into iron plating when stuff like dirt, lavaland basalt, sand, water, wasteland tiles, you name it. when they break, they will just use their basic icon (typically, wont change), rather than turn into iron plating magically. when asteroid turfs (lavaland basalt, icebox snow, asteroid sand etc..) which have a dug icon break, they change to their dug version instead
2021-01-18 19:07:05 -03:00
Azarak
ecde1f52b2 [READY] Nukes archeology component and icon_plating and environment_type in favor of base_icon_state. Dig behaviour code improvement (#55819)
* aa

* Removes archeology component. Nukes icon_plating and environment_type in favor of base_icon_state

* Actually maybe lets not use a proc for updating asteroid icon state when its dugged up

* Update plating.dm
2021-01-10 21:17:35 +01:00
Tad Hardesty
e04abe2384 Tweak typography of elephant graveyard ruin (#55445)
Fixes a missing space, a double space, and a missing hyphen.
2020-12-12 19:27:23 +00:00
ArcaneMusic
bf39caca6a Refactors Pastries into newfood. (#54996)
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: Floyd <Floydje123@hotmail.com>
2020-11-24 16:18:10 -08:00
ArcaneMusic
8276f4140f Graveyard graves now sound like they're being dug open/closed. (#55080) 2020-11-22 02:43:07 -08:00
L
fb38066f09 bitmask 2020-09-26 12:14:27 -03:00
L
e461d7b777 icons 2020-09-26 12:14:25 -03:00
AnturK
61e5c556df Custom statues and sculpting changes. (#53154)
### Gameplay changes:
- Spacemen lose their ability to sculpt all minerals into statues barehanded, you need a chisel now.
- You can now create carving blocks out of 5 sheets of most materials.
- Using a chisel on the blocks you can designate what to carve in it (including the preset statues from before).
- Chisels can be printed at autolathe, there's also one in art storage.
### Code changes:
- Squeak component now squeaks on attack_hand for structures.
- Radials now accept atom paths automatically extracting the name with initial.
- Base and rigid stack recipes renamed appropriately.
- Statues now use custom materials.
2020-09-23 02:46:01 -03:00
Rohesie
988319b3e3 mobility refactor (#52929) 2020-08-24 13:56:07 -07:00
TemporalOroboros
6e950daccc Defines damage flags. (#53158) 2020-08-24 08:20:33 -03:00
TemporalOroboros
e78d82592f Refactors reagent exposure code (#51396)
* Refactors reagent exposure code

Removes istype clutter. Renames a few procs

* == TRUE

Adjusts COMPONENT_NO_EXPOSE_REAGENTS bitflag offset.

TODO: Remove comment

Co-authored-by: Rohesie <rohesie@gmail.com>

* == TRUE

Adjusts COMONENT_NO_EXPOSE REAGENTS bitflag offset.

Removes comment

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-06-21 20:03:19 -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
Fikou
5c88d587b4 removes king goat (#51366)
* Revert "Remodels king goat ruin (#50813)"

This reverts commit 26ffe3d539.

* numba 1

* bye

* bye 2

* bye 3

* fuck bitches get money

* hey this was actually a good change

* goat sounds

* fuck

* h

* waaaaaaaaagh
2020-05-31 17:38:07 +02: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
spessman-007
5ae305ec9f Resolve issues with incorrect usage of a/an (#51095)
Co-authored-by: NewSta <spessman-007@users.noreply.github.com>
2020-05-25 01:34:34 +08:00
fluffe9911
5eea39977d [READY TO BE MERGED] King Goat Achievements, bugfixes, and minor tweaks (#49159)
* king goat memes

* I cant grammar

* newline

* the arena is no longer pressurised

* How into grammar

* I am embarrassed I did not notice this

* no hotel vacations in the arena

* better goat hoof sprite curticy of stephen

* new goat gun sprite

* might as well

* grammar

* no more king goat plushies in toy crates

* Update code/modules/mob/living/simple_animal/hostile/megafauna/king_of_goats.dm

Co-Authored-By: moo <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>

* done

* based and redpilled

Co-authored-by: moo <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
2020-02-24 20:47:42 -05:00
fluffe9911
00043330a0 New King Goat Lavaland Boss! (#48823)
About The Pull Request

This pr adds in a new lavaland boss in a seperate z level arena also included are goat plushies that ram into people and goat skins which you get by butchering goats and can wear on your head, a goat gun that shoots goats and finally multiple tweaks/fixes generally involving possible ways to teleport out of noteleport area and or cheese the king goat.
Why It's Good For The Game

Lavaland has not seen any new bosses for a long bloody time and although the boss may be a bit silly I feel more hardcore players will enjoy the challenge it brings since this is meant to be a very hard boss also new goat related items are always neat.

🆑 Fluffe9911 for porting/making most of it, Monster and Sabiran for the King Goat!
add: A new king goat lavaland boss!
add: Goats now drop skin which you can wear on your head! (coder sprite)
add: Goat themed plushies that ram people! (realistic version sprite by identification code by karma)
/🆑

goat

This is ported over from my work on yogstation with minor changes mostly to make things work there is more goat content I made but didnt wanna do too much at once and dont know if tg would like it
2020-01-29 11:50:27 +13:00
spookydonut
2591ce17a6 Travis EOF newline detection v3 (#47539)
* scream

* aaa

* aaa

* new one
2019-11-04 19:16:50 -08:00
ArcaneMusic
f796acbaf8 Adds a new Lavaland Ruin, the Elephant Graveyard (#47325)
* Initial Commit, Features the Map, Map specific files, changes to a metric ton of icons, etc.

* Fixes merge conflict, actually adds the map

* Spelling is hard Part 1

* Alright, steps are bad. Got it.

* Clean slate, please pretend to compile

* dme issue

* Fixes it for lavaland elites PR

* Removes the last dirty step_x, removes duplicate file, makes treavor happy

* Fixes some newline issues.

* Fixes some types, spawns skeletons in select graves since mob_spawns kept shoving them outside.

* Makes bone statues and shovel actually craftable, cleans up some comments.

* Properly defines muddy paper, updates map, fixes a few more typos.

* Prevents some future turf atmos issues, finally touched up the two skull sprites.

* Refactors strong mineral drops, cleans up some duplicate code, prevents washing hands with OIL

* I swear officer, i'm a native english speaker, fixes remains dropping correctly, un-nests my Ifs further.

* Oil well now covers target in oil when interacting with it.

* Refactors sink deconstruction a bit, oil wells can't be constructed with a wrench.

* Cleans up some atmos, and adds a return

* Adds subtype of remains for use in graves, move their spawn to src, not loc

* Moves around remains spawn, gets rid of untouched var
2019-10-26 21:41:43 +02:00
skoglol
e565f8ec0e Fixes sentience balloon icon (#45791) 2019-08-09 15:10:48 -07:00
Rob Bailey
65e9888fa6 [READY] Smart Cables (#44265)
Cables now autoconnect on cardinal directions. All cable placement has been completely stripped out and replaced with simple single cable per tile logic.
Low effort demo: https://www.youtube.com/watch?v=fXp8s6ORWbA
Yes I am aware that cutting it is not dropping wire, that version was bugged.
Cables no longer need a knot specifically placed to link to power objects. The sprite is automatically changed to represent this.
The only exception to this logic is that on smes units, due to the terminal being next to the output, they will not link there.
On a technical powernet side, this is the same as old cables once actually placed. They still use the existing powernet system, just the placement and connection works differently.

Old cables have been turned into "pipe cleaners" for wire art purposes. they work just like the old ones, just missing all the powernet functionality, and also you can put them on top of the floor.
Why It's Good For The Game

How obnoxious cables were to both map and work with in game has been something that has annoyed me for a really long time now.
This is both easier for new players to learn, and easier for experienced players to work with.
Along with making in game much more intuitive and easier, it makes mapping much easier as well. Mad lad wjohn was able to rip out all the mapping conversion in one day because of how much faster it is to work with.

cl actioninja and wjohn
add: Cables have been completely reworked. Simple per tile connection logic, automatically connects to things above it. Think minecraft redstone.
add: Old cables have been kept as pipe cleaner. They are non-functional in terms of power, but otherwise have the same connection logic. Also can go on top of tiles.
remove: mech cable layer has been removed because it was terrible shitcode nobody used
tweak: (sort of balance) cable stack sized has been reduced to 15.
/cl
2019-06-22 10:24:37 +12:00
AnturK
c007c505fc Minor puzzle performance improvement 2018-08-20 11:24:21 +02:00
ShizCalev
600586c72b Fixes var set lists on maps (#39615) 2018-08-09 17:04:25 -04:00
81Denton
5b37938f6c Lavaland Syndie base tweaks (#39472)
I really like the Syndie lavaland base since it allows you to test deadly chem
mixes with impunity (read: without getting banned or having to set up a local
server). I have tweaked a few areas to let players experiment even further:

Chemistry related changes:

* Made the testing chamber airlock heatproof and added scrubbers/vents to
  restore air after you've ignited the latest burnmix.
* Replaced loose grenade casings/assemblies with a vending machine inside
  Chemistry.
* The vending machine contains casings, assemblies and one holy water bottle
  for strange reagent/life reactions. If syndies are clinically bored, they can
  use it to set up a monster shooting gallery as well.
* Chemical/soda/beer dispensers start emagged. This both allows syndies to
  experiment with more chemicals and gives miners an incentive to come inside.
  Non deconstructable, meaning you can't unwrench it.
* Added a smoke machine board to the warehouse, as well as more stock parts to
  let players build more machinery and beakers for grenades.

Other changes:

* I added a cabinet with syndicate documents to the vault - this is valid for a
  10.000 credit bounty at cargo.
* Replaced incinerator machinery with the proper "sydicatelava" subtypes; added
  a DP vent and controller to the incinerator airlock.
* Set waste outlet volume_rate to 200 so that the chem test chamber can vent
  gases quickly.
2018-08-02 19:11:34 -07:00
AnturK
be7d1b8f88 Sliding puzzle improvements (#39471)
* Sets notransform on the mob and makes few more things respect it.
* Makes if location contains any indestructible walls. (I need to switch these
  to flag instead of path checking)
* Adds it to smite.
2018-07-31 14:28:25 -07:00
AnturK
69f4fc0dc5 Adds small lavaland ruin (#39307)
* Adds puzzle ruin.

* It's not really unwanted anymore.

* Adds prison cube.
2018-07-25 07:22:51 -04:00
KorPhaeron
b78e8decf5 Lavaland Clock Cult Ruin (#38263)
* Dead Ratvar

* tgm map
2018-06-04 15:04:55 -04:00
ShizCalev
4917204a1c Cleans up more paper fluff varedits. (#30418) 2017-09-06 18:41:46 -05:00
Jordan Brown
af4d9a85c9 Repaths /obj/item/weapon to /obj/item (#29929) 2017-08-16 10:38:51 -03:00
shizcalev
8ebf6b6a43 cleaned up paper 2017-07-26 05:35:05 -04:00