57 Commits

Author SHA1 Message Date
Varlaisvea 0530f2458a fixes infinite morphium duplication exploit (#9046)
* fixes very old exploit that we literally just discovered

* this is what i get for speedrunning a bugfix

* reworks material ejection code

* literally it worked fine this is just so github likes it

* Update code/game/machinery/autolathe.dm

Co-authored-by: Atermonera <atermonera@gmail.com>

* Update code/game/machinery/autolathe.dm

Co-authored-by: Atermonera <atermonera@gmail.com>

* code prettiness

---------

Co-authored-by: Atermonera <atermonera@gmail.com>
2023-05-28 10:55:00 -08:00
Varlaisvea 6b909477bc the little construction pr (#9002)
* the little construction pr

* construction-related bugfixes (teal carpet corners, arcade construction, airlock screwdriver panel)

* Update code/game/objects/items/stacks/tiles/tile_types.dm

Co-authored-by: Atermonera <atermonera@gmail.com>

* mmmm sweet sweet updates

* actually compiles

---------

Co-authored-by: Atermonera <atermonera@gmail.com>
2023-03-08 18:55:54 -08:00
spookerton bb472b4832 replace 0 for EMPTY_BITFIELD on atom_flags configs 2022-10-18 09:36:40 +01:00
spookerton 3abdbbaa1c replaces atom.initialized with ATOM_INITIALIZED
refactors atom/var/flags to atom_flags and area_flags
moves NOBLOODY, NOBLUDGEON, and PHORONGUARD to item_flags instead of atom_flags
corrects various misapplied flags
2022-10-18 09:36:36 +01:00
Cerebulon 078c0b1fe1 Adds Some More Decorative Flooring Types 2022-04-17 17:57:06 +01:00
MistakeNot4892 b22a0568a3 Sideports a couple of init unit tests from Neb. (#7893)
* Sideports a couple of init unit tests from Neb.

* Trying to unfuck initialize logic.

* Removing del()s.

* Adjusting return values to Initialize().

* Moving some dangerous object logic from obj onto the two types that use it.

* Rolling back some init changes and commenting out initialized atom unit test.

* this comment formatting is a minor war crime

* Removed sleep() from signaler circuit Initialize().

* Additional Init fixes post-rebase.

* Uncomments subsystem test since that's passing.
2021-02-21 12:03:34 -09:00
Nadyr 8ce61742c0 Fixes sif forest grass, adds overgrowth tiles (#7841) 2021-01-27 11:19:18 -08:00
Atermonera 8ad111435e Adds sifgrass floor tiles. Grass tiles spawn greengrass (#7714) 2020-10-16 23:05:29 -07:00
Rykka 0c7a7fd2b8 Massive Ambience and Sound Overhaul + Addition, Squashed Commit Edition 2020-08-21 06:53:05 -04:00
BillyBangles cb8a366113 Adds marble floor tiles and crafting recipe (#7264)
* Adds marble floor tiles and crafting recipe

* swaps screwdriver removal for crowbar

* changelog fix
i'm a silly goose and forgot to edit out the screwdriver bit
2020-06-06 11:35:35 -07:00
Cerebulon 52e6669bf9 Big Bastard Incidental Sound Port 2020-03-08 23:25:45 +00:00
Cerebulon f801cc95be Allows precision placement of most items 2020-02-19 21:16:26 +00:00
Andrew d65913df29 Cyborgs Can See and Repair Holes in Ceiling (#6347)
* Cyborgs Can See and Repair Holes in Ceiling

* Adds changelog because I keep forgetting
2019-07-27 12:05:23 -05:00
Anewbe aade8c356f Items are now assumed to be conductive, rather than the opposite 2019-03-02 20:34:49 -06:00
Atermonera e70fb213ed Adds roofing tiles (#5409)
* Adds roofing tiles
They're used to place plating overhead without going up a floor
And to remove weather effects

Changing a turf will correctly inherit the old outdoors variable, so that roofing tiles can check it when deciding whether to roof an area

* Adds roofing tiles
They're used to place plating overhead without going up a floor
And to remove weather effects

Changing a turf will correctly inherit the old outdoors variable, so that roofing tiles can check it when deciding whether to roof an area
2018-07-14 14:24:18 -05:00
Nerezza c7fdd099b6 Flooring fixes
Firstly it fixes a long-standing bugs with constructable flooring not actually populating on server startup, but instead through a proc that's only called on existing floor tiles.

Second it changes sif wood tiles into a child of wood tiles now that the reason for carpet colors not working is known & fixed.
2018-02-24 15:31:10 -06:00
BillyBangles 5486edf567 Adds various cabin-related things. (#4888)
* adds fireplace, makes bonfire generate heat

kinda, anyways

* adds sifwood tiles, fixes old blue carpets

old blue carpets are now known as "teal carpets." they still come in the
carpet crate from cargo.

* lets you dig up tree stumps with shovels

* changelogs in the house

* adds a delay to digging up stumps

digging up stumps is easier said than done
2018-02-21 15:45:01 -06:00
Spades edfa947278 These are not Vorestation edits. (#4088)
Y'all are confusing the shit out of us.
2017-10-16 23:01:30 -05:00
Neerti 2f173dd16b Adds differing stack sprites
Ports most of /tg/'s sprites for stacks displaying their contents.  I added some of my own as well to fill in materials that we have but they didn't.
Moves all stack icons to their own dmi.
Reworks fifty_spawners to use paths instead of strings, as it prevents bugs in the long term.
2017-09-28 01:04:19 -04:00
Cameron653 2207d55e84 owo whats this 2017-09-15 18:43:43 -04:00
Woodratt 0bd91d1133 Floor tile, type and carpet change
- Ports the floor types, structure, and sprites (techfloor) from Vorestation (who ported them from Eris).
- Fixed missing techfloor floortile sprite icons (ported from Eris).
- No actual new floor sprites sans the techfloor. Saving for when we actually change maps to do that.
- In theory, also added a changelog for what I'm doing. Not sure if worked.
2017-08-28 23:00:15 -07:00
MagmaRam 190a2bc70c Replaces [stack]/fifty atoms with atoms that spawn the normal stack
The stack/fifty objects were really buggy, this should fix all of that in one go.
2016-12-17 17:27:04 -06:00
Neerti 828dacf485 Centralizes weight class definitions
A lot of new defines are now in inventory_sizes.dm, which contains;
All the size identifiers (the thing that tells the game if something is bulky, or w/e).
Storage costs for all the sizes, which are exponents of two, as previously.
A few constants for inventory size.

Also changes all storage item's capacity definitions by basing it off of how many 'normal slots' exist for it.  This allows one to change the definition for all of the defines in the file, and everything will follow along without needing to change 500 files.  In testing, I made all ITEMSIZE_COST_* defines doubled, and nothing had broke.

The benefit of doing all of this is that it makes adding new weight classes in the future much simpler, and makes knowing how much space a container has easier, as seeing ITEMSIZE_COST_NORMAL * 7 means it can hold seven normal items.
2016-09-22 00:51:51 -04:00
Yoshax c60407e6f4 Adds fifty stacks for all material stacks and makes drop pod actually drop fifties 2016-07-10 03:40:24 +01:00
Mark9013100 41de641287 Adds blue carpet stack 2016-05-27 22:34:35 -04:00
Kelenius 359889a15c Axes old wire, fixes costs in lathe 2016-03-12 11:38:52 +03:00
Yoshax 46f2528481 Adds linoleum stack 2016-02-20 04:10:41 +00:00
Hubblenaut 5baf93722a Fixes subcategories of floor tiles not being placable 2015-12-10 16:28:40 +01:00
PsiOmegaDelta 8a1b414e28 Floor painter, turf, and decal tweaks.
Makes several custom color definitions, utilized by the floor painter, floor tiles, decals, etc.
Colored floor turfs now use a white icon state and applies a color, similar to the corresponding decals. This ensures they have the same color tone (was slightly off previously).
Colored floor tiles also use a white icon state and color application.
Removes now unused item states.
2015-09-21 15:14:13 +02:00
Zuhayr 3f833f2b24 Reimplemented floor lights as a machine built at the autolathe. 2015-08-16 19:26:17 -07:00
PsiOmega aa475ea23c Adds (dirty) steel tiles. 2015-08-16 06:07:59 -07:00
PsiOmega ddcc06d55f Additional floor decal icons.
Adds grey, purple, and white floor decals.
Adds full red and yellow floors, both for floor and floor tile.
Makes the U-shaped warning sprites match the straight and L-shaped sprites.
2015-08-16 06:07:51 -07:00
Zuhayr c8baafed2a Removed turf_animation for now, ported vg hasproximity optimisation. Rewrite and refactor of how turfs handle icon updates, edge smoothing and
construction/deconstruction. Major map rework/changes.
2015-08-16 06:05:21 -07:00
PsiOmega f25e8a7a67 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/game/objects/items/stacks/tiles/plasteel.dm
	code/game/objects/items/stacks/tiles/tile_types.dm
	code/modules/materials/materials.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/silicon/pai/pai.dm
	code/modules/surgery/implant.dm
	code/setup.dm
2015-06-26 20:28:47 +02:00
mwerezak 56065022a7 Updates fire_act() implementations to work better with lower temperature fires
In some cases fire_act() wasn't even checking the applied temperature. Reworks how fire damages flooring.
2015-06-26 00:40:55 -04:00
mwerezak 9d7a1b9ad6 Fixes misleading path and proc name 2015-06-26 00:40:31 -04:00
Zuhayr ebe62cefd8 Refactored random map generator system and added several terrain generators.
Created a global list to track base turfs for explosions/shuttle moves.
Remaps the asteroid to be a moonlet. Tidies up some references to 'asteroid', removes moonbase from the accessible z level list.
2015-06-03 04:36:19 +09:30
Kelenius 3bdb5ff9ea Merge branch 'dev' into ofResearchAndPrototypes
Conflicts:
	code/game/objects/items/stacks/sheets/glass.dm
	code/game/objects/items/stacks/sheets/leather.dm
	code/game/objects/items/stacks/sheets/mineral.dm
	code/game/objects/items/stacks/sheets/sheet_types.dm
	code/game/objects/items/weapons/kitchen.dm
	code/modules/hydroponics/trays/tray_tools.dm
	code/modules/research/circuitprinter.dm
	code/modules/research/protolathe.dm
	code/modules/research/rdconsole.dm
2015-05-22 19:26:39 +03:00
Kelenius 35a20002c6 Merge branch 'dev' into ofResearchAndPrototypes
Conflicts:
	baystation12.dme
	code/defines/obj/weapon.dm
	code/game/mecha/equipment/tools/medical_tools.dm
	code/game/mecha/equipment/tools/tools.dm
	code/game/mecha/mecha.dm
	code/game/mecha/mecha_parts.dm
	code/game/objects/items/devices/flash.dm
	code/game/objects/items/devices/powersink.dm
	code/game/objects/items/devices/scanners.dm
	code/game/objects/items/stacks/sheets/glass.dm
	code/game/objects/items/stacks/sheets/sheet_types.dm
	code/game/objects/items/weapons/RCD.dm
	code/game/objects/items/weapons/circuitboards/machinery/biogenerator.dm
	code/game/objects/items/weapons/circuitboards/machinery/cloning.dm
	code/game/objects/items/weapons/circuitboards/machinery/mining_drill.dm
	code/game/objects/items/weapons/circuitboards/machinery/pacman.dm
	code/game/objects/items/weapons/circuitboards/machinery/power.dm
	code/game/objects/items/weapons/circuitboards/machinery/recharge_station.dm
	code/game/objects/items/weapons/circuitboards/machinery/research.dm
	code/game/objects/items/weapons/circuitboards/machinery/shieldgen.dm
	code/game/objects/items/weapons/circuitboards/machinery/telecomms.dm
	code/game/objects/items/weapons/circuitboards/machinery/unary_atmos.dm
	code/game/objects/items/weapons/flamethrower.dm
	code/game/objects/items/weapons/handcuffs.dm
	code/game/objects/items/weapons/kitchen.dm
	code/game/objects/items/weapons/shields.dm
	code/game/objects/items/weapons/storage/backpack.dm
	code/game/objects/items/weapons/surgery_tools.dm
	code/game/objects/items/weapons/teleportation.dm
	code/game/objects/items/weapons/tools.dm
	code/modules/assembly/igniter.dm
	code/modules/assembly/infrared.dm
	code/modules/assembly/mousetrap.dm
	code/modules/assembly/proximity.dm
	code/modules/assembly/signaler.dm
	code/modules/assembly/timer.dm
	code/modules/assembly/voice.dm
	code/modules/clothing/glasses/glasses.dm
	code/modules/hydroponics/trays/tray_tools.dm
	code/modules/mining/drilling/scanner.dm
	code/modules/mining/mine_items.dm
	code/modules/mining/ore.dm
	code/modules/mob/living/silicon/robot/analyzer.dm
	code/modules/power/rust/circuits_and_design.dm
	code/modules/projectiles/ammunition/boxes.dm
	code/modules/projectiles/guns/energy/laser.dm
	code/modules/projectiles/guns/energy/special.dm
	code/modules/projectiles/guns/energy/stun.dm
	code/modules/research/circuitprinter.dm
	code/modules/research/designs.dm
	code/modules/research/destructive_analyzer.dm
	code/modules/research/protolathe.dm
	code/modules/research/rdconsole.dm
	code/modules/research/research.dm
	code/modules/research/server.dm
	code/modules/research/xenoarchaeology/genetics/reconstitutor.dm
2015-05-20 11:50:28 +03:00
Zuhayr 358867f3b5 Major sheet and material refactor. 2015-05-17 01:46:53 +09:30
Zuhayr 495952ff5d Changed steel material name to a define. 2015-05-12 13:08:41 +09:30
Zuhayr bc50ba5166 Merge resolution. 2015-05-11 11:47:24 +09:30
Zuhayr dbf8e53020 Mass rename of 'metal' to steel, refactor of walls and falsewall mineral construction, refactor of materials and ores. 2015-04-26 12:53:26 +09:30
PsiOmega 1ae0ad6d92 Updates the atom_pool, now datum_pool, to handle any datum object.
Makes the garbage collector similarly robust. Continues the whole Destroy/qdel porting.
2015-04-24 09:59:05 +02:00
Kelenius db30c15e4c Updates to science
Protolathe and CI build procs moved to them from RD console.
Protolathe and CI now have a build queue. Designs take varying time to
build.
P and CI material storage is now a list instead of a set of vars.
origin_tech is now a list.
All sheets now contain exactly 2000 units of matter.
In design datum, chemicals and materials are two separate lists.
Designs are now sorted. The method is kinda hacky but flexible. They
have a var, sort_string. Designs are sorted alphabetically using it.
Circuits how show whether they build a machine or a computer in CI menu.
Adds item construction, for now protolathe is used.
2015-04-04 13:38:03 +03:00
Kelenius a0b73140e9 Fixes for synths and decompiler 2015-02-20 13:32:10 +03:00
Kelenius 1c1e644f29 Adds robot synths 2015-02-19 21:04:27 +03:00
Kelenius 10de826ca3 Removes FPRINT and TABLEPASS flags 2015-01-23 22:27:32 +03:00
Amunak 4882074739 Code formatting, EOL at EOF fixes, refactoring 2014-12-18 03:11:49 +01:00
Zuhayr 9e7fe6d700 Rewrote autolathe, changed all m_amt and g_amt to a list called 'matter'. Updated RCD vars in view of this. 2014-06-11 01:14:38 +09:30