61 Commits
Author SHA1 Message Date
KashargulandGitHub 5926589c16 removes var/ inside all procs (#19450)
* removes var/ inside all procs

* .

* ugh
2026-05-05 10:55:17 +02:00
8e357dd556 EMP & Wires refactor (#19401)
* EMP Refactor

* EVERYBODY gets wires

* Shield gen

* fix

* Fix those

* Changes

* ,

* kill

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2026-04-11 15:05:41 -04:00
Cameron LennoxandGitHub a425f3e663 EMP cleanup (#18682) 2025-11-08 02:05:08 +01:00
e956d13a6b jobs, access and radio to defines (#18297)
* jobs, access and radio to defines

* .

* .

* urg

* .

* .

* finish the radio freqs

* why

* .

* .

* ticker initial

* eh

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2025-08-31 01:32:36 +02:00
37779acf01 Gets rid of hasvar usage and moves up some vars (#18262)
* Gets rid of hasvar usage

* thiiis

* moves damtype to /obj/item

* throwing

* Move vars moved

* matter as well

Pretty much only used for the robot lathe and when crafting...When you could only smelt down obj/item for its materials

* Update floor_light.dm

* exploitable

* this can be moved up...

* move persist to /item

you can't ever place /obj in storage anyway...It would imply you can store the supermatter, which I think we don't want.

* gets rid of being_used

I added this for xenoarch, that was a mistake

* move these

* move these to the base file

* Makes floorlight autolathe recipe not shit

* Update floor_light.dm

* Update floor_light.dm

* Mechs no longer gib when hitting things

---------

Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>
2025-08-21 23:08:10 +02:00
WillandGitHub b62bd4657f teshari block (#18104) 2025-07-31 01:46:48 +02:00
9a6f44b850 some more NEW to init (#17093)
* some more NEW to init

* Fixes cloning disk

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2025-02-12 07:51:26 -05:00
Kashargul a2c673ab7a refactors most spans 2024-10-02 21:10:31 +02:00
Guti 409aaba802 Remove 2024-09-09 02:36:53 +02:00
DrathekandGitHub 7c8bb85de3 Whitespace Standardization [MDB IGNORE] (#15748)
* Update settings

* Whitespace changes

* Comment out merger hooks in gitattributes

Corrupt maps would have to be resolved in repo before hooks could be updated

* Revert "Whitespace changes"

This reverts commit afbdd1d844.

* Whitespace again minus example

* Gitignore example changelog

* Restore changelog merge setting

* Keep older dmi hook attribute until hooks can be updated

* update vscode settings too

* Renormalize remaining

* Revert "Gitignore example changelog"

This reverts commit de22ad375d.

* Attempt to normalize example.yml (and another file I guess)

* Try again
2024-02-20 11:28:51 +01:00
Heroman 9a94306585 Refactors tool typechecks, refactors transforming tools, makes Altevian wrench into one 2023-10-01 09:34:43 +10:00
NovacatandGitHub 1aa4c73e8d Revert "[MIRROR] /atom New() => Initialize() [MDB IGNORE]" 2022-08-27 08:49:56 -04:00
MistakeNot4892andVirgoBot 3f9af78f3a /atom New() => Initialize() [MDB IGNORE] 2021-11-14 03:09:51 -05:00
577b986ba6 Convert some bools to TRUE/FALSE instead of 1/0. (#11100)
Co-authored-by: Aronai Sieyes <arokha@arokha.com>
2021-07-16 13:43:25 -04:00
Aronai Sieyes f630515514 Make req_[one_]access lazy 2021-05-31 13:19:27 -04:00
MechoidandVirgoBot 02ffbbe79b Gadgets & Gizmos 2021-01-15 01:56:01 -05:00
ShadowLarkens 3d7b051f2b Convert /material to /datum/material 2020-09-27 16:16:44 -07:00
Aronai Sieyes 09074eaabb Alter playsound paradigm 2020-05-18 23:42:15 -04:00
AndrewandVirgoBot e4deaa6478 Combat Mechs Can Punch More Things (#6303)
* Combat Mechs Can Punch More Things

Removes the var to check for the 5 things it can attack, instead it can punch anything (but not everything will take damage).

Gives punching objects a check so you don't accidently smash something without meaning to.

Gives closets and canisters a proc to take_damage so they'll actually get smashed by the mechs.

* Take_Damage Boogaloo

* More take_damage Stuff

Adds click delay on attacking barriers.
Proper noises when attacking material doors and barricades.

More stuff can be broken by mech punch and simple mobs.

* Adds changelong

* usr to user
2019-07-24 17:00:24 -04:00
AnewbeandNovacat 8ed384b38c Rewrites Atmospherics 2019-03-28 19:25:11 -04:00
Anewbe 729ce71aa0 Converts most istype(thing,tool) procs into an appropriate thing.is_tool() format 2018-08-02 21:45:15 -05:00
Neerti 2f7db506eb Adds Variable Click Delay
Now certain weapons can strike faster or slower than usual. No weapons currently do this as this PR just lays the groundwork for that.
The click delay can also be modified with traits. The slime agility modifier makes attacks happen 25% sooner.
Adds debug test verb to display a weapon's DPS. It's really basic but should be sufficient for future force adjustments I might do in the future.
2017-11-28 16:11:56 -05:00
Leshana 44ff1a70c6 Removes the datum pool, as it is not performant.
* Creating new objects is cheap, in fact comparable to the cost of getting it out of the pool, so it doesn't help there.
* Placing items in the pool is far more expensive than letting them garbage collect due to the resetting of vars and such.
2017-05-04 01:58:33 -04:00
SinTwo 045c393683 Revert "Revert "Frame Cleanup""
This reverts commit 82722ba42f.
2016-08-13 19:55:57 -04:00
Kelenius 83adba88d4 Updates blob
Remains of player blob axed.
blob_act() axed. Blob now has an arbitary set of things it can attack.
It will flow over everything else. Blob has an awful tendency to destroy
non-craftables.
Will test more tomorrow.
Blob will now attack mechs.
Fixes #8106.
Fixes #10705.
2015-10-05 18:10:16 +03:00
Kelenius 60196df634 Merge branch 'dev' into ofClicksAndCooldowns
Conflicts:
	code/modules/projectiles/gun.dm
2015-08-13 08:40:31 +03:00
PsiOmega e875a7ce48 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/game/machinery/computer3/buildandrepair.dm
	code/game/objects/items/devices/lightreplacer.dm
	code/modules/research/circuitprinter.dm
	code/modules/research/protolathe.dm
2015-08-08 15:34:51 +02:00
mwerezak 0ceb0e291d Fixes #10314
Replaces every check for a hardcoded material stack type with a check
for material of the stack.
2015-08-02 00:01:10 -04:00
mwerezak e3609bac94 Adds common proc to obtain the material of an object
Adds a common get_material() proc to objects, and implements overrides
where applicable
2015-08-01 23:03:21 -04:00
mwerezak 32b95445e3 Gives changeNextMove() a better name, default define 2015-06-30 22:29:45 -04:00
mwerezak 087a978d56 Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into clickcooldown
Conflicts:
	code/_onclick/click.dm
	code/_onclick/telekinesis.dm
	code/game/objects/items.dm
	code/game/objects/structures/grille.dm
	code/game/turfs/simulated/walls.dm
	code/modules/mob/living/carbon/resist.dm
	code/modules/mob/living/simple_animal/simple_animal.dm
2015-06-28 22:35:14 -04:00
PsiOmegaDelta cc7c502fb8 Updates emag attackby usages to emag_act where it's not too much of a headache. 2015-06-16 09:34:13 +02:00
Kelenius 0071ed3f24 Merge branch 'dev' into ofClicksAndCooldowns
Conflicts:
	code/_onclick/click.dm
	code/_onclick/telekinesis.dm
	code/game/machinery/deployable.dm
	code/game/objects/items.dm
	code/game/objects/structures/grille.dm
	code/modules/mob/living/simple_animal/simple_animal.dm
	code/setup.dm
2015-06-07 14:05:54 +03:00
PsiOmegaDelta a07d20d657 Ports /tg/'s meteor implementation.
Merges the two meteor events into one, and now takes severity into consideration instead.
Including the basic meteors there are also new types ranging from flaming to radioactive which may drop appropriate types of ore.
2015-06-05 14:58:35 +02:00
GinjaNinja32 dfd871f168 code/machinery, fix for code/antagonist merge string causing false positive 2015-05-30 14:05:32 +01:00
Zuhayr 93b014c699 Merge with dev. 2015-05-20 13:39:31 +09:30
Zuhayr 8f6666a32e Converted barricades to material system. 2015-05-17 02:01:20 +09:30
Zuhayr 358867f3b5 Major sheet and material refactor. 2015-05-17 01:46:53 +09:30
Kelenius 3fa79f8d51 Removes click cooldowns almost everywhere.
Still have: doors, windoors, cameras, windows, grilles, blobs, resisting, alien stuff, mechas, spray bottles.
Setting changeNextMove is now responsibility of the item being attacked.
Adds a config option to eliminate click cooldowns completely. Intended to be used by devs.
2015-05-09 17:27:19 +03:00
PsiOmega ca7fa2aa19 Grilles and rods.
Grilles no longer return more rods than they were created from when destroyed (by method other than wirecutters).
Rods are now acquired from and returned to a pool.
Also adds a pre-broken grille for mapping, avoids the case where one might be able to destroy the same grille twice.
2015-05-02 21:35:02 +02:00
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
PsiOmega 318f5e1a92 Cleans up access handling. 2015-03-02 18:55:03 +01:00
Kelenius 505f857eb8 Stack update 2014-09-02 09:59:32 +04:00
Jarcolr 868dea5681 Grammar patch 1
This is just the first one of many.
2014-04-08 14:48:31 +03:00
johnsonmt88@gmail.com dc599e776b Added emp_act() to some machines.
- Cell charger: Now calls battery emp_act() as well.

- Security Barrier: Now has a chance to toggle the lock.

- Flasher (portable and wall mounted machines, not the item): Now has a chance to flash.

- Wall-Mounted Sparker: Creates sparks.

- Light switch: Toggles the lights when emp'd (not that it'll matter since the lights will probably all have gone out anyway.)

- Weapon Recharger: Calls the energy gun's battery's emp_act() for guns and in the case of stun batons, it sets their charges to 0.

- Cyborg Recharge Station: Cyborgs now get ejected, then emp'd. There would probably be issues with emping the cyborg inside the machine, like being trapped forever or something.

- Sleeper: Eject's the patient. I kind of wish I could make it inject random chems, but it wants a usr and I'm not inclined to start mucking with sleeper code just for this.

- Space Heater: Calls the emp_act() for the battery inside the heater.

- Status Display: Causes the blue screen of death.

- Portable Atmos Pumps: Randomly changes the pressure, has a chance to flip the direction and turn the machine on/off.

- Portable Atmos Scrubber: Has a chance to toggle the machine on/off.

- Arcade Machine: Spits out some random prizes.

- Medical record computer: Runs through the medical records and has a chance to scramble the name, age, sex, blood type, physical or mental state of patients as well as a small chance to delete entries entirely.

- Security record computer: Runs through the security records and has a chance to scramble the name, age, sex, criminal status, physical or mental state of entries as well as a small chance to delete entries entirely.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5237 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-01 00:45:32 +00:00
Kortgstation@gmail.com 068fc7afda Replaced a ton more for viewer in range things with visible_message
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4934 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-22 04:30:19 +00:00
sieve32@gmail.com 459c558898 -Make holodeck eswords a child of obj/item/weapon/holo instead of regular eswords, clumsy check removed as a result, and you can no longer do things like cutting through walls or doors or what have you. (Fixes Issue 665)
-Redid icons to be more optimized at compile by setting icon = 'icons/folder/icon.dmi' instead of just icon = 'icon.dmi', meaning that Dream Maker doesn't have to search through every single file for every single .dmi. This shouldn't lead to any errors because of how I went about it, plus the fact that Dream Maker would have freaked out if I screwed something up. Also moved around 2 icons that weren't sorted well.

r4146 compile time: 1 minute, 40 seconds
r4147 compile time: 45 seconds

[VGTG]

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4147 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-23 00:48:51 +00:00
petethegoat@gmail.com bec8e2cf37 Renamed access_medlab to access_genetics.
Gave the RD his genetics access back.

Added Invisty's hyperspace tiles.
Added Icarus's map updates (Sec, gateway room, genetics/RD access) ((this is a big overhaul to sec)).
Added Flashkirby99's SMES sprites.

Updated the changelog.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3576 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-11 12:28:02 +00:00
elly1989@rocketmail.com d775e1ac80 Runtime fixes for:
runtime error: Cannot modify null.layer. proc name: done (/obj/effect/equip_e/human/done) usr: Ramona Fawkes (/mob/living/carbon/human) src: the human (/obj/effect/equip_e/human)
call stack: the human (/obj/effect/equip_e/human): done() the human (/obj/effect/equip_e/human): process()

runtime error: Cannot execute null.use(). proc name: attackby (/obj/structure/barricade/wooden/attackby) usr: Jeffery Long (/mob/living/carbon/human) src: the wooden barricade (/obj/structure/barricade/wooden) call stack: the wooden barricade (/obj/structure/barricade/wooden): attackby(null, Jeffery Long (/mob/living/carbon/human)) the wooden barricade (/obj/structure/barricade/wooden): DblClick(the floor (159,129,1) (/turf/simulated/floor), "mapwindow.map", "icon-x=15;icon-y=12;left=1;scr...")

Rewrote wielded weapons to be their own weapon subclass. There was no point having a var/wielded var/twohanded var/force_unwielded var/force_wielded for every damn item when there is only 1 wield-able weapon anyway. All the wield-able stuff is now in twohanded.dm

Changed the adminhelpsound to some creative commons sound I pinched. Until somebody can get a better one. I'm sick of MAAAAAAAAOOOOOOW.

All PMs trigger the adminhelp sound. That means when you OM a player they get the sound, if a admin is PMed they only hear it if their adminhelp sounds are enabled. This should allow people to get eachother's attention when t he chat is busy.

Fixed some bad code with poddoors (which is used for the shutters in QM)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3435 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-11 05:01:44 +00:00
panurgomatic 32b2be1b5a - Simple event dispatch system.
- atom.forceMove() proc. Ignores density and other Move() restrictions, but calls Exited() and Entered()
- var/emagged moved to /obj/machinery class
- anyprob() helper proc.
- Mecha internal damage vars encapsulated.
- Mech Fabricators now require robotics ID to operate. Emag removes this restriction.
- Added Odysseus Medical Exosuit and it's parts. Has integrated Medical Hud and ability to mount medical modules.
- Added Sleeper Medical module for medical exosuits. Similar to common sleepers, but no ability to inject reagents.
- Added Cable Layer module for exosuits. Load with cable (attack cable with it), activate, walk over dismantled floor.
- Added another exosuit internal damage type - short circuit. Short-circuited exosuits will drain powercell charge and power relay won't work.
- You should be able to send messages to exosuit operators using Exosuit Control Console
- Gygax armour and module capacity nerfed.
- Exosuit weapon recharge time raised.
- Bugfix: EMP actually drains exosuit cell and damages it

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2780 316c924e-a436-60f5-8080-3fe189b3f50e
2011-12-23 10:54:23 +00:00