Commit Graph

121 Commits

Author SHA1 Message Date
Remie Richards
5b2d3ceada Allows overminds to reroll their chemical at a cost, fixes blob cores being invisible, repaths blob mobs to /hostile/blob 2015-02-08 01:22:51 +00:00
Iamgoofball
fa7e15d734 what is object oriented programming 2015-02-02 18:30:24 -08:00
Iamgoofball
1f7ef9b218 Fixes #7020 2015-02-01 13:58:07 -08:00
Iamgoofball
1543abb43f Moves the core and node sprites to be overlays. Tweaks and adjustments to various reagents. Removes 2 of the reagents for being useless. 2015-01-11 20:04:24 -08:00
iamgoofball
3d331d0802 Reagent Blobs 2015-01-01 02:07:12 -08:00
Razharas
7758a0afed Ok now explosions shall work properly
Changed severity to target, make items not destroy themselves on
severity lower than 1, all that stuff
2014-12-05 23:21:48 +03:00
Cheridan
f909d59d1a Merge pull request #6130 from phil235/AttackMsgStandardizedFormat
Standardizing attack messages to always show the attacker first
2014-12-04 12:45:31 -06:00
phil235
86405fa8c0 Standardizes attack messages to always show the attacker first (when there is an attacker).
Replacing some fo mob in viewers() show_message() with visible message().
Simplifying some message code in a couple places, fixing typos and span classes.
2014-11-24 01:49:34 +01:00
Razharas
ff456ebaf4 Unwinded most of shit
Meh
2014-11-19 21:36:45 +03:00
Razharas
b071a0167e Made explosions work in a slightly different way
Yep
2014-11-18 16:22:41 +03:00
phil235
bc5754b378 adding diagonal attack animation. 2014-11-07 15:42:07 +01:00
phil235
1506383b2c Adding some missing do_attack_animation()
Moving do_attack_animation() proc to mob/living
Fixing the pixel offset issue from beds especially rollerbed.
Fixing the nograv bouncing stopping because of another animation being used.(lying down, jittering, attack animation)
2014-11-03 15:11:39 +01:00
phil235
8b49caa5ee Fixes typos and show messages. Fixes attack animation code. 2014-11-03 01:06:02 +01:00
phil235
3f30912c51 WIP - Adding attack animation to most attacks.
Fixing a couple "for(......) show_message()".
2014-11-02 22:50:58 +01:00
phil235
dbea503e88 Removing the fourth argument (air_group) of CanPass() everywhere, because it isn't used anywhere.
Fixing one instance of "for(mob in viewers) show_message()" to "visible_message()"
2014-10-15 18:03:06 +02:00
Aranclanos
ccae5781c5 added two defines CLICK_CD_RANGE and CLICK_CD_MELEE (4 and 8), replaced all changeNext_move() procs to use these two defines.
Added melee click cooldown for paper spam on cameras.
2014-08-03 22:14:56 -03:00
phil235
fd27c564fc Fix attack message typo. 2014-04-26 22:21:59 +02:00
Miauw
dc9ead6575 Merge branch 'master' of https://github.com/tgstation/-tg-station into warnstandardization
Conflicts:
	code/_onclick/telekinesis.dm
	code/game/sound.dm
2014-03-30 20:48:03 +02:00
Aranclanos
7bcb69ad88 Removes the click cooldown from almost everything, now it should be always be 0.1 seconds.
Ranged weapons and laser eyes have a cooldown of 0.4.
Grilles, windows, windoors, walls and blobs have a cooldown of 0.8.
Hitting mobs will also have a cooldown of 0.8.
Removes the unused USEDELAY flag.
2014-03-28 06:32:47 -03:00
MrPerson
97b081bc0b Fix some blob-related qdel() issues.
In particular, the one where dead blob spores make a shitload of smoke and become invisible and generally be buggy on death.
Also blobs should GC correctly now.
2014-03-23 23:25:46 -07:00
Miauw
a80dd4df0f Merge branch 'master' of https://github.com/tgstation/-tg-station into warnstandardization
Conflicts:
	code/game/objects/items/weapons/AI_modules.dm
2014-03-22 17:42:07 +01:00
Miauw
520b114293 fixes shit 2014-03-09 18:31:43 +01:00
MrPerson
3c58091437 Merge branch 'master' of https://github.com/tgstation/-tg-station into qdel
Hopefully nothing went wrong but you never know.

