Commit Graph

1216 Commits

Author SHA1 Message Date
spessbro
05fcf6a4d6 Export scanner doesn't need to link + old bounty code is gone (#55504)
Removes the Export scanner's need to link with a console and cleans up the old bounty code
2020-12-16 19:18:29 +00:00
Jared-Fogle
0a77d27a1b Replace direct poi_list manipulation with element (#55416)
Replaces GLOB.poi_list |= src and GLOB.poi_list -= src with an element that handles it directly.

More consistent code, especially when a lot of code couldn't decide how to add/remove (some |=, some -=, some .Remove, etc).
2020-12-10 23:30:25 +00:00
Qustinnus
f887155b27 Kills oldfood, Puts newfood on top. (#55160)
Slays the last of old-food, making new-food the new normal.

Co-authored-by: MrMelbert <kmelbert4@gmail.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-12-04 00:11:47 -08:00
TiviPlus
0eaab0bc54 Grep for space indentation (#54850)
#54604 atomizing
Since a lot of the space indents are in lists ill atomize those later
2020-11-30 12:48:40 -05:00
Jared-Fogle
96597d3157 Remove duplicate definitions of /obj/effect/ex_act, explicitly noop it (#55076)
/obj/effect/ex_act had several different re-definitions to make it a noop. The original definition would randomly delete it, which is bad news when a lot of /obj/effects are just that--effects, that shouldn't be blown up.

The ones that actually do want to be blown up (like decals) already have their own implementations. The one in place was never ran, and nobody had problems with it.
2020-11-28 07:55:26 -03:00
Arkatos1
ead0e859db Merge type variable fixes and unit test (#55173)
This PR fixes a case where certain materials caused issues when working with stacking machines, because they did not have set merge_type from the get go, which meant that initial() of that variable returned null.

To clarify further - if /obj/item/stack does not have set merge_type, it is generated merge_type upon Initialize(), which is the same as its typepath. For example, currently /obj/item/stack/sheet/bluespace_crystal does not have any merge_type set, and it is given merge_type = /obj/item/stack/sheet/bluespace_crystal upon Initialize(). Each Initialize(). Again and again.

There are quite a bit of these cases in the codebase, especially if its some older code. I have gone through them and set all of them their set merge_type, which they would inevitably receive anyway upon initializing and it fixes a bug mentioned above.

To prevent this happening again, I have also included unit test to check if merge types are set for stacks, included exceptions are usually abstract paths like /obj/item/stack/sheet/mineral, which contains zero behavior on its own and does not spawn unless done via admin tools.
2020-11-26 21:05:52 -05:00
Fikou
c48c3d9716 shuttle catastrophe now cant trigger if it already happened (#55114)
Shuttle catastrophe now cant trigger if it already happened
2020-11-23 14:08:39 -08:00
Qustinnus
b713fa1bc3 moves misc food to newfood code (#54788)
misc food is now using newfood code
2020-11-18 12:20:47 -08:00
IndieanaJones
0279109cf9 Spider Rework (#54451)
Spider refactor and hostile animal stamina changes.
2020-11-10 15:31:08 +01:00
IndieanaJones
4f6190e289 [READY] Space Ninja Rework (#53492)
* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Revert "Automatic changelog compile [ci skip]"

This reverts commit 48a63defa644ec9826ee5eb1736e5158d2a636d4.

* Revert "Automatic changelog compile [ci skip]"

This reverts commit cb68f4988edd9d841c4203eecee2067a49ce75c5.

* Revert "Revert "Automatic changelog compile [ci skip]""

This reverts commit e6e1f1ef53ee6611c334efcae6ca7c102edaf351.

* Revert "Revert "Automatic changelog compile [ci skip]""

This reverts commit 1782210527b9819772c0781122bec35b7979bf7d.

* Update changelog.html

* Automatic changelog compile [ci skip]

* Automatic changelog compile [ci skip]

* Move suit_initialization into better location

* Clean up cost check

* Clean up net using

* Clean up Ninja Star

* Clean Up Ninja Stealth

* Clean Up Sword Recall

* Move the event file

* Re-Merge the Changes

* Get your ninja code out of my human.dm

* Move the event into events folder and clean it up

* Can the old space ninja antagonist file

* Roll in the shiny new bad boy

* Get rid of actions/ninja.dm and move its info into respective ability files

* Update one_click_antag with new ninja

* Move proc out of ninja code into proper location

* Update the dme properly this time

* Update code/modules/ninja/suit/ninja_equipment_actions/ninja_suit_initialisation.dm

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

* Update code/modules/ninja/suit/gloves.dm

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

* Update the antagonist file

* Update ninjaDrainAct

* Re-Add MGS Voice Lines

* Up the Katana Damage Back Up to 30

* Attempting a Risky Manuever

* Adjusting some numbers to fit the delta time PR

* Fix Var Names and do a return ..()

* Remove Unused Defines, Update qdels to QDEL_NULLs

* Update code/modules/antagonists/space_ninja/space_ninja.dm

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

* Update code/modules/antagonists/space_ninja/space_ninja.dm

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

* Update code/modules/events/space_ninja.dm

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

* Update code/modules/ninja/energy_katana.dm

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

* Update code/modules/ninja/ninja_explosive.dm

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

* Update code/modules/ninja/suit/ninja_equipment_actions/energy_net_nets.dm

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

* Remove Unnecessary Condition Checks

* I'll show you what A stands for!

* Turn some things into defines

* Remove is_ninja()

* Gives the SN roles on Antag Gain, not on event spawn

* Clean up mind/key code to be efficient and modern

* Have Deactivated Suit Gloves use default black sprite

* Add the new clothing sprites

* Add new inventory sprites for alternate sprites

* Get Rid of These Again

* Re-add suit changes

* Implement all the suggestions for the antag file

* And then everything else

* Updating the Weight for purpose of testmerge

* Balance Updates

* Update the Objective Definitions

* Remove Now Unreachable Cyborg Interaction Code

* Get That Shit Out of My Forest

* Re-Add Cowl Wearing Sprite

* Re-Add Cowl Inventory Sprite

* Adapt to the new thing?.thing changes

* Re-add New Katana Inhand Sprites

* Re-Add glove's shock but have it do knockdown instead

* Get rid of the these stupid changelog changes

* Update sounds

* Re-add New Mask Sprite

* Re-update katana inventory sprite

* Revert Event Weight

* Update code/modules/ninja/suit/ninja_equipment_actions/energy_net_nets.dm

Co-authored-by: girl <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>

* Re-Add Dynamic Ninja

* Revert Changelog thing

* Update Mob Sprites

* Add files via upload

Co-authored-by: Changelogs <action@github.com>
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: girl <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
2020-11-07 01:51:30 -05:00
skoglol
0634da526b Fixes various immovable rod bugs (#54770) 2020-11-04 00:09:16 -08:00
necromanceranne
078fbc6183 Removes an event that no longer holds relevance. (#54759)
Would definitely like to see dead bounty code get cleaned, but this is a step in the right direction.
2020-11-03 12:27:30 -08:00
LemonInTheDark
4431478361 [READY] Swarmer QOL and Balance Update (#54340)
* Really revert commit

* Now Undo the simple change

* Undo My Stupid yet again

* Undo my stupid yet again

* No

* And for the last time

* Update the Swarmer Mob

* Update Spawn Info with Accurate Information

* Update Swarmer Event

* Add Swarmers to Dynamic

* Fugg

* Fix Indentation

* FIX Indentation

* Add Newline
2020-11-02 16:09:17 -08:00
ShizCalev
74103482f0 Merge pull request #54661 from Dennok/patch-1
Fix shuttle_catastrophe shuttle replacing.
2020-11-02 11:35:38 -05:00
Ghilker
92e4e25328 new spritesss (#54528)
New sprites for the crystal invasion mobs
2020-10-28 16:12:02 -04:00
Dennok
67636df9c8 Fix shuttle_catastrophe shuttle replacing. 2020-10-28 08:11:47 +02:00
Ghom
8eb866fee3 SSeconomy/var/bank_accounts is now an association list of account identifiers and datums for O(1) performance (#54430)
Title. Also added some precautions to bank_account/new() and the crab17 gear.
The fact the majority of functions pertinent to the bank_accounts list was O(n) disquieted me.
2020-10-18 20:47:06 -03:00
IndieanaJones
79e48f1676 Merge branch 'master' into swarmer_update 2020-10-15 15:15:35 -04:00
ZeWaka
9629feed35 Converts A && A.B into A?.B (#54342)
Implements the ?. operator, replacing code like A && A.B with A?.B

BYOND Ref:
When reading A?.B, it's equivalent to A && A.B except that A is only evaluated once, even if it's a complex expression like a proc call.
2020-10-13 16:43:53 -03:00
IndieanaJones
fa2eae6b44 Merge branch 'master' into swarmer_update 2020-10-13 15:23:23 -04:00
Yenwodyah
d016a49353 Re-enables ghost role events (#54307)
Basically, a messed-up bitflag check has been stopping all event ghostroles from spawning for the last two months (outside of dynamic mode).
2020-10-12 14:39:24 -03:00
IndieanaJones
2aa7ea16f6 Update Swarmer Event 2020-10-11 21:53:12 -04:00
IndieanaJones
2d03ef916c Space Dragon QOL and Additional Features (#54124)
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-10-11 02:20:54 -07:00
Ghilker
1c6911cab3 Crystal invasion no longer random event but delamination event (#53921)
This PR makes the crystal invasion event a delamination event only, so no more random events (can still be admin triggered).
The chance for the delamination to trigger the event depends on the power of the SM, the closer it is to the tesla delamination (near 5000) the higher the chance.
2020-10-01 06:32:54 +01:00
Qustinnus
eca964db35 Ports soup, snacks, icecream, salads and meat to newfood (#54028)
Ports soup, snacks, icecream, salads and meat to newfood
2020-09-29 20:36:27 -07:00
nemvar
d289b24c71 Merge pull request #53937 from Rohesie/damage
Turns simple mob vars into string lists and fixes string assoc lists
2020-09-29 11:44:52 +02:00
tralezab
f68ac806f8 Reimagines Venus Human Traps (#53880)
Venus human traps now have a new sprite, new sprite for their bud, new sprite for their vines, their bud has icons according to how grown it is, they get sounds for hitting, getting hit, and dying.

oh yeah and I renamed the path flower_bud_enemy >flower_bud
2020-09-29 06:00:35 -03:00
L
7c4b980577 more stringlists 2020-09-26 12:14:07 -03:00
Timberpoes
1f23cc281d 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.
2020-09-26 11:52:39 -03:00
TiviPlus
ff1631b7b9 Fully removes devil and affiliated shitcode (#53612)
Its all over the place, messy, and overall a bad enough gamemode to be removed from rotation.
A rework would have to tear out everything as is so there is no reason to allow the shitcode to live beyond tripping up everything.
2020-09-23 00:46:21 +01:00
Timberpoes
96f4c2f4ad Fix two gas assertion runtimes (#53718)
/datum/gas_mixture/proc/remove(amount) has a code path that can return null.

All the code following the runtimes assume some bit of gas_mixture was actually removed at all. No need to trigger this code if there's no gas_mixture removed, can early return instead.
2020-09-15 19:21:11 -04:00
Ghilker
2524baac10 Again crystal invasion fix, why edition (+ balancing because why not) (#53559)
* In the jungle, the mighty jungle the lion sleeps tonight

* AHHHHHH

* fix on the define

* even better define

* changes

* better define measurements and use

* better define name
2020-09-09 22:43:02 +02:00
Jared-Fogle
bd8c9f5676 Removes the clogged vents event (#53549)
Removes the clogged vents, aka "backpressure surge" event. Preserves the beer nuke behavior, however.
2020-09-09 06:48:45 -03:00
msgerbs
f4ea6db565 Fixes shuttle catastrophe triggering when Build Your Own Shuttle kit purchased and ghosting people (#53532)
The Shuttle Catastrophe event now checks for the /obj/docking_port/mobile/emergency/shuttle_build subtype rather than checking for a specific mobile docking port name when checking to see if it should spawn. This should keep Shuttle Catastrophe from triggering when Build Your Own Shuttle has been purchased and ghosting/qdeling everyone and everything onboard.
2020-09-09 06:43:00 -03:00
Ryll Ryll
452ea00cff No more blobs after shuttle passes point of no return (#53488)
* DIE BLOB DIE

* define for PONR

* Update code/__DEFINES/shuttles.dm

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

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-09-08 20:21:54 -07:00
Donkie
53b212ddf2 Process procs now properly utilize deltatime when implementing rates, timers and probabilities (#52981)
* Process procs now properly use deltatime when implementing rates, timers and probabilities

* Review fixes

* Geiger counters cleanup

Made hardsuit geiger code more similar to geiger counter code
Geiger counters are more responsive now

* Moved SS*_DT defines to subsystems.dm

* Rebase fix

* Redefined the SS*_DT defines to use the subsystem wait vars

* Implemented suggested changes by @AnturK

* Commented /datum/proc/process about the deltatime stuff

* Send delta_time as a process parameter instead of the defines

Also DTfied acid_processing

* Dtfied new acid component
2020-09-08 10:24:05 +02:00
YPOQ
d9aff3da6e Fixes the arena shuttle (#53458)
This splits the actual arena of the arena shuttle into its own map file that is loaded onto it's own z-level. The old method of including a non-shuttle area in the shuttle map file doesn't work with the current shuttle loader. It also fixes shuttles being loaded twice when purchased which created problems with landmarks being left behind in the reserved z-level.
2020-09-07 17:24:10 -03:00
Ghilker
5543c6db46 crystal invasion balancing and fixes (Now with extra rework!) (#53399)
Refractored code so that the more_portals() proc gets called by the event instead of a CALLBACK
Balanced mobs spawn from portal and how much damage they deal
Fixed grammar stuff on crystal consume announcement
Ligthing aoe projectile now have a no_stun version for the boss rank
Lowered time needed to use the crystal stabilizer to 7 second total
Crystal mobs have TRAIT_TESLA_SHOCKIMMUNE to prevent boss from hurting himself and the other crystal mobs
Added check at start of event for presence of the supermatter crystal

New: Revamped event a bit, now instead of random portal appearing a random, there will be from 2 to 5 main portals and around those 6 more portals will appear; after that centcomm will announce the position of those new portals. Now the players will have to close those main portals before being able to stabilize the crystal because there will be a shield around it powered by those portals. Everything else will be the same (like how to close the portals and stabilize the crystal)
2020-09-07 16:52:10 -03:00
Tad Hardesty
cf7ac5b79d Fix some miscellaneous grammar mistakes (#53414) 2020-09-05 02:45:25 -07:00
Ghilker
60355138f8 Crystal Event: flavor texts, signaler, balancing and mob differentiation (#53340)
This PR adds a bunch of flavor texts to the different devices and structures that are used during the event, all to make clearer to the players what to do without too much troubles.
Also i added the ability to use the normal Analyzer+signaler to close the portals and achieve the same result of dropping the crystals.

This PR have more stuff inside: I tweaked the health of the mobs to be balanced around the "toolbox damage" (around 15), so that in 2 or 3 hits they'll fall. I tweaked the damage so that those mobs are all around pretty dangerous, plus each one gets a personal effect: the minion gets a smoke effect on death, the thug gets a random teleport when hit and a dodge ability, the recruit can smash delete walls on touch, the killer is fast and shoot a freezing ray to slow down victims, the boss has an AoE tesla-like attack can dust mobs if they are in crit conditions (thus consuming them)
spawned anomalies don't explode anymore.
You can sacrifice someone to the crystal to increase the spawn delay by 5 seconds permanently
tick for the event is once every 2 seconds, have to use raw numbers to define the duration (15 minutes)
2020-09-01 18:53:43 -03:00
Ghilker
37f849fb17 ZK-Lambda-Class Remade (#52941)
This PR adds the crystal invasion event, a new event involving the Supermatter and the monsters from within.
When the event starts there will be a message from centcomm announcing it, then the supermatter explode leaving a destabilized crystal that emits radiations and harmful gases; after a bit portals will spawn around the station, that will produce a number of monsters each. there are 4 types of waves and 4 types of portals
The waves are: Small, Medium, Big, Huge (each have different kind of portals that can spawn and different amounts too)
The portals are the same types of the waves, they differ from each other for the number of monsters that can spawn and the kind of monsters that can spawn (bigger portals spawn stronger monsters)
To end the event the players should stabilize the crystal by destroying the portals (for now are indestructible and they are disabled by using an anomaly neutralizer, might change that) and collecting otherworld crystals; then those crystals are to be put in the crystal stabilizer, an item unlockable in the tech tree. After this just inject the destabilized crystal with it and the remaining portals will close on their own (the spawned monsters will still remain tho so you have to slay them)

All the numbers are mostly eyeballed and could change if requested/with feedbacks
2020-08-29 23:56:40 -03:00
TiviPlus
ca366c3ea1 Bools and returns super-pr (#53221)
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>
2020-08-28 14:26:37 -07:00
Couls
e7f99e3b8b Browser Status Panel (#53112) 2020-08-27 15:28:03 -07:00
Rohesie
3a1020e47d Crit status refactor (#53117) 2020-08-24 07:41:00 -07:00
TemporalOroboros
6e950daccc Defines damage flags. (#53158) 2020-08-24 08:20:33 -03:00
tralezab
921a7f63a3 makes some events only work on crewmembers, and some not work on centcom (#52966)
brain trauma, fake virus, and heart attack only work on crewmembers.
mass hallucination and appendicitis don't give the effect/pick to people on centcom, respectively
2020-08-24 01:07:24 -07:00
Fikou
af248a2e0a fixes shuttle catastrophe working when shuttle docked or is flying to centcom (#53139) 2020-08-23 17:35:13 -03:00
Rohesie
7859721611 Explosions SS runtime fix + code cleanup (#52894)
* runtime fix

* turf references are immortal
2020-08-21 21:57:29 +02:00
ArcaneMusic
1352bbbb88 Arconomy Balance Pass 2: Market Tendency (#52974)
Price inflation is now based upon averages, and is now uncapped from 5.
Civilian budget is no longer the worst budget to pay out from.
Medical Civilian bounties are no longer chees-able in seconds.


* I'll pick this up later because it's going to need a UI with keyed lists

* Updated market crash and average inflation values.

* Alright, I'm confident now.

* Make the market crash end at the beginning of the event end

* And on the 2nd day, the lord spoke, "Compile"

* Division by zero protection.

* That should have been a max, smhing my smhead
2020-08-20 12:47:43 -03:00
tralezab
46ec19aa81 New Event: Shuttle Catastrophe (#53003)
The shuttle runs into some kind of horrible event, and is no longer servicable. The station is given a new one!
2020-08-18 21:42:06 -03:00