Commit Graph

91 Commits

Author SHA1 Message Date
AndrewJacksonThe2nd
5d5d2427f4 temp 2016-02-20 22:12:25 -08:00
KorPhaeron
67aec79ecf Weather 2016-02-17 16:28:59 -06:00
Firecage
0cb6814c18 Merge conflict fix 2016-01-17 19:15:30 +02:00
Firecage
332bde0f4f Does the rest of the if()'s/ else's 2016-01-17 19:03:12 +02:00
Aranclanos
95df33b325 Merge pull request #14313 from tkdrg/goooof
Revert "Merge pull request #12935 from AndrewJacksonThe2nd/objectives_rework"
2016-01-08 20:39:16 -03:00
Tkdrg
5589ac7559 Revert "Merge pull request #12935 from AndrewJacksonThe2nd/objectives_rework"
This reverts commit 52a45b6292, reversing
changes made to 19b43ba668.

Conflicts:
	code/datums/mind.dm
2016-01-07 23:15:35 -03:00
KorPhaeron
cc69b62c5c Fixes fake nuke 2016-01-05 22:51:04 -06:00
tkdrg
e5941a59a2 Merge pull request #14124 from KorPhaeron/darkness
Advanced Darkness (wizard event)
2016-01-01 00:51:55 -03:00
KorPhaeron
b9bf6ef547 Advanced Darkness 2015-12-31 19:32:02 -06:00
tkdrg
52a45b6292 Merge pull request #12935 from AndrewJacksonThe2nd/objectives_rework
OBJECTIVES REWORK: Better Objectives Generation
2015-12-31 03:11:41 -03:00
KorPhaeron
9cf6a315b7 Advanced Darkness 2015-12-28 15:25:42 -06:00
AndrewJacksonThe2nd
dca91323a4 Merge branch 'master' of https://github.com/tgstation/-tg-station into objectives_rework
Conflicts:
	code/datums/mind.dm
	code/game/gamemodes/antag_spawner.dm
	code/game/gamemodes/objective.dm
	data/mode.txt
2015-12-28 12:40:51 -08:00
KorPhaeron
15d4ad156c Final (I hope) weather tweaks 2015-12-24 23:03:32 -06:00
KorPhaeron
70060cb6c1 Weather datums 2015-12-22 05:31:46 -06:00
Incoming5643
72a5c2d604 why am I editing in the browser this is terrible 2015-12-21 01:11:29 -05:00
Incoming5643
cda01d1457 he's right 2015-12-21 01:10:37 -05:00
Incoming
1e7fcd3e9f unbricks the rpgloot event.
fixes a rare issue with the imposter event.
2015-12-20 01:15:03 -05:00
Incoming
4c909afb08 The commit so nice I did it twice 2015-12-11 20:22:10 -05:00
Incoming
fdc87e9324 Replaces the armor bonus with something that should actually work 2015-12-11 20:12:21 -05:00
Incoming
7ce9267a7d The much beloved rpgloot wizard event has been intensified. Modifiers on items can now range between -15 and +15, though items will follow a normal distribution centered around 0. See the PR for exact odds.
Additionally items armor values are now also affected by this event, and can add (or remove) up to 15 percent damage from all (defend-able) sources.

Additionally a special new gimmick has been added, new "item fortification scrolls" will be thrown randomly into all containers with room to hold them (read: this mostly means things like backpacks). Using these scrolls on items allows you to rank them up one level (this doesn't change their name though, trust me it's too much to do for a silly event).

BEWARE however that using these scrolls on items with very high modifiers (+10 or more) has a chance of failing and setting fire to the item. The highest possible modifier you can achieve with these scrolls is +19, though again the grand majority of items will burn well before this point.
2015-12-11 19:32:32 -05:00
Incoming
6a64864805 formally defines apprentices as a kind of antag instead of as "traitors".
Wizard events that spare the wizard should now properly spare apprentices too.

Moves renaming as an apprentice to the end of the spawn proc because the input prompt stops various important things (including the sound meant to inform people they got apprentice) from happening until after it's dealt with.

Restores the "+" for positive quality items in RPG loot. The reason this was changed was already fixed, it just was mistakenly never put back.
2015-12-10 12:08:49 -05:00
Incoming
3a85a3777f Spares those in critical from the mass mindshuffle event.
This was always the intention, but past me made a mistake I know I've made and fixed sense: He assumed that living_mob_list was a list of !stat mobs, when really it was a list of stat != 2 mobs
2015-12-01 23:05:35 -05:00
Incoming
1f9f0dfc40 Adds subtypesof(). It's shorthand for typesof(path) - path.
Replaces typesof(path) - path with subtypesof(path) in obvious places. I was a bit conservative, there's probably a few more places that could use this.
2015-11-16 18:55:57 -05:00
AndrewJacksonThe2nd
eaa1d11af4 On stun_nerf: objectives 2015-11-08 21:10:21 -08:00
Tkdrg
8fce742d0a Merge remote-tracking branch 'upstream/master' into fuk
Conflicts:
	data/mode.txt
	icons/mob/mob.dmi
	icons/mob/suit.dmi
	icons/obj/clothing/gloves.dmi
	icons/obj/clothing/hats.dmi
	icons/obj/clothing/shoes.dmi
	icons/obj/clothing/suits.dmi