Conflicts:
	code/FEA/FEA_fire.dm
	code/controllers/supply_shuttle.dm
	code/game/gamemodes/changeling/changeling_powers.dm
	code/game/machinery/autolathe.dm
	code/game/machinery/drying_rack.dm
	code/modules/hydroponics/hydroponics.dm
	code/modules/projectiles/projectile/magic.dm
	code/modules/reagents/Chemistry-Recipes.dm
	code/modules/reagents/reagent_dispenser.dm
2014-03-02 21:39:27 -08:00
MrPerson
9eee3e5067 First pass at a qdel() garbage collection system for tgstation
Works pretty well. If it can't GC something, it'll just del() it and be done.
Speed is amazing, holy shit.

New procs you should be aware of:
qdel(atom/movable) - sets up an object for garbage collection. Call this rather than del(atom/movable).
atom/movable/Destroy() - called right before the object is GC'd, so it still has a loc. Also called if the object is del()'d.
new controller - garbage.dm has all the details on this. Basically it nulls all references on GC'd objects and force del() them if necessary.
Generally speaking, objects should use Destroy() for behavior prior to deletion rather than Del(). You should also always call the parent so the object gets the right gc_destroyed var set.

ISSUES:
Tries to GC mobs atm. This actually works for new players, not so much for humans/monkies/simple_animals/anything. I'm guessing it needs to clear out their mind and HUD and maybe other things.
Gibbing is really bugged. It works, but the overlays just sit there for awhile and ugh. I'm very tempted just to del() mob/living and mob/camera and call it a day.
qdel() equipment doesn't unequip the item.
Pipes don't generally GC correctly. Debugging suggests they get referenced in many pipenets and that isn't cleared properly. However some do work fine. Need assistance here.
Bots don't GC, probably in the radio controller.
Lots of other shit doesn't GC but it's hard to find them because of the pipe spam.
I think I'm calling Destroy() twice by accident.
2014-02-23 14:55:12 -08:00
hornygranny
ed12a9cfb0 missing exclamation points 2014-02-20 12:41:23 -08:00
hornygranny
a86de57c05 Fixes #2726 2014-02-20 12:11:00 -08:00
Giacomand
f1e7637bab Disabled the game using set background by making all instances of it use a define, which can be changed in code/_compile_options.dm
Testing has revealed that it reduces the sluggishness of the game, though it will spike from lag when the singularity is loose. Thanks to ChuckTheSheep for suggesting it.

Server owners who want to keep set background enabled can do so by changing the define.
2014-01-10 18:32:28 +00:00
Giacomand
b8c031026c * Telescience now works on bluespace crystals, which are special crystals which unlock power settings from the telescience computer.
* The telescience computer starts with 3 artificial crystals.
 * The crystals can be crushed to blink or you can throw it at someone to make them blink a short distance.
 * You cannot teleport the AI or any anchored mob (unless they are buckled to an office chair).
 * You can make the bluespace crystals from slimes or from research.
2013-11-12 14:24:56 +00:00
Giacomand
9b9762d612 Blobs will slowly regenerate health when pulsed. They have a second cooldown after every pulse to make sure 5 nodes aren't healing them too quickly.
Changed how the overmind hud was updated so that it was more accurate. Instead of updating every life() it will update everytime the blob core health changes and everytime the resource count changes.

Renamed the expand power to "expand/attack", to make it more clear to new blubbers that you use it to attack people.
2013-11-01 23:28:02 +00:00
Giacomand
1aeed2d768 Changed the fluff text for creating constructs from a soulstone.
Added an attack_animal() for blob.
2013-10-19 21:19:58 +01:00
Giacomand
d5f96002be Blob Features!
A blob tile will light up when it is being pulsed by a core/node, adds crucial visual feedback when placing resources/factories.
New shortcuts for the blob. Expand = CTRL Click - Rally = Middle Mouse Click - Create Shield = Alt Click
Blobs can now talk to each other and ghosts can hear them. Thanks to /vg/ for this code.
Removed the unnecessary AI quarantine code.
Formated the blob code to use the standard.
2013-10-06 22:56:22 +01:00
Giacomand
db72780399 Made tweaks to blob based on feedback.
Made the blob start strong but grow slower, helping stop situations where the blob is instantly caught and gets wiped out and stop the blob from being unstoppable after making 4 resource blobs.

