Commit Graph

80 Commits

Author SHA1 Message Date
ShizCalev
51c48409a6 Stops putting RCD, bluespace bags, and staves into ORM (#31093)
* Stops putting RCD, bluespace, and staves into ORM

* CB

* Chat message
2017-09-29 19:33:19 -05:00
Ian Turk
7460f2c5b8 Replaced flags with flags_1 2017-08-16 13:01:15 -06:00
Ian Turk
371f1ba4f0 Replace all secondary flags with bitflags stored in the flags_2 var 2017-08-15 16:01:35 -06:00
shizcalev
719612ba3b ALLOW ME TO BREAK THE ICE 2017-07-26 20:44:42 -04:00
kevinz000
aa61650035 Pixel projectile ricochets and reflections! (#27551)
Adds flags to atoms to allow them to reflect projectiles based on that projectile's reflection chance!
(can be overridden later for angle-based chances but this is good for now, ja?)
Gives titanium walls an 80% chance to reflect beams and 30% chance to reflect everything else!
Mostly-realistic reflection angles
If the math isn't fucked (I tested and the glitches seem to be from pixel projectile movement, not the math itself), this means we can have pixel projectile reflectors soon 😂😂😂😂😂
🆑
rscadd: Nanotrasen's new titanium wall blueprints are smooth enough that it can reflect projectiles!
/🆑
https://puu.sh/vYzMA/4f00c2a4a1.gif

o ya if this goes through i'll add pixel projectile support for reflectors when i have time so we can finally dump legacy b00lits.
2017-05-27 18:13:51 +12:00
AnturK
83e90cca22 Fixes clicking things under windows/doors. (#27292) 2017-05-18 07:05:41 -03:00
Cyberboss
72f171495a Adds a list of bitflags 2017-05-11 09:46:47 -04:00
coiax
f993f9ce36 Refactors ear damage into ear organs (#26044)
* Refactors ear damage into ear organs

🆑 coiax
add: Centcom would like to inform all employees that they have ears.
add: Adds "ear" organs to all carbons. These organs store ear damage and
deafness. A carbon without any ears is deaf. Genetic
deafness functions as before.
/🆑

- `ear_damage` and `ear_deaf` vars removed from /mob.
- All mobs have a `can_hear` proc, which returns TRUE always except for
carbons.
- Carbons need to have an ear organ that has 0 `deaf` var.

- Explanation of how ear damage works is in the code, it hasn't been
changed from previously. Deafness is applied in number of Life ticks
until you regain hearing, while damage is long team, heals slower, and
when high enough, can cause flashbangs to make you go permamently deaf,
as before.

- Wearing earmuffs halves the healing time of deafness, and promotes
healing long term ear damage, as before. Earmuffs now have a secondary
flag HEALS_EARS, which currently only they own.

* Changes how soundbang deafness works slightly

* Ear organ icon

* Code review I

* Makes fully healing carbons not dependent on having a dna and species

* Gives monkeys and aliens ears

* Whoops

* Split organs into seperate files

* Tweaks.

* Un-removes brain damage lines

* Moved procs onto /mob for ear stuff

* Massages things into compiling

* Replacement of spam_flag with world.time tracker
2017-04-22 08:51:03 -04:00
coiax
02fa74903d Moves tesla_ignore from var on /mob/living to secondary flag (#26273)
Only granted by wizards learning the spell lightning bolt, so I don't
think it needs to be a var on /mob/living.
2017-04-17 10:13:02 -04:00
coiax
7554b5f454 Language datums; removes the talk wheel (#25333)
* Initial burst of languages

* Scratchings of beginnings

* Code review I

* Compilation!

* You can now understand your own speech

* Fixes whispering

* Gets typecaches working again

* Remie's `PASS`ing

* Back to pass() to stop the compiler whining

* Why can't drones check their languages

* Everyone speaks how they should

* Removes world string debug stuff

* Currently failing to massage radio code into working

* The radio transmits the languages!

* ,0 to talk common

* Replaces speech wheel with language menu

* Observers can speak all languages

* pAIs now speak languages FOREVER

* New action button for language menu

* pAIs have an action button to open their language menu

* AIs can talk and all that

* AIs have a language menu button

* Fixes supermatter making strange noises

* Fixes AI holopads

* Fixes request consoles

* Fixes bots making strange sounds

* Meaningless MMI change

* Some caching of datums

* Brains in MMIs speak common

* Ratvarian AIs can only speak Ratvarian

* Tables can speak common, apparently

* Removes var in args

* Fixes the (AI Eye) problem

Thanks to Shadowmobile for their help with this one.

* Fixes tape recorders

* Fixes humans being able to speak in languages they did not know

* Adds some new posibrain names

Honk.

* The voice analyzer replies in the language you spoke to it

* Gives swarmers only swarmer language

* `initial_languages` var.

* OMNITONGUE, clockwork restrictions

* Fixes barmaid and bardrone language abilities

* Code review I

* Omnitongue correction

* Code review II

* Removes force_compose var
2017-04-02 21:03:40 +02:00
coiax
92682e37c9 New bitflag CLEAN_ON_MOVE (#25060)
* New bitflag CLEAN_ON_MOVE

Time to use those highspeed bitflag slots.

If an atom/movable has CLEAN_ON_MOVE set, it will behave like a janitor
cyborg when moving.

Current owners of the CLEAN_ON_MOVE flag are janitor cyborgs and the
janitor's pimping ride (when upgraded).

Also moves BLOCK_GAS_SMOKE_EFFECT and THICKMATERIAL to seperate flags.

* Stop double floor buffer upgrades

* Also have a pre-upgraded janicart, why not

* Display the buffer if you got it
2017-03-22 09:32:24 +13:00
coiax
cb38468e0c Merges HEADBANGPROTECT and EARBANGPROTECT into new secondary flag (#24881)
Unless we get a clothing item that can be worn on the head, and the
ears, and only protects from loud noises in one of the configurations,
this isn't going to be an issue.

Frees up another flag slot, all hail the secondary flags.
2017-03-13 22:00:43 +13:00
coiax
f1d1e6f5e9 Demotes HANDSLOW to secondary flag (#24878)
It's used in literally four places, it doesn't need a high speed
bitflag slot.
2017-03-13 21:59:48 +13:00
oranges
56a7fa328a Revert "Revert "Atoms can now be stationloving" (#24903)" (#24904)
This reverts commit d3b5f0e97c.
2017-03-10 09:54:44 +13:00
Kyle Spier-Swenson
d3b5f0e97c Revert "Atoms can now be stationloving" (#24903)
* Revert "Bulletproof(Tactical) Armour + Vest Defence Tweak (#24816)"

This reverts commit 6ab7ba871f.

* Revert "Automatic changelog generation for PR #24810 [ci skip]"

This reverts commit 1cd117afd6.

* Revert "Stacks automatically merge on Initialize (#24810)"

This reverts commit 6e39f5cf00.

* Revert "Automatic changelog generation for PR #24794 [ci skip]"

This reverts commit 62a2ef30dd.

* Revert "Wizards can now Summon Ghosts (#24794)"

This reverts commit 473561c0be.

* Revert "Automatic changelog generation for PR #24791 [ci skip]"

This reverts commit b2aeef06d0.

* Revert "Compiles in Lavaland (#24791)"

This reverts commit 272cc34008.

* Revert "Forcefield Projector (#24790)"

This reverts commit 4b2ffcffe8.

* Revert "Atoms can now be stationloving (#24748)"

This reverts commit 60f7c1df3f.
2017-03-10 09:53:16 +13:00
coiax
60f7c1df3f Atoms can now be stationloving (#24748)
* Objects can now be stationloving

Stationloving objects are objects that love the station so much, they
will relocate back to the station if spaced or if destroyed.

Yes, this does sound a lot like the behaviour of the nuke disk. Except
made more generic.

Currently the only stationloving object is the nuke disk.

* Moved from /obj to /atom/movable

* Remie fix
2017-03-10 09:42:02 +13:00
Jack Edge
69c227612f Moves the is_frozen var to a secondary flag
One less var on ALL OBJECTS.
2017-03-07 21:27:44 +00:00
Jack Edge
5aaa11e825 Demotes HOLOGRAM to secondary flag
No difference mechanically, but frees up a bitflag slot. Reminder that
if there are no secondary flags on an object, the check is the same as
checking a var is null.

There are only a handful of hologram items in place at any time, they
don't need a full slot in flags.
2017-03-05 21:52:20 +00:00
coiax
81eae8b473 Adds "secondary flags"; stops cyborg radio EMP wires (#24613)
🆑 coiax
fix: Cyborg radios can no longer have their inaccessible wires pulsed by
EMPs.
/🆑

Adds a secondary flags system, for stuff that should be set as a flag,
but is too rare to clog up one of our coveted high speed flag slots.
Uses a null list to store the flags, when instanced, the list is in the
form flag_string->booleon, for the highest speed. I suggest we locate
other rare flags and move them to this system. (Like EARBANGPROTECT, I
mean come on).
2017-03-04 23:39:27 +13:00
Cyberboss
65ba7132d1 Moves resistance flags to flags.dm 2017-02-27 16:41:24 -05:00
Cyberboss
56a6eaa8e6 Overlay queuing (#23922)
* Overlay queuing

* Fix SS flags

* Don't copy on assignment

* Flags processing

* Fix icon_smoothing

* MSO's helper proc

* Legacy detection

* Make it work

* Fixes shitcode

* Fix the flag

* |= -> +=

* OK, how did I fuck that up?

* shitcode

* Conditional assoc queue while initializing

* Cleanup everything

* Orange meme

* This isn't perfect, but its the best byond will give us.

* forgot about dir

* oh ya

* This was litterally the last thing i did last night before heading to bed

You can tell can't you?

* Fixes various shit

* Let's not ever pause

* Fix the flag

* Cleaned up some missing shit. Added image dummys

* Remove the one usage of FPRINT

* Jesus get rid of this
2017-02-22 21:44:55 +13:00
Jack Edge
9aa1efe5f6 Deadchat is notified of non-CTF deaths
🆑 coiax
fix: Deadchat is now notified of any deaths on the shuttle or on
Centcom. The CTF arena does not generate death messages, due to the high
levels of death.
/🆑

Basically, deathrattles would not fire on shuttles, or if there's a
scuffle on an abductor UFO, or if people are beating the crap out of
each other on the thunderdome. I originally changed it to non-Z2 to
remove CTF spam, but that was too much.
2017-01-26 22:14:23 +00:00
Firecage
50bbf5aa50 Allows syringes and droppers to show their reagents when examined while wearing things such as Science Goggles. (#22618)
* Allows syringes and droppers to show their reagents when examined.

* rearranges my logic

* replaces SEMIOPENCONTAINER with TRANSPARENT

* Silly spelling error fix.

* Moves the defines from flags to container_type to avoid issues with conflicting flags

* changes it back to obj/item/O

* Moves the OPENCONTAINER and TRANSPARENT defines to the reagents.dm
2017-01-04 20:00:46 +13:00
Joan Lung
a5ae025549 Replaces "specflags" with "species_traits" (#21851)
* Replaces "specflags" with "species_traits"

* this will do
2016-12-01 21:16:33 +13:00
XDTM
64358135f1 Several things 2016-11-28 21:44:09 +01:00
kevinz000
87dbd65811 [READY]] FLIGHTPACKS (AKA cooler, better, and technological wings with a unique gimmick!) (#20860)
* vroom

* wew

* a

* b

* morestuff

* .

* a

* .

* .

* basicsprites+extend/retract

* ...

* .

* thanks travis

* woops

* thankstravisv2

* redundence

* ishouldstopmakingsomanygoddamncommits+empdamage

* stuff

* ..

* ion_trails

* fixes_conflict_1

* fix

* compilesnow

* .

* fuck

* WIP: Multi Step Assembly

* thismightfixitthismightnot

* shoe-attachment

* noselfremoval

* wooops

* tweaksandcrashing

* runtimes

* runtimesfuntimes+crash update 1

* thisprobablywontcompile

* stillwip

* githubPLEASEWORK

* fixes conflicts 3/3

* REFACTORSUNTESTED

* fixingconflicts2

* fixingconflicts3/3

* updates

* stuffs

* ...

* stillWIP

* stufffs

* .

* ..

* runtimesfuntimes2

* stuffs2

* conflictfix

* ...

* fuck

* fix

* bah merge conflicts

* knockback_testing1

* conflictfixing...

* mergeconflicts

* plop

* socloseyetsofar

* tweaksandfixes

* conflicts

* fix

* fixes

* fix

* woops

* woops2

* hotfix

* ...

* flufftextandfixes

* test

* ..

* fix1/2

* stuff

* finallysomeoneteachesmehowtofixthisshit

* FIX

* why

* .

* bitflagsshitflags1

* bitflags-shitflags2

* bitflags-shitflags2

* bitflags_shitflags_4

* autofloating

* minerbuffgetthepun?

* notouchingfloors

* ...

* .

* f l o a t

* kek

* kek

* fixes

* fixes2

* sprites
2016-11-25 13:26:43 +13:00
Xhuis
6fd5b3b29f Random dirtiness refactor and turf grammar standardization (#20551)
* Random dirtiness refactor

* Further speeds up MakeDirty

* Removes legacy code

* Replaces flag numbers with defines

* Adds another define in place of an integer

* Re-adds attackby arguments in holofloors
2016-09-25 10:52:42 +13:00
Incoming
5ece015017 If you see this commit it means I've forgotten to amend it 2016-09-01 23:26:00 -04:00
Jack Edge
d770fd8b2d Is anything real anymore 2016-06-29 20:37:32 +01:00
oranges
269ccc3cf0 Merge pull request #18743 from ChangelingRain/fcrnxvagurgbathrbsgurtbqf
Non-servant humans can't understand clockwork mobs
2016-06-21 20:35:24 +12:00
Jack Edge
b9af701379 Fixes flags, and reorders them
Please, let's not have this happen again.
Fixes #18748.
2016-06-20 17:19:55 +01:00
oranges
bce99c4f58 Merge pull request #18668 from coiax/dropdel
Adds DROPDEL flag; items will qdel() on dropped()
2016-06-20 11:08:31 +12:00
Joan Lung
321d7ce4be Non-servant humans can't understand clockwork mobs 2016-06-19 15:46:36 -04:00
Jack Edge
8ca69eabbb Adds DROPDEL flag; items will qdel() on dropped()
Pretty self explanatory, replaces writing a dropped() proc that just
calls qdel() with a flag that does it for you.
2016-06-17 12:14:28 +01:00
Incoming
32d9b37018 Slime/Jelly people gain a new power, regenerate limbs, that allows them to spend jelly to reform lost limbs
Slime/Jelly people also gain a new "power" that forces their limbs to be eaten for jelly if the slimeperson is in threat of dying from a lack of jelly.

Slime/Jelly people can now be dismembered

New specflag: TOXINLOVER

Species with TOXINLOVER (Slime and Jelly people, as well as zombies) take inverse toxin damage, things that typically heal toxin damage will instead cause it and visa versa. Additionally this ties the mutant's blood level to these transactions, reaffirming the slime and jelly peoples vulnerability to antitoxin and the like, which had been lost in the blood rewrite
2016-06-12 20:20:57 -04:00
Incoming
966516fb3f Adds the EASYDISMEMBER and EASYLIMBATTACHMENT specflags
EASYDISMEMBER races have about double the chance to get dismembered when attacked with something that can dismember.

EASYLIMBATTACHMENT allows races with the flag to just shove limbs found lying on the floor into empty limb slots to regain their use. However this DOESN'T heal the damaged limbs, so in most cases doing this will actually add damage to the mob. Comically, the limbs attached don't need to be the originals, so these races can go around ripping off other peoples limbs and then using them for themselves.

Both these abilities are given to the the zombie and skeleton races, and constitute a significant nerf to lichs
2016-06-10 19:52:33 -04:00
Jack Edge
1ba0fb5aee Infectious zombies are now a full subspecies
Fixes #17932

No more ""infection holder" bursts out of" memes, as zombie infection is
now done with a body egg in the head.

- Added 'romerol' a silent bioweapon reagent that adds the zombie
infection organ to a living person. This will lie dormant until they
die. Then they will stand up again.
- Zombie infection uses body_egg, meaning it shows up on healthHUDs.
- Zombies are now a full subspecies of humans, instead of
simple_animals. However, they should still be mostly the same, still
unable to pick up items, still zombify on attack and still able to claw
open doors.

Side Effects

- Zombies now take time to destroy tables
- Zombies can have their limbs cut off and be reduced to wandering
around being a bit pathetic. This is a feature.
- Zombies can be stunned and are vulnerable to stamina damage and
chemicals
- Zombies are armoured, but instantly die in crit, meaning they have
approximately 120 hp as before
- Zombie hands are just bloody hands, a proper sprite maybe sometime

gjkafldksfjkl
2016-05-31 00:15:10 +01:00
Shadowlight213
ce01058e7c Fixes merge conflicts 2016-05-27 15:36:56 -07:00
Jack Edge
bc113b6aa2 Refactors NOREACT flag; minor cig refactor
The reagents datum now has its own flags, which currently includes
REAGENT_NOREACT, which functions in the same way. Shouldn't be touched
directly, use set_reacting(bool) to modify it, as modification also adds
or removes the reagents datum from the SSobj.processing list.

Also refactors cigs a little, adds a Destroy(), uses the open_flame()
proc for the hotspot exposure.
2016-05-26 10:12:59 +01:00
Shadowlight213
86cbe14d15 Conflict fixes 2016-05-19 20:42:26 -07:00
Jack Edge
5535959ee3 More heart and lung stuff 2016-05-16 21:39:20 +01:00
Jack Edge
f5b3f3647f Refactors need_nutrition into NOHUNGER specflag
Current human species that don't need to eat:
- Plasmamen
- Skeletons
- Agents

They now have the NOHUNGER specflag, which means their nutrition does
not decay like a baseline human's; no change in behaviour.
2016-05-15 22:36:36 +01:00
Incoming5643
01ce91bf6d Specflag'd Dismemberment (#17469)
* Adds NODISMEMBER to the species specflags to remove the var. It's not DISMEMBER because that's the default expectation and specflags need to be manually set for every race.

Merges RESISTHEAT and RESISTCOLD into RESISTTEMP. Every situation where one occurred the other did as well. It also doesn't make thermodynamic sense that something good at one wouldn't be good at the other anyways.

* T H E S E  A R E  N O T  B I T F L A G S
2016-05-15 22:05:42 +02:00
Razharas
d0d93d1d81 Merge branch 'master' of https://github.com/tgstation/-tg-station into HoloshitHalfFix
Conflicts:
	code/modules/crafting/table.dm

Merge conflicts fix
2016-05-11 23:46:51 +03:00
Shadowlight213
9573fdec0e Speed in nograv works correctly now
Dismemberment support added as well as a way to use the limbs of another species for dismemberment for visually identical species
Flying var changed to species flag
2016-05-08 16:39:54 -07:00
phil235
68da092009 Dismemberment port from Hippie code, based on RemieRichard's work. Big thanks to RemieRichards and crystalwarrior. 2016-05-05 18:17:51 +02:00
Razharas
9b051d7cf5 Adds flag to mark items as holograms
Adds flag to mark items as holograms
Will fix the tablecrafting with holoshit and unreported autolathe abuse
2016-04-26 15:19:39 +03:00
phil235
fd16e02cdb Fixes most (non hardsuit) helmets hiding the glasses when they shouldn't.
Fixes not seeing glasses through the riot helmet.
Fixes gas mask protruding from the abductor helmet.
Fixed radiation hood not hiding your hair, earpiece, mask.
Fixes colored justice hats not having an on-mob icon_stat.
Removed BLOCKHAIR bit from var/flags , moved it to flags_inv and renamed to HIDEHAIR
Added HIDEFACIALHAIR bitflag so certain hat/helmet can show just the beard.
Fixed human/update_inv_glasses not checking if our mask hides our glasses.
Fixed check_obscured_slots() not checking if our masj obscur our glasses.
Fixes some bits of flags_inv having the same value.
Fixes crusader hood and other headgear not hiding your identity when they should.
Fixes drone mask icon not appearing.
2016-02-14 00:03:07 +01:00
KorPhaeron
efb91fb10a Handslow 2016-01-30 04:30:55 -06:00
KorPhaeron
fd242b3a41 Extra comment 2015-12-22 00:14:13 -06:00