Commit Graph

653 Commits

Author SHA1 Message Date
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
xxalpha e82a216447 Changed various instances of range() and orange() to ultra_range(). 2015-10-19 20:04:14 +01:00
Cheridan cb7642b969 Merge pull request #12417 from phil235/SmokeChange
Changes smoke to behave more like foam.
2015-10-17 10:07:04 -05:00
Razharas 653dcbc0f4 Merge pull request #12380 from MrPerson/alert_rewrite
Mild rewrite of screen alerts to enable more functionality
2015-10-16 09:04:50 +03: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
MrPerson 610483ea1e Mild rewrite of screen alerts to enable more functionality
Specifically I wanted to allow #12043 to correctly implement clicking an "on fire" alert to call resist without affecting other alerts which is currently impssible. Plus this whole mess was stupid and bothering me so here we go.
2015-10-13 17:16:23 -07:00
phil235 7c6bbe328e Fixes some cases with mobs attached a mob. Can't enter a mech if attachment is done mid-climb. Can't get inside mech sleeper or closet if you have a mob attached to you. All sorts of teleports now properly teleport the attached mob as well.
Changed the warning message when climbing mech with a mob attached to be more general instead of specifically about slimes.

Getting inside a closet or machine now immediately breaks your pull and the pull of your puller.
Using ethereal jaunt now also immediately break your pull.