2015-11-07 15:56:39 -03:00
blah
ea40dbdb90 Fixes rpgloot.dm by removing + and - 2015-11-04 16:01:32 +00:00
Tkdrg
e2187614fd Merge remote-tracking branch 'upstream/master' into hog-mergeconflicts
Conflicts:
	code/__DEFINES/hud.dm
	code/__HELPERS/game.dm
	code/_onclick/hud/_defines.dm
	code/_onclick/hud/hud.dm
	code/game/gamemodes/antag_spawner.dm
	code/game/gamemodes/game_mode.dm
	code/game/machinery/turrets.dm
	code/modules/client/preferences_toggles.dm
	code/modules/events/alien_infestation.dm
	code/modules/mob/dead/observer/observer.dm
	code/modules/mob/living/carbon/alien/special/alien_embryo.dm
	code/modules/mob/living/simple_animal/revenant/revenant.dm
	icons/mob/back.dmi
	icons/mob/head.dmi
	icons/mob/hud.dmi
	icons/mob/inhands/items_lefthand.dmi
	icons/mob/inhands/items_righthand.dmi
	icons/mob/mob.dmi
	icons/mob/suit.dmi
	icons/obj/clothing/hats.dmi
	icons/obj/items.dmi
	icons/obj/projectiles.dmi
	icons/obj/storage.dmi
2015-11-02 01:06:30 -03:00
Razharas
bb05785069 Merge pull request #12447 from caelaislinn/bugfix
Various runtime fixes
2015-10-29 01:42:14 +03:00
Cael_Aislinn
0b3f52c69f fixes runtime in non-upgradeable spells
Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2015-10-29 03:22:55 +10:00
phil235
d3ee910211 Makes effect system code more OOP.
obj/effect/effect is now renamed obj/effect/particle_effect for better usability.
datum/effect/system and /datum/effect/effect/system are now both /datum/effect_system.
Fixes a bug where wall mounted igniters (and other spark producing objects) didn't produce sparks sometimes.
Moved explosion_particles.dm into the effect_system folder, because it has effect_systems code.
2015-10-21 23:28:29 +02:00
phil235
47909d525f Changes smoke to behave more like foam. Each covered tile has one smoke cloud. This makes smoke clouds much less random, especially in terms of reagent application.
Also smoke reaction now uses the TOUCH method instead of VAPOR, to differentiate smoke and foam. Mob without internals or gas masks also ingests reagents in the smoke.
Moved nanofrost smoke code to effects/effect_system/effects_smoke.dm
2015-10-15 21:52:37 +02:00
Remie Richards
b9394257da About a million changes, but largely: Functional (Sort of) Antag Huds, Mind fixes, and Final glue to get the mode working. 2015-10-07 22:11:19 +01:00
phil235
2fd2f96238 Simplified update_mutations_overlay(), we no longer rebuild the entire mutation layer with all mutations every time we get or lose a mutation. I reintroduced in on_acquiring and on_losing some code similar to the old lose_indication gain_indication procs.
Fixed lesser form changeling, when humanized via dna injector, the ling no longer keeps its Human Form power.

Simplified the racemut trick in humanize() and monkeyize().

Dna now gets qdel'd, just like reagents, when the mob gets qdel'd.

Some tiny fixes here and there.

Added a changelog.
2015-09-22 02:14:37 +02:00
phil235
f90ee4aa8c - Fixed monkey starting with no dna.
- Fixed bugs with monkeyize/humanize: 7803 (humanized monkey nobloodtype)
- Fixes 9298 monkeyed ling have troubles humanizing themself (already fixed?)
- Fixes despawning clothes when monkeyizing. 11855
- Replaced check_dna_integrity proc by simpler has_dna proc when required.
- created set_species() proc
- fixed space retrovirus not transfering SE (despite having a domutcheck()). Still need to check if it needs a name = real_name.
- I renamed mecha/var/dna to dna_lock to avoid confusion
- I renamed an armor var in a species proc to armor_block to avoid confusion with species/var/armor.
- I removed many if(dna) checks in lots of files.
- I removed duplicate defense procs between human/proc/X and dna.species/proc/X since dna is now always set.
- Anatomic panacea from changeling removes alien embryo correctly. 6247
- Fixes runtime when trying to put dna-less brain mmi into a dnalocked mech.
- Removed carbon/var/list/features, we now only have dna.features and prefs.features
- Remove hulk mutation from lizards and other species (Fixed 6413); only real humans can acquire hulk. (less work on sprites for each ones, fixes lizard tail not in hulk color)
- Fixes cloning not setting up correctly dna UE and dna.real_name
- I fixed the issue with sucked+cloned ling being unable to absorb
- I fixed issue with changeling proc checking if they have the dna already not working.
- Fixed 4095, low health hulk with DAA getting stuck in loop of acquiring/losing hulk.
- I added a second layer for mutations to differientate mutations that go below and above the body layer (Fixes 7858)
- Fixes 10048, the transform to initial appearence button was fucking up the dna.