Removed the AI quarantine laws from the blob gamemode.

People didn't like getting instantly KO'd by the blob, reduced the damage output to encourage melee engagements.

Blob overminds can see in the darkness now.
2013-08-12 16:57:52 +01:00
Giacomand
1fb9227f77 Blob/AI cameras can now be followed by ghosts.
Added the blob to the check antagonists, displaying how many blobs are left to win and being able to show the player panel for the blob.
Gave overminds mind datums which will initialize to give the overmind a blob special role.
Re-worded the BE ALIEN candidate so that it is more abstract and could mean becoming a blob.
Added another message for when the infected crew is about to burst into a blob.
EMPs will now hurt the blob.
Fixed blob spores blocking the blob from expanding.
Nodes will also slowly recharge their health.
Gave a little bit of health to normal blobs so that lasers don't one shot them anymore, barely.
2013-07-21 15:13:43 +01:00
Giacomand
ac255799e0 * Increased the cost of resource blobs.
* Increased the distance of the factory blob and the node blob.
 * Slightly lowered the health of the shield blob.
 * Increased the damage taken from bombs.
 * Reduced the health of normal blobs so lasers one shot them.
2013-07-16 13:26:04 +01:00
Giacomand
9caa5905fe * Made the mining shuttle one way during blob.
* Increased players per blob and decreased blob count to win.
 * Changed the health value of the blob spores.
 * Blob gamemode will give the blob core a resource rate of 2, random event blob cores will get 1.
 * Raised the amount of time that has to pass before the blob event occurs.
 * Increased the difficulty of expanding into space.
 * Added a player limit to the blob gamemode.
 * Removed density from shield and other variables which are set in the abstract blob.
 * Deleted spores after they die.
 * Reset the brute resistance.
 * Disabled random blobs in the blob gamemode.
 * Double'd the blob spore's health.
 * Blobs can expand into space again but it will be harder to do than on a space tile.
 * Dead robots will be gibbed in their blob_act() as their bodies will block the blob.
 * Reduced the damage the blob takes from explosions, and increased the brute resistance. Blobs main weakness is fire, not force.
2013-07-13 09:55:41 +01:00
Giacomand
dec20a7c8a Shows who the blobs were at the end of the round.
Small tweaks to values, such as increasing the resource rate of the core.
Overminds will have different names.
2013-07-10 00:31:23 +01:00
Giacomand
f3e63c8841 New powers, such as rally.
Blob spores can move through blob pieces now.
Blob gamemode chooses someone to turn into the blob
Other small changes based on feedback.
2013-07-09 00:52:29 +01:00
Giacomand
6b39c6b1f9 Blob revamp!
Re-introduced the concept of a player controlling the blob in an RTS fashion, expanding the blob and building structures such as nodes and factories.

All blobs will try to find ghosts, with the BE_ALIEN flag, to be the blob overmind. Even random event blobs will try to get players to play as the overmind.

Added a /mob/camera that is now being used by the AI eye and the blob overmind. It is a mob that isn't dead but acts as a camera for the player, to be controlled by something like the AI or the blob.

There are now a resource currency for the blob to spend it's points on blob expansion and upgrades.

Added a small blob_act to mechs.

Made all camera mobs max invisibility. Because of this I removed the AI best friend button as it would be not working.

Blob mode will send a normal intercept report.
2013-07-06 21:19:33 +01:00
AlexanderUlanH
2fcf26667c Overhauled Projectiles
Changed atom's bullet_act to call the projectile's on_hit, and changed
most bullet_acts to call on_hit as well.  Removed some now-unnecessary
snowflake code.

These changes will make projectiles which should effect non-mobs, such
as the gyrojet and the ion rifle, work properly.  Inanimate objects can
now be empulsed with the ion rifle, whose projectiles used to dissipate
on hitting anything but a mob.  Gyrojets now explode on most objects, as
opposed to just on walls and mobs, and the snowflake code that made them
work on walls is no longer necessary.  The code for pulse rifles'
breaking walls has been moved from a check in turf to a check in pulse
beams, and has been expanded to include structures, allowing them to
(slowly) break girders.  For coders, it means that on_hit is a reliable
proc for the effect of a bullet's hitting an object.
2013-06-19 23:24:00 -04:00
elly1989@rocketmail.com
4073ac9b00 Replaced all 'file.extension' references with 'relativepath/file.extension' using a script by thvortex of ss13-daedalus.
All credits to the author for this handy little script.
I Committed the modified python script to tool directory. Although it needs to be in the root folder of your repo to work.