Fixes being able to get inside a mech sleeper while buckled by buckling mid-insertion.
2015-10-12 23:28:48 +02:00
phil235 df171284cb Slimes now uses buckling to feed and attach themselves on mobs. This removes the silly check in mob/Move(), reducing lag.
Fixes mobs being able to attach slimes onto other mobs.
2015-10-10 20:41:27 +02:00
Aranclanos ba07442a69 Merge pull request #12028 from phil235/AddbloodRuntimeFix
Fixes some runtimes, syndiborg module and  grenade launcher
2015-09-28 06:36:54 -03:00
Razharas 50dd1f6b67 Merge pull request #12031 from Xhuis/a_pretty_rad_pr
Radiation changes
2015-09-28 03:24:43 +03:00
Razharas 3c275abb27 Makes combat mechs scale based on parts
Makes combat mechs scale based on parts
Capacitor and scanning module
2015-09-26 22:06:43 +03:00
Xhuis 5f99b313cc Radiation changes 2015-09-26 13:33:27 -04:00
phil235 1d56ff80dc Fixes runtimes with add_blood() and add_blood_list()
Fixes formatting in the mech control console window.
Fixes runtimes when building an AI (mind transfer from mmi to ai was called before the AI's hud_list was set)
Fixes syndicate cyborg not starting with the correct module.
Fixes syndiborg not being able to use their grenade launcher
Fixes runtime with gun process_fire() (some code was reverted by accident)
Fixes a runtime with hostile simple animal's PickTarget().
2015-09-26 13:21:20 +02:00
Razharas 7fbde15c51 Merge pull request #11934 from Lijah99/MechBuckleCheck
Adds a buckle check for entering mechs, works on all mobs
2015-09-24 02:14:40 +03:00
Keklorde 931a732f9c adds a buckle check mid-enter 2015-09-22 12:14:48 -06:00
Keklorde 4ceb4590ff Update mecha.dm 2015-09-22 10:56:26 -06:00
Lijah99 77b8be191a Adds a buckle check for entering mechs, works on all mobs 2015-09-21 22:39:14 -06: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
Cheridan d1e1beb713 Merge pull request #11748 from Aranclanos/pipep1
Fixes the last remaining associative lists from pipes
2015-09-14 18:26:46 -05:00
Aranclanos 815ef798e9 Fixes the last remaining associative lists from pipes 2015-09-12 20:57:16 -03:00
bear1ake f697ae90f5 removes a bunch of .0 2015-09-10 20:57:30 +09:00
Razharas bfbe4e997e Merge pull request #11505 from duncathan/returnQDEL_HINT_LETMEDIE
Makes all Destroy() procs return properly
2015-09-01 15:54:18 +03:00
duncathan 51c09f16bf makes all Destroy()'s return properly 2015-08-31 00:21:01 -06:00
GunHog 60c9106f05 Merge remote-tracking branch 'remotes/upstream/master' into Malf_RCD-defense
Conflicts:
	code/game/gamemodes/malfunction/Malf_Modules.dm
2015-08-19 09:56:16 -05:00
GunHog 489be2d3e1 RCDs now EXPLODE!
- Made RCDs explode instead of simply disabled!
- Minor explosion power.
- Adds a five second warning to get rid of the RCD before it blows.
- Added a small cooldown.
2015-08-19 09:47:20 -05:00
GunHog 8b07203a87 Buffs RCD disable Malf power
- Halfed cost to 25 processing power
- Can now be used multiple times
- No longer disables Cyborg RCDs
- Fixes the feedback message not showing
- Fixed mech RCDs not being affected by the power
2015-08-17 11:03:53 -05:00
Firecage dfae1e0b53 Changes a lot of del() to qdel() 2015-08-16 23:33:22 +02:00
phil235 b90fcaa765 Remove mech immobilization when shooting.
Changed the fix to delete bullets the user is on the target loc while he fires so we don't get floating bullets.
2015-08-06 16:31:30 +02:00
phil235 cdfbaf269d simplifies mecha/Bump() a bit 2015-07-29 12:48:49 +02:00
phil235 84305062fe Fixes Bump() of mechs and bots not handling thrown cases correctly.
Mecha/Bump() now calls Bumped() in all cases as it should.
2015-07-27 14:33:13 +02:00
Jordie a85e4747e2 Merge pull request #10808 from phil235/ActionButtonMechUpdate
Mech action button update
2015-07-25 19:52:10 +10:00
Cheridan 4e27d88704 Merge pull request #10762 from xxalpha/mechafab
Changed mechfab RD console detection to oview.
2015-07-24 00:32:27 -05:00
Cheridan 05e227073d Merge pull request #10782 from phil235/VendingCharges
Mech & vending machine fixes
2015-07-24 00:02:31 -05:00
phil235 36c1768a77 Mech action buttons have new sprites by ZyloWalsh.
The dark gygax now has thrusters like the marauder, so that the nuke ops don't lose in space the mech they bought.
The gygax's leg actuator overload now uses an action button.
2015-07-24 00:24:52 +02:00
phil235 92625ba32b Fixes goliath hide overlay on ripley not updating correctly.
Simplifies the code for goliath hide application on ripley mech.(adding hides var to ripley)
Fixes some mech equipment's Destroy not calling return ..()
Fixes mech sleeper not reset its patient var when ejecting the patient.
Removed unnedded update_equip_info( in sleeper/detach()
Fixes an oversight in syringe_gun/process().
2015-07-23 00:39:37 +02:00
xxalpha eb186f03f4 Changed mechfab RD console detection to oview. 2015-07-22 01:28:23 +01:00
phil235 319e9cc224 Fixes runtime with mech/attack_animal's add_logs()
Readds mech cabin air being dropped on the turf when the mech is destroyed.
Fixes turf not updating its air when a mech dropped air on it (either via gas tank leak or cabin air dump).
2015-07-21 22:14:36 +02:00
phil235 34db8dd695 Merge branch 'master' of https://github.com/tgstation/-tg-station into MechRefactoring
Conflicts:
	code/game/mecha/equipment/mecha_equipment.dm
	code/game/mecha/equipment/tools/medical_tools.dm
	code/game/mecha/equipment/tools/tools.dm
	code/game/mecha/equipment/weapons/weapons.dm
	code/game/mecha/mecha.dm
2015-07-16 13:50:01 +02:00
duncathan ae417d2a03 Merge branch 'master' of https://github.com/tgstation/-tg-station into atmosrefactor2
Conflicts:
	code/ATMOSPHERICS/atmospherics.dm
	code/ATMOSPHERICS/components/binary_devices/binary_atmos_base.dm
	code/ATMOSPHERICS/components/binary_devices/passive_gate.dm
	code/ATMOSPHERICS/components/binary_devices/pump.dm
	code/ATMOSPHERICS/components/binary_devices/volume_pump.dm
	code/ATMOSPHERICS/components/trinary_devices/filter.dm
	code/ATMOSPHERICS/components/trinary_devices/mixer.dm
	code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm
	code/ATMOSPHERICS/components/unary_devices/Freezer.dm
	code/ATMOSPHERICS/components/unary_devices/cryo.dm
	code/ATMOSPHERICS/components/unary_devices/unary_base.dm
	code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm
	code/modules/events/vent_clog.dm
	code/modules/mob/living/carbon/human/species.dm
	config/admins.txt
2015-07-16 04:27:25 -06:00
Firecage 4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
phil235 26428f72ab Fix some merge conflict stuff 2015-07-14 01:27:06 +02:00
phil235 359a270de6 Merge branch 'master' of https://github.com/tgstation/-tg-station into MechRefactoring
Conflicts:
	code/game/mecha/equipment/tools/medical_tools.dm
	code/game/mecha/equipment/tools/tools.dm
	code/game/mecha/mecha.dm
2015-07-14 01:20:37 +02:00
duncathan e074fb7856 makes air flow; fixes EVERYTHING 2015-07-11 18:45:19 -06:00
MrStonedOne a262f9aac7 Attack logging tweaks
Removed the "feature" to have something log in an atom's vv attack log, but not the file attack log. all attack log items will go to the file as well as vv.

Replaced all hard coded src.name/name for attack log's object argument with an actual object (src) except where it made more sense not to.

All attack logging *should* happen AFTER damage is applied now.

Removed the confusing attack entry for when a changeling stings another changeling.

Tweaked how punch attack logs worked
2015-07-08 23:14:37 -07:00
phil235 63588814e2 derp 2015-07-08 13:58:53 +02:00
phil235 9cc577273f added update_action_buttons to mmi life subproc
Fixes seraph smoke not working.
buff energy relay so it's closet to the old effect
Fixes 6812 (mmi in mech cant use equipment) somehow.
Moved check to prevent drilling inventory to mecha/click_action so that it also happens with an AI occupant.
Fixes 9562 (verbs sometimes aren't given to the pilot) by removing the verbs
Upon destroy() we delete cabin_air: Fixes 8110
Changed armor booster availability back to all mechs.
Fixes repair droid overlay not updating when turned off after repair done
Fixes heavy plasma cutter not being attachable to anything.
2015-07-08 02:24:29 +02:00
phil235 ea1780ce97 - Mech equipment was using its unique processing method, with specific timing for each equipment, but now it uses obj processing, I
changed the values so the equipment effect stays the same. Remove global_iterator datum.
- fiddled with equip_ready procs of mech tools.
- removed mecha/proc/do_after and /enter_after() procs.
- Renamed mech sleeper occupant var to "patient" to avoid confusion with the occupant of the mech.
- all non instant tool (drill) now show a progbar when drilling etc..
- action cooldown now use do_after_cooldown() (that itself uses do_after) and start_cooldown (for instantaneous actions).
- Removed mecha_equipment's destroy proc, it's now all in Destroy(). No confusion.
- modified mecha_equipment/proc/can_attach() to not check istype(mecha) b/c it can't not be. (so the child only have one istype check.
- Removed diamonddrill/can_attach() , all done at drill level.
- armor booster now only for combat mech, instead of all except honkmech.
- Removed dynhitby, dynbulletdamage, dynattackby, dynusepower(), dyngetcharge(), dynabsorbdamage()
- I split the tools.dm file into smaller ones: work tools, mining tools, other tools.
- I split mecha.dm into mecha.dm, mecha_topic.dm and mecha_defense.dm
- refactored mech weapon ballistic/launcher, new proj_init proc, more OOP.
- Moving consumes energy! Lights consumes energy. Fixes #9425.
- Fixed #7354 xeno not bursting if host is inside a mech.
- Added action buttons to mech. Moved toggle lights, internal tank, eject, view stats from verbs to action buttons, these can now only

be done via these buttons (removed them from the big stats window).
- Removed port connect verbs b/C it's automated now.
- regular hud is no longer hidden when inside a mech (doesn't matter b/c you can't interact with most stuff in it while in a mecha). Fixes issue 10387
- can't walk when shooting projectiles. Makes walking on your projectile a bit harder. Helps against issue 10315 (but doesn't fix it).
- also made into action buttons: the special abilities of certain combat mechs.
- Added thrown alerts for mech charge and integrity.
- Fixes teleporting occupant out not properly removing it from the mech. Fixes issue 10330
- fixes ballistic mech weapons spinning when launched. proc/throw_at() now has a spin argument instead of using var/allow_spin that was added to all atoms just for that.
- added a update_action_buttons() to ai/life() to handle ai mech.
2015-07-07 19:40:32 +02:00
xxalpha cfb5e724b6 Material container, all items can have materials, wake me up
cant wake up

go to sleep debug
2015-07-01 03:34:47 +01:00
Razharas 080156bba1 Merge pull request #10085 from phil235/AcidFix
Acids, Smoke, Foam, reagents reaction() refactors
2015-06-28 16:57:20 +03:00
Razharas 6c488b289a Merge pull request #9885 from kingofkosmos/latheexofabspittingstuff
Autolathe produces items on top of itself
2015-06-28 16:16:31 +03:00