- Fixes cloning not setting up correctly dna UE and dna.real_name
- Fixed the issue with sucked+cloned ling being unable to absorb
- Fixed issue with changeling proc checking if they have the dna already not working.
- Fixed 4095, low health hulk with DAA getting stuck in loop of acquiring/losing hulk.
- Added a second layer for mutations to differientate mutations that go below and above the body layer (Fixes 7858)
- Fixes 10048, the transform to initial appearence button was fucking up the dna.
2015-09-19 22:18:28 +02:00
bear1ake
f697ae90f5 removes a bunch of .0 2015-09-10 20:57:30 +09:00
duncathan
51c09f16bf makes all Destroy()'s return properly 2015-08-31 00:21:01 -06:00
Ikarrus
a949c80fee Fixes Race Swap Runtime
- Fixes Race Swap Runtime
- Staff of change now assigns lizard name when appropriate
2015-07-06 21:47:30 -06:00
Ikarrus
5e50b2b982 Update and Changelog
Lizard names are now "name1-name2"
2015-07-05 22:20:00 -06:00
Ikarrus
b0cfaf401f Random Names for Lizards
Lizards now have their own list of names to pull from when randomizing their names.
2015-07-05 18:35:56 -06:00
Cheridan
d36c01412f Merge pull request #10238 from Incoming5643/catgirls2015
Catgirls 2015
2015-06-29 21:44:39 -05:00
Incoming5643
2c9401fbc0 Whoops almost killed the miners with cats 2015-06-28 19:44:44 -04:00
Incoming
bb8471ad3b Adds a catgirls version of cursed items
Apologizes for nothing
:3
2015-06-28 15:27:01 -04:00
phil235
b0cd6d34b1 Lots of work on acids, smoke, foam, reagents reaction() proc.
- fixed the fraction argument in reaction(...., INGESTED, fraction) so the proper amounts of each reagent react, not all of it.
- slight optimization of datum/reagents/reaction()
- small optimization /datum/reagent/proc/reaction_mob
- the smoke's reagents no longer do direct transfer upon crossed()/move() but uses "reagents.reaction( mob, TOUCH)" only.
- fixes no ingesting smoke if it's in the dark.
- removed block gas smoke effect flag from clown mask and other non "actual" gas mask.
- refactor how protection against touched chems being absorbed is done. get_permeability_protection() to get that protection. No more