To notice the improved compile times, in dreammaker go to Build > Preferences > and untick "automatically set file_dir for subfolders"

If this commit inteferes with any large projects just revert it, do your thing, then rerun the script. Easy-peasy.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4488 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-18 16:33:40 +00:00
Kortgstation@gmail.com
ae6e120533 The blob now glows in the dark.
This is to fix the critter/NPC defense blobs not attacking people (their shitty AI doesn't work in the dark) and make it so the player controlled blob fragments can actually see what they are doing when choosing building locations (especially with the new darkness).

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4422 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-15 22:37:53 +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
mport2004@gmail.com
88c867ea25 Fixed a supply shuttle runtime due to the stamping missing a null check.
Added a null check to cleanbots and new player preferences.
Did a bit of blob and antimatter work.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3919 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-26 01:20:19 +00:00
mport2004@gmail.com
d085d77706 Fixed an issue where the blob core/nodes were eating themselves.
Readded the flashbang box desc.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3914 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-25 00:27:35 +00:00
mport2004@gmail.com
69753b0190 Worked on blob mode a bit
Readded the AM stuff to the dme
Added another explosion edit from Willox


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3903 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-24 00:03:31 +00:00
baloh.matevz@gmail.com
c2c7a3bcda - Variable declaration standardization. Big commit.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3671 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-25 19:26:36 +00:00
petethegoat@gmail.com
e444ce8fc2 Adding Shiftyeyesshady's Warden Jacket.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2987 316c924e-a436-60f5-8080-3fe189b3f50e
2012-01-26 22:00:09 +00:00
mport2004@gmail.com
72ff652ecd Changelog code has been fixed, when editing it please use notepad or some other text editor that wont attempt to change everything.
Bit of work on blob, mainly cleanup of the blob gamemode files.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2764 316c924e-a436-60f5-8080-3fe189b3f50e
2011-12-21 21:33:04 +00:00
mport2004@gmail.com
62e28c2abf Organs:
Moved into their own folder and got split into three files.
Damage  zones have been regrouped slightly to make it easier to deal with them. Currently the organ groups are head, l/r leg, l/r arm, and head.

Attacking:
Armor is properly checked.
Currently aiming for the chest gives a higher chance to stun whereas the head will stun for longer.
Stungloves/Disarm now show up in the attack log.
Stungloves ignore intent.

Silicon:
AI units can now move between cams that are not on the ss13 network.
Cyborg's alert screen should not longer pop up every time they get an alert if they have opened it once during the round.
Robot vision now uses the standard amount of energy.

Gamemodes:
Added Deuryn's unrev message.
Runes can only be examined if you are close to them.
Moved the Loyalty implants to the HoS' locker at the request of HerpA.
Nuke agents now come with explosive implants that will activate upon death.

Projectiles:
Once again went though the gun code and cleaned things up, it is much better now.
Bullet_act fixed up and most mobs now use the one in living, just overload it if they need to do something diff.
Freeze /caplaser/xbow no longer have an infinite loop.
Shotguns have to be pumped manually.

Went though the latest runtime log.

Power cells now use return on their give/use procs

Assemblies have been reworked and are nearly finished, just need to finish up the special assembly code, redo the signalers, and add one or two new assembly items.
Laying down will now only take 3 ticks to get up, from 5.

You can no longer punch people on the spawn screen.

This is a big one and was cleared by two heads, TK will only allow you to pick up items.  If you have an item in your hand it will act normal.

This revision got much larger than originally intended my tests show everything is working fine, but you never know.  Ill likely do more mob teaks in the next few days.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2333 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-08 10:38:01 +00:00
mport2004@gmail.com
17ed3899c4 Fixed the map/code issues that the body bags caused.
/obj/effects is now /obj/effect.
/obj/station_objects is now /obj/structure.
Did a bit of minor blob work. 
The Bay 12 body bags were replaced with closets because having two sets of code that do almost the same thing is silly.
Changed back a few of the last jobproc edits as the remove from list before assign was a check to see if the mob was fucked up and if it was remove it so we did not check it again as it would still be fucked up.
The medbay/tox monkeys names are random once more.  More random name monkeys will help with changeling and clean up the observe/mob menus.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2324 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-03 10:28:57 +00:00