simple RNG get touched or not, now the amount that touches you depends on your protection and the volume in question.
- changes acid_act to take volume into account.
- chem_smoke now uses process() just like foam, we remove the reaction from crossed() and Move(), it's only done in process() now.
- optimization of effect/smoke, OOP! And now all smoke effects use objprocessing instead of shitty sleep/spawn
- removed mob var/coughedtime.
- add a volume check to item/acid_act(), there's a threshold to be able to melt and then a probability to melt (acidpwr&volume).
- greatly lowered the amount of reagent in the smoke from dead blobspore (so the volume isn't enough for melting)
- human/acid_act(): damage to limbs depends on acidpwr&volume.
- fixes metalfoam not working.
- smoke powder: only one start() call.
- Amound of smoke objects depends on amount of smoke recipe created.
- Adds an argument to add_reagent() to block automatic call of handle_reaction()
- When using reagents/proc/trans_to(), reactions are now only handled after every reagent is transfered and not before.
- Amount of smoke objects depends on amount of smoke reagent created.
- radius of foam reaction depends on amount of foam reagent created.
- The amount of other reagents inside the smoke/foam decides the life expectancy of the effect.
- The amount of reagents in each small smoke cloud/foam cell depends on the amount of other reagents in the initial reaction but also

how much smoke/foam was created (more smoke means dilution of the reagents).
- smoke/foam's reagent reaction on mob decreases the life expectancy of the effect (to avoid reagent duplication)
- The amount of reagent reacting with atoms is less if the life expectancy is high.(to avoid reagent duplication)
- The amount of movement from the smoke now depends on the number of smoke clouds created.
- removing some useless code in chem_grenade/prime().
- When calling human/acid_act(), item acid melting chance lowers after each each successful melt in the list, some of the acid is

"used" to melt that item so the next items have a lower chance to melt (to make melting every clothing harder).
- remove the banned reagent list from sprays, not needed anymore now that acid is nerfed.
- chem_grenade reaction, if there's no reagent left after reaction (smoke/foam/etc, reagents cleared) you don't get the steam effect

and immediate reaction with all atoms around the grenade explosion. (Fixes foam cleaner grenade deleting bloodstains around it as soon

as the grenade explodes, even if the foam hasn't reached the tile yet).
- melted storage items now drop their content instead of deleting everything.
2015-06-22 00:35:24 +02:00
phil235
d275152a96 Fixes the wizard magic mirror race change.
Fixes the "race swap" wizard event.
2015-06-15 17:01:07 +02:00
Incoming
09f71f7f94 removes the "whoops you're probably going to die by no fault of your own!" races from the staff/wand of change with a new var: dangerous_existence. Currently lists shadowpeople, shadowlings and plasmamen.
Additionally adds that protection to the change races summon events event so the entire station doesn't have a change of exploding into burning death skeletons with no hope for survival.

Adds plasmamen to the blacklist for slime mutation toxin.
2015-05-09 21:04:59 -04:00
Jordie
562766bdb0 Merge pull request #9129 from Incoming5643/begone_ye_jellies
Some Mutantrace Housekeeping
2015-05-02 23:59:15 +10:00
MrStonedOne
bd6d51a0b5 Massive MC and subsystem rewrite
MC:
	No longer tracks a subsystem's cpu usage. This was basically worthless and took up space on the stat panel
	Can calculate wait down to a tenth of a decisecond to make it fps/world.ticklag agnostic
	Now allows subsystems to have a dynamic wait, that is based on a ratio of how long that subsystem has been taking to process(cost). (This system allows for upper and lower bounds, and an changeable cost delta for each subsystem)
	MC can now be told to init a zlevel

All Subsystems:
	Stats panel now allows child subsystems to pass it a message to add to its stats entry. All subsystems have been moved over to this system - This should cut down on subsystems having to copy and paste the stats proc in order to add to it
	All subsystems now properlly handle being given a zlevel in their init proc

Subsystem changes:
	Air:
		Added air to the dynamic wait subsystem. upper bound: 50, lower bound: 5, cost delta: 3 times process cost
		Air now fires 4 times faster when it can do so without lagging things up
		Pipenet has been merged into air
		Atmos machinery now processes with process_atmos(), ticked by air, not machinery.
		Hotspots (the fire object) are now object pooled
	Pipenet:
		Deleted, added to air
	Machinery:
		Moved all atmos calcualtions in all objects's process() to process_atmos().
	Lighting:
		Added Lighting to the dynamic wait subsystem. upper bound: 20, lower bound: 5, cost delta: 3 times process cost
	Ticker:
		Fixed ticker not updating the lobby panel when game start delayed
		Fixed the game start timer updating rapidly from queued fires when game start delay is removed
	Garbage/qdel:
		qdel will now limit its process time to 2ds a fire.
		qdel can now be given hints as a return to Destroy() as to what should be done with the object.
		the options are:
			queue: (default) this is the normal behavior.
			letmelive: old default to non-null/zero. does nothing with the object
			iwillgc: functionally the same as above, mainly to let people working with objects know that the object will not be queued for GC checking
			harddel: this will queue the object to be deleted without storing a soft reference, mainly to save locate() processing time.
			harddel_now: this will del() the object. To allow for a clean removal of every del() not in qdel
		All objects have been updated to the new system, harddel and iwillgc was not added to any new objects.
		Fixed some objects not GCing because they didn't properlly clear references in Destory()
		Fixed some objects getting qdel'ed preventing other objects from getting GCed because they did not null their reference to that object.
2015-04-29 02:00:25 -07:00
Incoming
f59c01e721 sets hardset_dna to clear exotic blood on race changes
sets every instance of race changes to use hardset_dna instead of directly replacing the datum (needs more testing to be sure I didn't break shit)
removes the invisible man race (aka the generic) and shadowlings from the new green slime mutation toxin while I'm in the area
2015-04-23 12:35:37 -04:00
AnturK
e2c869bc77 - Adds generic action and action buttons system 2015-04-11 17:06:43 +02:00
Jordie
d78ca0c57a Merge pull request #8566 from Incoming5643/literal_fun_removal
Magic Mania NaN: The Fun Ends Here
2015-03-30 01:25:52 +11:00