Commit Graph

196 Commits

Author SHA1 Message Date
Cael_Aislinn
eacd84b212 Merge tgstation13 r4570 into bs12_with_tgport
Conflicts:
	baystation12.dme
	code/defines/obj.dm
	code/defines/procs/helpers.dm
	code/defines/turf.dm
	code/game/gamemodes/changeling/modularchangling.dm
	code/game/gamemodes/cult/cult_structures.dm
	code/game/gamemodes/events.dm
	code/game/machinery/telecomms/machine_interactions.dm
	code/game/master_controller.dm
	code/game/objects/items/blueprints.dm
	code/game/objects/items/devices/uplinks.dm
	code/game/objects/items/item.dm
	code/game/objects/items/weapons/gift_wrappaper.dm
	code/game/objects/items/weapons/wires.dm
	code/game/objects/weapons.dm
	code/game/turfs/turf.dm
	code/modules/clothing/head/hardhat.dm
	code/modules/mining/mine_items.dm
	code/modules/mining/mine_turfs.dm
	code/modules/mob/living/silicon/robot/life.dm
	code/modules/mob/mob_defines.dm
	code/modules/mob/new_player/login.dm
	code/modules/paperwork/pen.dm
	code/modules/paperwork/stamps.dm
	code/unused/toilets.dm
	html/changelog.html
	icons/effects/alert.dmi

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-08-28 19:57:11 +10:00
giacomand@gmail.com
683662f3b6 -Ported/continued AI Freelook. AIs can now look around like a ghost with the exception that they cannot see what cameras cannot see. Meaning if you're in maintenance, and there's no cameras near you, the AI will not know what you are doing. This also means there's no X-Ray vision cameras anymore. I've added documentation to freelook.dm which explains how the system works, if anyone is interested in adding anything. More information here: http://nanotrasen.com/phpBB3/viewtopic.php?f=7&t=9675
-I've added some cameras to rooms that should have cameras but were previously depending on other camera's using their X-Ray vision in order to see into a room.

-AIs have a multitool in their contents that they can use to interact with the telecommunication machines.

-Added "Follow" for observers. Works the same as AI tracking without checking if they can track.

-Added a range to how far Cyborgs can interact with machines. This is to stop Cyborgs from interacting with machines through cameras, which could be used to easily disable the AI.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4531 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-25 05:34:33 +00:00
Cael_Aislinn
418c140e00 Merge branch 'tg' into bs12_with_tgport
Conflicts:
	code/defines/mob/living/carbon/monkey.dm
	code/setup.dm

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-08-22 18:39:44 +10:00
johnsonmt88@gmail.com
95c6127bea Moved all of the defines/mob into their appropriate modules/mob/ files
Next up, objects! One day we'll be able to click on something in the object tree, and actually end up where all the object code is.

I standardized robot/life.dm while I was at it.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4510 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-22 03:11:46 +00:00
Cael_Aislinn
c314b5f42b Initial merge http://code.google.com/p/tgstation13/source/browse/trunk/ rev 4489 (I think) with BS12
Conflicts:
	README.txt
	SQL/tgstation_schema.sql
	baystation12.dme
	code/ATMOSPHERICS/components/unary/vent_pump.dm
	code/ATMOSPHERICS/pipes.dm
	code/FEA/FEA_airgroup.dm
	code/FEA/FEA_fire.dm
	code/FEA/FEA_gas_mixture.dm
	code/FEA/FEA_turf_tile.dm
	code/TriDimension/Pipes.dm
	code/WorkInProgress/buildmode.dm
	code/WorkInProgress/organs/organs.dm
	code/WorkInProgress/virus2/Disease2/analyser.dm
	code/WorkInProgress/virus2/Disease2/biohazard destroyer.dm
	code/WorkInProgress/virus2/Disease2/cureimplanter.dm
	code/WorkInProgress/virus2/Disease2/diseasesplicer.dm
	code/WorkInProgress/virus2/Disease2/dishincubator.dm
	code/WorkInProgress/virus2/Disease2/isolator.dm
	code/WorkInProgress/virus2/Disease2/monkeydispensor.dm
	code/WorkInProgress/virus2/analyser.dm
	code/WorkInProgress/virus2/antibodies.dm
	code/WorkInProgress/virus2/base.dm
	code/WorkInProgress/virus2/biohazard destroyer.dm
	code/WorkInProgress/virus2/cureimplanter.dm
	code/WorkInProgress/virus2/curer.dm
	code/WorkInProgress/virus2/diseasesplicer.dm
	code/WorkInProgress/virus2/dishincubator.dm
	code/WorkInProgress/virus2/isolator.dm
	code/WorkInProgress/virus2/monkeydispensor.dm
	code/datums/ai_laws.dm
	code/datums/configuration.dm
	code/datums/datumvars.dm
	code/datums/diseases/alien_embryo.dm
	code/datums/diseases/appendicitis.dm
	code/datums/diseases/robotic_transformation.dm
	code/datums/diseases/xeno_transformation.dm
	code/datums/helper_datums/getrev.dm
	code/datums/helper_datums/teleport.dm
	code/datums/helper_datums/tension.dm
	code/datums/mind.dm
	code/datums/mixed.dm
	code/datums/shuttle_controller.dm
	code/datums/spell.dm
	code/datums/spells/ethereal_jaunt.dm
	code/datums/spells/genetic.dm
	code/datums/spells/wizard.dm
	code/defines/area/Space Station 13 areas.dm
	code/defines/atom.dm
	code/defines/global.dm
	code/defines/mob/dead/observer.dm
	code/defines/mob/living/carbon/alien.dm
	code/defines/mob/living/carbon/alien_humanoid.dm
	code/defines/mob/living/carbon/carbon.dm
	code/defines/mob/living/carbon/metroid.dm
	code/defines/mob/living/carbon/monkey.dm
	code/defines/mob/living/living.dm
	code/defines/mob/living/silicon/ai.dm
	code/defines/mob/living/silicon/robot.dm
	code/defines/obj.dm
	code/defines/obj/closet.dm
	code/defines/obj/clothing.dm
	code/defines/obj/clothing/costume.dm
	code/defines/obj/computer.dm
	code/defines/obj/costume.dm
	code/defines/obj/decal.dm
	code/defines/obj/door.dm
	code/defines/obj/hydro.dm
	code/defines/obj/machinery.dm
	code/defines/obj/storage.dm
	code/defines/obj/supplypacks.dm
	code/defines/obj/toy.dm
	code/defines/obj/vending.dm
	code/defines/obj/weapon.dm
	code/defines/procs/AStar.dm
	code/defines/procs/command_name.dm
	code/defines/procs/dbcore.dm
	code/defines/procs/forum_activation.dm
	code/defines/procs/gamehelpers.dm
	code/defines/procs/helpers.dm
	code/defines/procs/icon_procs.dm
	code/defines/procs/station_name.dm
	code/defines/procs/statistics.dm
	code/defines/turf.dm
	code/game/algorithm.dm
	code/game/area/areas.dm
	code/game/asteroid/artifacts.dm
	code/game/atom_procs.dm
	code/game/cellautomata.dm
	code/game/dna.dm
	code/game/events/EventProcs/clang.dm
	code/game/events/EventProcs/dust.dm
	code/game/events/EventProcs/ninja_abilities.dm
	code/game/events/EventProcs/ninja_equipment.dm
	code/game/events/EventProcs/space_ninja.dm
	code/game/events/EventProcs/spacevines.dm
	code/game/gamemodes/blob/blob.dm
	code/game/gamemodes/blob/blob_finish.dm
	code/game/gamemodes/blob/blob_report.dm
	code/game/gamemodes/blob/theblob.dm
	code/game/gamemodes/changeling/changeling.dm
	code/game/gamemodes/changeling/changeling_powers.dm
	code/game/gamemodes/changeling/modularchangling.dm
	code/game/gamemodes/changeling/traitor_chan.dm
	code/game/gamemodes/cult/cult.dm
	code/game/gamemodes/cult/cult_items.dm
	code/game/gamemodes/cult/cult_structures.dm
	code/game/gamemodes/events.dm
	code/game/gamemodes/events/black_hole.dm
	code/game/gamemodes/events/miniblob.dm
	code/game/gamemodes/factions.dm
	code/game/gamemodes/game_mode.dm
	code/game/gamemodes/gameticker.dm
	code/game/gamemodes/malfunction/malfunction.dm
	code/game/gamemodes/meteor/meteor.dm
	code/game/gamemodes/meteor/meteors.dm
	code/game/gamemodes/nuclear/nuclear.dm
	code/game/gamemodes/nuclear/nuclearbomb.dm
	code/game/gamemodes/nuclear/pinpointer.dm
	code/game/gamemodes/objective.dm
	code/game/gamemodes/revolution/revolution.dm
	code/game/gamemodes/sandbox/h_sandbox.dm
	code/game/gamemodes/sandbox/sandbox.dm
	code/game/gamemodes/setupgame.dm
	code/game/gamemodes/traitor/traitor.dm
	code/game/gamemodes/wizard/rightandwrong.dm
	code/game/gamemodes/wizard/soulstone.dm
	code/game/gamemodes/wizard/spellbook.dm
	code/game/gamemodes/wizard/spells.dm
	code/game/gamemodes/wizard/veilrender.dm
	code/game/gamemodes/wizard/wizard.dm
	code/game/hud.dm
	code/game/jobs/access.dm
	code/game/jobs/job/captain.dm
	code/game/jobs/job/civilian.dm
	code/game/jobs/job/civilian_chaplain.dm
	code/game/jobs/job/engineering.dm
	code/game/jobs/job/job.dm
	code/game/jobs/job/medical.dm
	code/game/jobs/job/science.dm
	code/game/jobs/job/security.dm
	code/game/jobs/job/silicon.dm
	code/game/jobs/job_controller.dm
	code/game/jobs/jobs.dm
	code/game/machinery/Beacon.dm
	code/game/machinery/OpTable.dm
	code/game/machinery/Sleeper.dm
	code/game/machinery/alarm.dm
	code/game/machinery/atmo_control.dm
	code/game/machinery/atmoalter/area_atmos_computer.dm
	code/game/machinery/autolathe.dm
	code/game/machinery/biogenerator.dm
	code/game/machinery/bots/bots.dm
	code/game/machinery/bots/cleanbot.dm
	code/game/machinery/bots/ed209bot.dm
	code/game/machinery/bots/floorbot.dm
	code/game/machinery/bots/medbot.dm
	code/game/machinery/bots/mulebot.dm
	code/game/machinery/camera.dm
	code/game/machinery/cell_charger.dm
	code/game/machinery/cloning.dm
	code/game/machinery/computer/HolodeckControl.dm
	code/game/machinery/computer/Operating.dm
	code/game/machinery/computer/ai_core.dm
	code/game/machinery/computer/arcade.dm
	code/game/machinery/computer/atmos_alert.dm
	code/game/machinery/computer/buildandrepair.dm
	code/game/machinery/computer/card.dm
	code/game/machinery/computer/cloning.dm
	code/game/machinery/computer/communications.dm
	code/game/machinery/computer/computer.dm
	code/game/machinery/computer/crew.dm
	code/game/machinery/computer/hologram.dm
	code/game/machinery/computer/law.dm
	code/game/machinery/computer/medical.dm
	code/game/machinery/computer/message.dm
	code/game/machinery/computer/pod.dm
	code/game/machinery/computer/power.dm
	code/game/machinery/computer/prisoner.dm
	code/game/machinery/computer/robot.dm
	code/game/machinery/computer/security.dm
	code/game/machinery/computer/shuttle.dm
	code/game/machinery/constructable_frame.dm
	code/game/machinery/deployable.dm
	code/game/machinery/door_control.dm
	code/game/machinery/doors/airlock.dm
	code/game/machinery/doors/airlock_electronics.dm
	code/game/machinery/doors/brigdoors.dm
	code/game/machinery/doors/door.dm
	code/game/machinery/doors/firedoor.dm
	code/game/machinery/doors/poddoor.dm
	code/game/machinery/doors/unpowered.dm
	code/game/machinery/doors/windowdoor.dm
	code/game/machinery/flasher.dm
	code/game/machinery/gateway.dm
	code/game/machinery/hologram.dm
	code/game/machinery/hydroponics.dm
	code/game/machinery/kitchen/gibber.dm
	code/game/machinery/morgue.dm
	code/game/machinery/newscaster.dm
	code/game/machinery/pipe/construction.dm
	code/game/machinery/pipe/pipe_dispenser.dm
	code/game/machinery/portable_turret.dm
	code/game/machinery/recharger.dm
	code/game/machinery/rechargestation.dm
	code/game/machinery/requests_console.dm
	code/game/machinery/shieldgen.dm
	code/game/machinery/spaceheater.dm
	code/game/machinery/suit_storage_unit.dm
	code/game/machinery/syndicatebeacon.dm
	code/game/machinery/telecomms/broadcaster.dm
	code/game/machinery/telecomms/logbrowser.dm
	code/game/machinery/telecomms/machine_interactions.dm
	code/game/machinery/telecomms/telemonitor.dm
	code/game/machinery/telecomms/traffic_control.dm
	code/game/machinery/teleporter.dm
	code/game/machinery/turrets.dm
	code/game/machinery/vending.dm
	code/game/magic/cultist/ritual.dm
	code/game/magic/cultist/runes.dm
	code/game/magic/library.dm
	code/game/magic/musician.dm
	code/game/master_controller.dm
	code/game/mecha/combat/combat.dm
	code/game/mecha/combat/gygax.dm
	code/game/mecha/equipment/mecha_equipment.dm
	code/game/mecha/equipment/tools/tools.dm
	code/game/mecha/equipment/weapons/weapons.dm
	code/game/mecha/mech_fabricator.dm
	code/game/mecha/mecha.dm
	code/game/mecha/mecha_construction_paths.dm
	code/game/mecha/mecha_wreckage.dm
	code/game/mecha/medical/medical.dm
	code/game/mecha/medical/odysseus.dm
	code/game/mecha/working/ripley.dm
	code/game/objects/alien/facehugger.dm
	code/game/objects/alien/resin.dm
	code/game/objects/bodybag.dm
	code/game/objects/closets.dm
	code/game/objects/closets/emergency.dm
	code/game/objects/closets/extinguisher.dm
	code/game/objects/closets/fireaxe.dm
	code/game/objects/closets/firecloset.dm
	code/game/objects/closets/fitnesscloset.dm
	code/game/objects/closets/janitor.dm
	code/game/objects/closets/kitchen.dm
	code/game/objects/closets/nuclear.dm
	code/game/objects/closets/secure/bar.dm
	code/game/objects/closets/secure/cargo.dm
	code/game/objects/closets/secure/engineering.dm
	code/game/objects/closets/secure/hydroponics.dm
	code/game/objects/closets/secure/medical.dm
	code/game/objects/closets/secure/personal.dm
	code/game/objects/closets/secure/scientist.dm
	code/game/objects/closets/secure/secure_closets.dm
	code/game/objects/closets/secure/security.dm
	code/game/objects/closets/syndicate.dm
	code/game/objects/closets/wardrobe.dm
	code/game/objects/contraband.dm
	code/game/objects/crates.dm
	code/game/objects/devices/PDA/PDA.dm
	code/game/objects/devices/PDA/cart.dm
	code/game/objects/devices/PDA/chatroom.dm
	code/game/objects/devices/aicard.dm
	code/game/objects/devices/flash.dm
	code/game/objects/devices/flashlight.dm
	code/game/objects/devices/paicard.dm
	code/game/objects/devices/scanners.dm
	code/game/objects/devices/taperecorder.dm
	code/game/objects/devices/traitordevices.dm
	code/game/objects/door_assembly.dm
	code/game/objects/effect_system.dm
	code/game/objects/electricchair.dm
	code/game/objects/explosion.dm
	code/game/objects/gibs.dm
	code/game/objects/grille.dm
	code/game/objects/items.dm
	code/game/objects/items/blueprints.dm
	code/game/objects/items/candle.dm
	code/game/objects/items/clothing.dm
	code/game/objects/items/food.dm
	code/game/objects/items/helper_procs.dm
	code/game/objects/items/item.dm
	code/game/objects/items/robot_items.dm
	code/game/objects/items/robot_parts.dm
	code/game/objects/items/tk_grab.dm
	code/game/objects/items/weapons/AI_modules.dm
	code/game/objects/items/weapons/RCD.dm
	code/game/objects/items/weapons/RSF.dm
	code/game/objects/items/weapons/cameras.dm
	code/game/objects/items/weapons/cards_ids.dm
	code/game/objects/items/weapons/cigs_lighters.dm
	code/game/objects/items/weapons/clown_items.dm
	code/game/objects/items/weapons/dna_injector.dm
	code/game/objects/items/weapons/explosives.dm
	code/game/objects/items/weapons/flamethrower.dm
	code/game/objects/items/weapons/grenades.dm
	code/game/objects/items/weapons/hand_lablers.dm
	code/game/objects/items/weapons/hydroponics.dm
	code/game/objects/items/weapons/implants/implant.dm
	code/game/objects/items/weapons/implants/implantcase.dm
	code/game/objects/items/weapons/implants/implantchair.dm
	code/game/objects/items/weapons/implants/implanter.dm
	code/game/objects/items/weapons/implants/implantfreedom.dm
	code/game/objects/items/weapons/implants/implantnanoaug.dm
	code/game/objects/items/weapons/implants/implantpad.dm
	code/game/objects/items/weapons/kitchen.dm
	code/game/objects/items/weapons/manuals.dm
	code/game/objects/items/weapons/medical.dm
	code/game/objects/items/weapons/mops_cleaners.dm
	code/game/objects/items/weapons/papers_bins.dm
	code/game/objects/items/weapons/stunbaton.dm
	code/game/objects/items/weapons/surgery_tools.dm
	code/game/objects/items/weapons/swords_axes_etc.dm
	code/game/objects/items/weapons/table_rack_parts.dm
	code/game/objects/items/weapons/tools.dm
	code/game/objects/items/weapons/twohanded.dm
	code/game/objects/items/weapons/wrappingpaper.dm
	code/game/objects/mineral_doors.dm
	code/game/objects/radio/beacon.dm
	code/game/objects/radio/electropack.dm
	code/game/objects/radio/encryptionkey.dm
	code/game/objects/radio/headset.dm
	code/game/objects/radio/intercom.dm
	code/game/objects/radio/radio.dm
	code/game/objects/secstorage/sbriefcase.dm
	code/game/objects/secstorage/ssafe.dm
	code/game/objects/stacks/glass.dm
	code/game/objects/stacks/metal.dm
	code/game/objects/stacks/stack.dm
	code/game/objects/stacks/wood.dm
	code/game/objects/stool.dm
	code/game/objects/storage/backpack.dm
	code/game/objects/storage/belt.dm
	code/game/objects/storage/bible.dm
	code/game/objects/storage/briefcase.dm
	code/game/objects/storage/lockbox.dm
	code/game/objects/storage/storage.dm
	code/game/objects/storage/uplink_kits.dm
	code/game/objects/structures.dm
	code/game/objects/tables_racks.dm
	code/game/objects/tank.dm
	code/game/objects/tanks/emergency.dm
	code/game/objects/tanks/jetpack.dm
	code/game/objects/toys.dm
	code/game/objects/transfer_valve.dm
	code/game/objects/uplinks.dm
	code/game/objects/watercloset.dm
	code/game/objects/weapons.dm
	code/game/objects/windoor_assembly.dm
	code/game/objects/window.dm
	code/game/prisonshuttle.dm
	code/game/smoothwall.dm
	code/game/sound.dm
	code/game/step_triggers.dm
	code/game/structure/structure.dm
	code/game/supplyshuttle.dm
	code/game/throwing.dm
	code/game/topic.dm
	code/game/turf.dm
	code/game/vehicles/airtight/airtight.dm
	code/game/vehicles/airtight/land.dm
	code/game/vehicles/airtight/space.dm
	code/game/vehicles/vehicle.dm
	code/game/verbs/ooc.dm
	code/game/verbs/sound.dm
	code/game/verbs/suicide.dm
	code/game/verbs/who.dm
	code/game/vote.dm
	code/modules/admin/IsBanned.dm
	code/modules/admin/NewBan.dm
	code/modules/admin/admin.dm
	code/modules/admin/admin_investigate.dm
	code/modules/admin/admin_memo.dm
	code/modules/admin/admin_verbs.dm
	code/modules/admin/banjob.dm
	code/modules/admin/create_mob.dm
	code/modules/admin/create_object.dm
	code/modules/admin/create_turf.dm
	code/modules/admin/player_panel.dm
	code/modules/admin/verbs/MC.dm
	code/modules/admin/verbs/adminhelp.dm
	code/modules/admin/verbs/adminjump.dm
	code/modules/admin/verbs/adminpm.dm
	code/modules/admin/verbs/adminsay.dm
	code/modules/admin/verbs/atmosdebug.dm
	code/modules/admin/verbs/cinematic.dm
	code/modules/admin/verbs/deadsay.dm
	code/modules/admin/verbs/debug.dm
	code/modules/admin/verbs/diagnostics.dm
	code/modules/admin/verbs/getlogs.dm
	code/modules/admin/verbs/mapping.dm
	code/modules/admin/verbs/massmodvar.dm
	code/modules/admin/verbs/modifyvariables.dm
	code/modules/admin/verbs/onlyone.dm
	code/modules/admin/verbs/playsound.dm
	code/modules/admin/verbs/possess.dm
	code/modules/admin/verbs/pray.dm
	code/modules/admin/verbs/randomverbs.dm
	code/modules/admin/verbs/striketeam.dm
	code/modules/admin/verbs/striketeam_syndicate.dm
	code/modules/assembly/assembly.dm
	code/modules/assembly/signaler.dm
	code/modules/chemical/Chemistry-Machinery.dm
	code/modules/chemical/Chemistry-Tools.dm
	code/modules/client/client defines.dm
	code/modules/client/client procs.dm
	code/modules/clothing/costume.dm
	code/modules/clothing/gimmick.dm
	code/modules/clothing/glasses.dm
	code/modules/clothing/glasses/glasses.dm
	code/modules/clothing/glasses/hud.dm
	code/modules/clothing/gloves.dm
	code/modules/clothing/head/hardhat.dm
	code/modules/clothing/jumpsuit.dm
	code/modules/clothing/mask.dm
	code/modules/clothing/shoes.dm
	code/modules/clothing/spacesuit.dm
	code/modules/clothing/spacesuits/captain.dm
	code/modules/clothing/spacesuits/miscellaneous.dm
	code/modules/clothing/spacesuits/ninja.dm
	code/modules/clothing/spacesuits/rig.dm
	code/modules/clothing/spacesuits/syndi.dm
	code/modules/clothing/spacesuits/void.dm
	code/modules/clothing/suit.dm
	code/modules/clothing/suits/armor.dm
	code/modules/clothing/suits/bio.dm
	code/modules/clothing/suits/bomb.dm
	code/modules/clothing/suits/detective.dm
	code/modules/clothing/suits/fire.dm
	code/modules/clothing/suits/heavy.dm
	code/modules/clothing/suits/hos.dm
	code/modules/clothing/suits/labcoat.dm
	code/modules/clothing/suits/miscellaneous.dm
	code/modules/clothing/suits/wiz_robe.dm
	code/modules/clothing/uniforms/lawyer.dm
	code/modules/critters/critter.dm
	code/modules/critters/critter_AI.dm
	code/modules/critters/critters.dm
	code/modules/critters/hivebots/hivebot.dm
	code/modules/flufftext/Dreaming.dm
	code/modules/flufftext/Hallucination.dm
	code/modules/flufftext/TextFilters.dm
	code/modules/food/food.dm
	code/modules/food/meat.dm
	code/modules/food/recipes_microwave.dm
	code/modules/maps/SwapMaps.dm
	code/modules/maps/dmm_suite.dm
	code/modules/maps/fromdmp.dm
	code/modules/maps/randomZlevel.dm
	code/modules/maps/reader.dm
	code/modules/maps/writer.dm
	code/modules/mining/machine_processing.dm
	code/modules/mining/machine_stacking.dm
	code/modules/mining/machine_unloading.dm
	code/modules/mining/mine_items.dm
	code/modules/mining/mine_turfs.dm
	code/modules/mining/mint.dm
	code/modules/mining/ores_materials_coins.dm
	code/modules/mining/satchel_ore_boxdm.dm
	code/modules/mob/dead/death.dm
	code/modules/mob/dead/observer/observer.dm
	code/modules/mob/death.dm
	code/modules/mob/living/blob/blob.dm
	code/modules/mob/living/carbon/alien/alien.dm
	code/modules/mob/living/carbon/alien/death.dm
	code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm
	code/modules/mob/living/carbon/alien/humanoid/caste/drone.dm
	code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm
	code/modules/mob/living/carbon/alien/humanoid/caste/sentinel.dm
	code/modules/mob/living/carbon/alien/humanoid/death.dm
	code/modules/mob/living/carbon/alien/humanoid/hud.dm
	code/modules/mob/living/carbon/alien/humanoid/humanoid.dm
	code/modules/mob/living/carbon/alien/humanoid/life.dm
	code/modules/mob/living/carbon/alien/humanoid/login.dm
	code/modules/mob/living/carbon/alien/humanoid/queen.dm
	code/modules/mob/living/carbon/alien/larva/death.dm
	code/modules/mob/living/carbon/alien/larva/hud.dm
	code/modules/mob/living/carbon/alien/larva/larva.dm
	code/modules/mob/living/carbon/alien/larva/life.dm
	code/modules/mob/living/carbon/alien/larva/login.dm
	code/modules/mob/living/carbon/alien/larva/powers.dm
	code/modules/mob/living/carbon/alien/special/_main.dm
	code/modules/mob/living/carbon/alien/special/snakeman.dm
	code/modules/mob/living/carbon/brain/MMI.dm
	code/modules/mob/living/carbon/brain/brain.dm
	code/modules/mob/living/carbon/brain/death.dm
	code/modules/mob/living/carbon/brain/hud.dm
	code/modules/mob/living/carbon/brain/life.dm
	code/modules/mob/living/carbon/brain/say.dm
	code/modules/mob/living/carbon/carbon.dm
	code/modules/mob/living/carbon/human/death.dm
	code/modules/mob/living/carbon/human/emote.dm
	code/modules/mob/living/carbon/human/examine.dm
	code/modules/mob/living/carbon/human/hud.dm
	code/modules/mob/living/carbon/human/human.dm
	code/modules/mob/living/carbon/human/human_attackalien.dm
	code/modules/mob/living/carbon/human/human_attackhand.dm
	code/modules/mob/living/carbon/human/human_damage.dm
	code/modules/mob/living/carbon/human/human_defense.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/carbon/human/login.dm
	code/modules/mob/living/carbon/human/say.dm
	code/modules/mob/living/carbon/human/whisper.dm
	code/modules/mob/living/carbon/metroid/death.dm
	code/modules/mob/living/carbon/metroid/examine.dm
	code/modules/mob/living/carbon/metroid/life.dm
	code/modules/mob/living/carbon/metroid/login.dm
	code/modules/mob/living/carbon/metroid/metroid.dm
	code/modules/mob/living/carbon/metroid/powers.dm
	code/modules/mob/living/carbon/monkey/death.dm
	code/modules/mob/living/carbon/monkey/examine.dm
	code/modules/mob/living/carbon/monkey/hud.dm
	code/modules/mob/living/carbon/monkey/life.dm
	code/modules/mob/living/carbon/monkey/login.dm
	code/modules/mob/living/carbon/monkey/monkey.dm
	code/modules/mob/living/carbon/monkey/powers.dm
	code/modules/mob/living/damage_procs.dm
	code/modules/mob/living/living.dm
	code/modules/mob/living/living_defense.dm
	code/modules/mob/living/login.dm
	code/modules/mob/living/say.dm
	code/modules/mob/living/silicon/ai/ai.dm
	code/modules/mob/living/silicon/ai/death.dm
	code/modules/mob/living/silicon/ai/examine.dm
	code/modules/mob/living/silicon/ai/life.dm
	code/modules/mob/living/silicon/ai/login.dm
	code/modules/mob/living/silicon/ai/move.dm
	code/modules/mob/living/silicon/death.dm
	code/modules/mob/living/silicon/decoy/death.dm
	code/modules/mob/living/silicon/pai/death.dm
	code/modules/mob/living/silicon/pai/hud.dm
	code/modules/mob/living/silicon/pai/pai.dm
	code/modules/mob/living/silicon/pai/recruit.dm
	code/modules/mob/living/silicon/pai/software.dm
	code/modules/mob/living/silicon/robot/death.dm
	code/modules/mob/living/silicon/robot/emote.dm
	code/modules/mob/living/silicon/robot/examine.dm
	code/modules/mob/living/silicon/robot/hud.dm
	code/modules/mob/living/silicon/robot/life.dm
	code/modules/mob/living/silicon/robot/login.dm
	code/modules/mob/living/silicon/robot/robot.dm
	code/modules/mob/living/silicon/robot/robot_modules.dm
	code/modules/mob/living/silicon/robot/say.dm
	code/modules/mob/living/silicon/robot/wires.dm
	code/modules/mob/living/silicon/say.dm
	code/modules/mob/living/simple_animal/life.dm
	code/modules/mob/login.dm
	code/modules/mob/logout.dm
	code/modules/mob/mob.dm
	code/modules/mob/mob_cleanup.dm
	code/modules/mob/mob_defines.dm
	code/modules/mob/mob_grab.dm
	code/modules/mob/mob_helpers.dm
	code/modules/mob/mob_movement.dm
	code/modules/mob/mob_transformation_simple.dm
	code/modules/mob/new_player/login.dm
	code/modules/mob/new_player/new_player.dm
	code/modules/mob/new_player/preferences.dm
	code/modules/mob/new_player/preferences_setup.dm
	code/modules/mob/new_player/savefile.dm
	code/modules/mob/new_player/sprite_accessories.dm
	code/modules/mob/organ/organ.dm
	code/modules/mob/organ/organ_external.dm
	code/modules/mob/organ/pain.dm
	code/modules/mob/say.dm
	code/modules/mob/screen.dm
	code/modules/mob/simple_animal/crab.dm
	code/modules/mob/transform_procs.dm
	code/modules/paperwork/clipboard.dm
	code/modules/paperwork/filingcabinet.dm
	code/modules/paperwork/folders.dm
	code/modules/paperwork/handlabeler.dm
	code/modules/paperwork/paper.dm
	code/modules/paperwork/paperbin.dm
	code/modules/paperwork/pen.dm
	code/modules/paperwork/photocopier.dm
	code/modules/paperwork/stamps.dm
	code/modules/power/antimatter/computer.dm
	code/modules/power/antimatter/engine.dm
	code/modules/power/antimatter/fuel.dm
	code/modules/power/apc.dm
	code/modules/power/cable.dm
	code/modules/power/cable_heavyduty.dm
	code/modules/power/cell.dm
	code/modules/power/generator.dm
	code/modules/power/generator_type2.dm
	code/modules/power/gravitygenerator.dm
	code/modules/power/lighting.dm
	code/modules/power/port_gen.dm
	code/modules/power/sd_DynamicAreaLighting.dm
	code/modules/power/singularity/collector.dm
	code/modules/power/singularity/containment_field.dm
	code/modules/power/singularity/emitter.dm
	code/modules/power/singularity/field_generator.dm
	code/modules/power/singularity/generator.dm
	code/modules/power/singularity/investigate.dm
	code/modules/power/singularity/particle_accelerator/particle.dm
	code/modules/power/singularity/particle_accelerator/particle_accelerator.dm
	code/modules/power/singularity/particle_accelerator/particle_chamber.dm
	code/modules/power/singularity/particle_accelerator/particle_control.dm
	code/modules/power/singularity/particle_accelerator/particle_emitter.dm
	code/modules/power/singularity/particle_accelerator/particle_power.dm
	code/modules/power/singularity/singularity.dm
	code/modules/power/smes.dm
	code/modules/power/solar.dm
	code/modules/power/switch.dm
	code/modules/power/turbine.dm
	code/modules/projectiles/ammunition.dm
	code/modules/projectiles/gun.dm
	code/modules/projectiles/guns/energy.dm
	code/modules/projectiles/guns/energy/laser.dm
	code/modules/projectiles/guns/energy/nuclear.dm
	code/modules/projectiles/guns/energy/pulse.dm
	code/modules/projectiles/guns/energy/special.dm
	code/modules/projectiles/guns/energy/stun.dm
	code/modules/projectiles/guns/projectile.dm
	code/modules/projectiles/guns/projectile/pistol.dm
	code/modules/projectiles/guns/projectile/revolver.dm
	code/modules/projectiles/guns/projectile/shotgun.dm
	code/modules/projectiles/projectile.dm
	code/modules/projectiles/projectile/beams.dm
	code/modules/projectiles/projectile/bullets.dm
	code/modules/projectiles/projectile/change.dm
	code/modules/projectiles/projectile/special.dm
	code/modules/reagents/Chemistry-Holder.dm
	code/modules/reagents/Chemistry-Reagents.dm
	code/modules/reagents/Chemistry-Recipes.dm
	code/modules/recycling/conveyor2.dm
	code/modules/recycling/disposal-construction.dm
	code/modules/recycling/disposal.dm
	code/modules/recycling/sortingmachinery.dm
	code/modules/research/designs.dm
	code/modules/research/destructive_analyzer.dm
	code/modules/research/message_server.dm
	code/modules/research/protolathe.dm
	code/modules/research/rdconsole.dm
	code/modules/research/rdmachines.dm
	code/modules/research/research.dm
	code/modules/research/server.dm
	code/modules/scripting/AST/Operators/Binary Operators.dm
	code/modules/scripting/Implementations/Telecomms.dm
	code/modules/scripting/Parser/Keywords.dm
	code/modules/scripting/Scanner/Tokens.dm
	code/modules/scripting/stack.dm
	code/modules/security levels/keycard authentication.dm
	code/modules/security levels/security levels.dm
	code/setup.dm
	code/stylesheet.dm
	code/unused/AI_Visibility.dm
	code/unused/Ultralight.dm
	code/unused/airtunnel.dm
	code/unused/beast/bodypart.dm
	code/unused/conveyor.dm
	code/unused/disease2/analyser.dm
	code/unused/disease2/base.dm
	code/unused/disease2/biohazard destroyer.dm
	code/unused/disease2/cureimplanter.dm
	code/unused/disease2/curer.dm
	code/unused/disease2/diseasesplicer.dm
	code/unused/disease2/dishincubator.dm
	code/unused/disease2/isolator.dm
	code/unused/disease2/monkeydispensor.dm
	code/unused/dna.dm
	code/unused/gamemodes/deathmatch.dm
	code/unused/jobs.dm
	code/unused/mining/datum_processing_recipe.dm
	code/unused/mining/spaceship_builder_unused.dm
	code/unused/new_year.dm
	code/unused/spacecraft/manufacturing.dm
	code/unused/spacecraft/shipcore.dm
	config/README feedback.txt
	config/admins.txt
	config/config.txt
	config/rules.html
	data/mode.txt
	html/add-to-changelog.html
	html/archivedchangelog.html
	html/changelog.css
	html/changelog.html
	html/changelog.js
	icons/effects/blood.dmi
	icons/effects/genetics.dmi
	icons/misc/fullscreen.dmi
	icons/mob/AI.dmi
	icons/mob/alien.dmi
	icons/mob/animal.dmi
	icons/mob/back.dmi
	icons/mob/belt.dmi
	icons/mob/blob.dmi
	icons/mob/critter.dmi
	icons/mob/dam_human.dmi
	icons/mob/eyes.dmi
	icons/mob/feet.dmi
	icons/mob/hands.dmi
	icons/mob/head.dmi
	icons/mob/human.dmi
	icons/mob/human_face.dmi
	icons/mob/items_lefthand.dmi
	icons/mob/items_righthand.dmi
	icons/mob/livestock.dmi
	icons/mob/mask.dmi
	icons/mob/mecha.dmi
	icons/mob/mob.dmi
	icons/mob/monkey.dmi
	icons/mob/robots.dmi
	icons/mob/screen1.dmi
	icons/mob/screen1_Midnight.dmi
	icons/mob/screen1_Orange.dmi
	icons/mob/screen1_alien.dmi
	icons/mob/screen1_old.dmi
	icons/mob/suit.dmi
	icons/mob/uniform.dmi
	icons/mob/zone_sel.dmi
	icons/obj/Cryogenic2.dmi
	icons/obj/aibots.dmi
	icons/obj/ammo.dmi
	icons/obj/atmos.dmi
	icons/obj/bureaucracy.dmi
	icons/obj/card.dmi
	icons/obj/cigarettes.dmi
	icons/obj/closet.dmi
	icons/obj/clothing/glasses.dmi
	icons/obj/clothing/gloves.dmi
	icons/obj/clothing/hats.dmi
	icons/obj/clothing/masks.dmi
	icons/obj/clothing/shoes.dmi
	icons/obj/clothing/suits.dmi
	icons/obj/clothing/uniforms.dmi
	icons/obj/computer.dmi
	icons/obj/contraband.dmi
	icons/obj/decals.dmi
	icons/obj/device.dmi
	icons/obj/doors/DoorHazard.dmi
	icons/obj/doors/door_assembly.dmi
	icons/obj/drinks.dmi
	icons/obj/engine.dmi
	icons/obj/food.dmi
	icons/obj/grenade.dmi
	icons/obj/gun.dmi
	icons/obj/harvest.dmi
	icons/obj/hydroponics.dmi
	icons/obj/items.dmi
	icons/obj/janitor.dmi
	icons/obj/library.dmi
	icons/obj/lighting.dmi
	icons/obj/machines/field_generator.dmi
	icons/obj/machines/gateway.dmi
	icons/obj/machines/mining_machines.dmi
	icons/obj/machines/particle_accelerator.dmi
	icons/obj/meter.dmi
	icons/obj/mining.dmi
	icons/obj/objects.dmi
	icons/obj/paper.dmi
	icons/obj/pda.dmi
	icons/obj/pipes/disposal.dmi
	icons/obj/plants.dmi
	icons/obj/power.dmi
	icons/obj/projectiles.dmi
	icons/obj/robotics.dmi
	icons/obj/seeds.dmi
	icons/obj/singularity.dmi
	icons/obj/stationobjs.dmi
	icons/obj/stock_parts.dmi
	icons/obj/storage.dmi
	icons/obj/structures.dmi
	icons/obj/surgery.dmi
	icons/obj/syringe.dmi
	icons/obj/tank.dmi
	icons/obj/terminals.dmi
	icons/obj/toy.dmi
	icons/obj/vending.dmi
	icons/obj/watercloset.dmi
	icons/obj/weapons.dmi
	icons/obj/wizard.dmi
	icons/turf/areas.dmi
	icons/turf/floors.dmi
	icons/turf/walls.dmi
	interface/interface.dm
	interface/skin.dmf
	maps/Antiqua.dmm
	maps/RandomZLevels/assistantChamber.dmm
	maps/RandomZLevels/fileList.txt
	maps/tgstation.2.0.9.dmm
	sound/AI/animes.ogg
	sound/AI/newroundsexy.ogg
	sound/AI/newroundsexy2.ogg
	sound/effects/adminhelp.ogg
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM.sln
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.Designer.cs
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.cs
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Form1.resx
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Program.cs
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/AssemblyInfo.cs
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.Designer.cs
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Resources.resx
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.Designer.cs
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/Properties/Settings.settings
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/UnstandardnessTestForDM.csproj
tools/UnstandardnessTestForDM/UnstandardnessTestForDM/bin/Debug/UnstandardnessTestForDM.vshost.exe.manifest
	tools/UnstandardnessTestForDM/UnstandardnessTestForDM/obj/x86/Debug/UnstandardnessTestForDM.csproj.FileListAbsolute.txt
	tools/expand_filedir_paths.py
	tools/readme.txt

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-08-22 04:00:11 +10:00
Erthilo
88e41b1db1 Fixes mice not being able to ghost when using Re-enter corpse. 2012-08-18 18:31:18 +01: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
elly1989@rocketmail.com
df75514318 Preparations for minds - Part3.
Replaced mob/var/original_name with datum/mind/var/name.

Halved the speak-chances of every simple-animal because that constant squeaking was insufferable.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4346 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-09 12:40:17 +00:00
elly1989@rocketmail.com
6b56ef27ac Fix for admin-ghosting. Admins couldn't re-enter body after using set-observe.
Cause: I forgot to set the ghost's can_reenter_corpse to 1 after I changed something.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4344 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-09 01:36:19 +00:00
elly1989@rocketmail.com
81bff7c5f5 Important!
Minds part2 - Carn loses her mind.

The way datum/mind stuff works has been changed a lot. I really can't explain everything. If you have any questions it'd just be easier if you leave a comment or ask me in coderbus.
Generally, minds now represent IC characters rather than following a client around constantly. Minds can change owners, mobs, (names WIP).

Technical babble:
The var/current and var/original variables of the mind datum must always be of type mob/living (or null). Please do not mind.transfer_to(ghost_mob). If you want to ghost somebody use ghostize()! It will do all the technical stuff for you.

mob/dead/observer/var/corpse was removed. mob/dead/observer/var/mind is now used as a reference to the last mind the player had (so respawning code has something to reference), but also because mind.current is a far more useful way of tracking a corpse. If somebody triggers a mind.transfer_to() call on your corpse, your mind will be tranfered to another mob/living or something...that will then be considered your corpse. This could allow for more interesting mind_transfers. For instance, the "raise corpse" rune ghostizes any player in the corpse to be raised and selectes a random dead player to take possesion of their character! The person possesing them will have all of their memories, objectives, etc. The poor guy who was originally the owner cannot re-enter body if there is another player in his body...but if that player is ghosted he can once again return. Exorcisms anybody?

Changes to cloning and hydroponics. I will likely have to rework these later as they're hacky as hell right now.

A lot of stuff is now handled by Login/Logout rather than in hundreds of different places. One such example, mind datums get their variables updated at Login and Logout.

Fixed a few minor bugs. I'll update the issues manually in a bit because I literally cannot think atm.

TL;DR guide:
-If you want to make somebody a ghost use ghostize(). Or you will need to find a doctor to stitch your bits back on. :)
-You don't have to worry about making minds. Simply doing key="carnwennan" or whatever will either: A) make a new mind and initialise it if there isn't one or B) take possession of the mind currently attached to the mob.
-It's safe to transfer a mind even if a key isn't in-body (e.g. they are ghosted/admin-observing etc!) Minds have an active variable which tracks whether they are currently synced with a key. This is to avoid dragging ghosts back into their bodies when say, a wizard mind_transfers them.
-Transferring a mind whilst var/active=1 will cause the following: mob.key = mind.key. So no need to do that separately (in fact you'll lag things if you do, so don't)
-If you do want to initialize a mind manually, say if you don't have a client to login to the mob yet, simply do new_mob.mind_initialize(). Simple! When someody is logged into that mob they will take ownership of the mind and it will sync up.

NOTE: a lot is probably broken since this is a pretty massive change. Please let me know asap (with actual info! Shouting at me, "IT BORKED HALP", doesn't help)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4342 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-08 20:51:55 +00:00
Cael_Aislinn
06f223ec6a ghosts properly retain their human names
Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-08-09 03:29:20 +10:00
elly1989@rocketmail.com
fb600f9bce Ok, part 1 of this huge mind datum fix. I need to run over the next part again because I've made a lot inconsistencies in it. This is sort of all the misc stuff that got tidied up whilst I was trying to get my head around how everything related to eachother.
This part focuses on:
-structuring the way silicon mobs initialise upon login (there was some hideous copypasta in Login() and New() which used spawn() to change the order of the calls so it was all jumbled up. I think I've got it sorted now.
-Borgs var/real_name was not initialising as "Cyborg". Meaning the name checks were kind of borked.
-Ghosts are now deleted at logout if they no longer have a key. This will stop unneeded ghosts being left lying around. It will not delete ghosts with keys assigned (so people can't respawn or anything). Removed all the del(ghost_ref) stuff I could find. Generally movign the key from a ghost should be the last thing you do as the ghost will be deleted by Logout. However I've put it in a spawn() to hopefully avoid coders accisentally using it in a way which causes runtimes.
-Fixed clone-plants spawning dud potato-people left, right and centre. They'll now dump seeds if it fails for whatever reason.
-Cultist and Rev status are removed at mob/living/silicon/Login() rather than having to be called on a special-case basis everywhere. This may not be necessary when this stuff is finished.
-Removed a bunch of :
-Commented mob/living/Login() with the rest of the antag-indicator code from cloning.dm and hydroponics.dm for any coders whom feel brave/suicidal to fix the related issues

Next on the agenda, replacing mob/var/original_name with datum/mind/var/name to fix the ticker runtimes
Then, fixing mind/proc/transfer_to(mob) once and for all. (There are issues with duplicate minds, role updates, inconsistent initialisation etc etc *yawn*

There's probably a few obscure bugs in there somewhere. Might want to hold off on the updates for a bit. Coderbus will likely spot them all by the end of the week.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4322 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-05 15:29:15 +00:00
Cael_Aislinn
52fdda910a mice can crawl through vents and hide under objects
Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-08-05 21:03:16 +10:00
Cael_Aislinn
bece31d819 fix for mouseception naming bug
Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-08-05 20:00:43 +10:00
Cael_Aislinn
93f864083c doubled zas debug sensitivity, some tweaks to mouse/ghost spawning
Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-08-04 19:23:40 +10:00
Cael_Aislinn
46a450069e - simple_animals can't open doors by default
- alien larvae, mice can hide under mobs
- roaches, mice can hide under various objects
- various tweaks, including flavour and existing mechanics
- fix for ghosts not being able to spawn as mice
- added move delay of half a second to simple_animals (about the same as human walkspeed?)
- simple_animals, when talking, can only understand each other (and mobs with universal_speak)

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-08-04 15:47:56 +10:00
Cael_Aislinn
4a460f24f3 compile fixes
Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-08-04 04:07:54 +10:00
Cael_Aislinn
08f47799e1 ghosts/observers can possess mice at will 2012-08-04 03:57:16 +10:00
elly1989@rocketmail.com
94fd22b762 Resolves issue 725
There were no checks in re-enter corpse for anyone currently controlling the corpse. Meaning any attached client was left mobless and hence garbage collected (DCed).

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4276 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-01 23:02:22 +00:00
baloh.matevz
1873aa6607 - Categorized invisibility stuff into #defines. If any errors appear - let me know.
- Hopefully addressed the concerns about the ultra-darkness. Night vision, mesons, thermals and material scanners now make you see through darkness. (Lighting code does not affect you)
- Ghosts get a "toggle darkness" verb, which changes their see_invisibility. When the toggle is enabled, ghosts cannot see other ghosts. This is due to invisibility.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4235 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-30 16:24:45 +00:00
elly1989@rocketmail.com
31f33dcedb Typo-fix
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4224 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-29 22:58:48 +00:00
elly1989@rocketmail.com
4fcbd6e169 Removes some seriously confused code regarding transferral of minds to ghosts upon death/gibbing.
The main problem is: if a mind is transferred to a ghost, objectives that have that mind as a target will treat the ghost as the target mob. Which is clearly a problem. This should fix exploits where people could force people to win/lose objectives via ghosting, gibbing, etc.

It should also eliminate any other weird bugs like the one Nodrak fixed a while ago where pais would keep their mind....meaning they were like, a cultist pai or something and could rat antags out to its owner using the HUD.

Removed some conditions from objectives (like those pertaining to the thunderdome) as they were bait for meta. >ghost >teleport to thunderdome >antag fails the objective she completed

Resolves issue 662

Fixes a few instances of original_name becomming null (there's still loads)


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4214 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-29 09:21:57 +00:00
sieve32@gmail.com
7bf6788082 -OPTIMIZATION TIME
-Almost every instance of 'for(mob in world)' has been killed. Because GODDAMN was it being run a bunch. Instead, a series of global lists have been made, and they are all handled auto-magically through New()'s, Del()'s, Login()'s, death()'s, etc...

Lists are as follows:
-mob_list : Contains all atom/mobs by ref
-player_list : Like mob_list, but only contains mobs with clients attached
-admin_list : Like player_list, but holds all mobs with clients attached and admin status
-living_mob_list : Contains all mobs that ARE alive, regardless of client status
-dead_mob_list : Contains all mobs that are dead, which comes down to corpses and ghosts
-cable_list : A list containing every obj/structure/cable in existence
Note: There is an object (/obj/item/debuglist) that you can use to check the contents of each of the lists except for cables (Since getting a message saying "a cable," x9001 isn't very helpful)

These lists have been tested as much as I could on my own, and have been mostly implemented. There are still places where they could be used, but for now it's important that the core is working. If this all checks out I would really like to implement it into the MC as well, simply so it doesn't check call Life() on every mob by checking for all the ones in world every damn tick.

Just testing locally I was able to notice improvements with certain aspects, like admin verbs being MUCH more responsive (They checked for every mob in the world every time they were clicked), many sources of needless lag were cut out (Like Adminwho and Who checking every single mob when clicked), and due to the cable_list powernet rebuilding is MUCH more efficient, because instead of checking for every cable in the world every time a powernet was broken (read: A cable was deleted), it runs though the pre-made list, and even with a singulo tearing all the way across the station, the powernet load was VERY small compared to pretty much everything else.

If you want to know how any of this works, check global_lists.dm, there I have it rigorously commented, and it should provide an understanding of what's going on.

Mob related in worlds before this commit: 1262
After: 4
I'm helping


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4179 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-26 03:04:05 +00:00
giacomand@gmail.com
56d787aa6b Mostly small tweaks.
-Optimized the Grey Tide event.
-Added a world clock for observers.
-Late joiners can now see the number of jobs being taken up before choosing their job.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4149 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-23 02:08:11 +00:00
giacomand@gmail.com
2399e8d561 -PDA notes and uplink notes are working again.
-Added light flickering
-Ghosts can now make lights flicker a little bit with a minute cooldown. (People voted for it http://www.kamletos.si/tgdb/ingamepolls.php)
-PDAs are sorted correctly on the Message Monitor
-Added some light flickering to the following events: High levels of radiation, Grey Tide virus.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4143 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-22 20:56:47 +00:00
elly1989@rocketmail.com
b222e9cdee Fixes the client.eye problems when a mob is in a atom/moveable which gets deleted.
Robots trapped inside an atom/moveable which gets deleted now ghost properly rather than having their brain dumped into loc=null.

client.images, client.screen and client.eye are always updated upon login()

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4088 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-16 12:15:07 +00:00
elly1989@rocketmail.com
65ff691098 Fixed evidence bags so the items inside are now visible even when the bag is inhand (the problem was that overlays += obj uses the object's layer variable rather than the default FLOAT_LAYER. So the hud was appearing over the overlays. Fixed it by using image(obj) to take a snapshot). Changed the overlays to underlays to make them look better. Fixed issue 637 where putting objects in bags which were currently in your inventory did not remove the item from your inventory.
Replaced the obj variable var/see_face. It was used to determine whether something (namely masks/hats) hid your identity. Replaced with the HIDEFACE bitflag for var/flags_inv variable. Moved the var/flags_inv variable from atom/ to obj/item/ as only /obj/item/ can be in your inventory in the first place.

Fixed get_visible_name() so it takes into account any item on the var/head when deciding if your face is obscured. (While I'm at it, just dump a comment here if there's anything that should hide your face which doesn't and I'll add the flag.)

Removed the var/alien_egg_flag variable from mob/living/carbon/ and replaced it with the XENO_HOST bitflag for var/status_flags variable. You can now suicide whilst impregnated with a xeno (since you will chestburst even after death, that restriction is no longer necessary).

Any mob/living descendent can ghost even when not dead. However, ghosting whilst not dead results in the ghost eing unable to return to it's body for the remainder of the round. (It has a warning popup)

The suicide verb can only be used by humans when they can move and are not cuffed. These verbs will be totally replaced very soon with the 'fun' IC suicides I'm working on. Suicide is largely redundant given that anybody can ghost now, just didn't want to jump the gun in removing it.

Known Issues:
We've got var/flags_inv, var/slot_flags which could possibly be merged as they both deal with obj/items, although I'm not sure if we can fit oth into the 16-bit limit. Just something to look into.
There are bitflags GLASSESCOVERSEYES, MASKCOVERSEYES, HEADCOVERSEYES, MASKCOVERSMOUTH, HEADCOVERSMOUTH in the var/flags variable which should really be merged with or moved alongside the very similar flags in var/flags_inv. Comments next to the defines suggest as much.
You can borg dead/clientless brains but can't remove the brain fromt he borg once you realise it's a dud. >.<

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4072 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-14 21:43:54 +00:00
johnsonmt88@gmail.com
ba18f631c0 Emergency Field Generators are now live!
- Now have an emp_act
- Can now be (un)locked by engineering IDs

Reverted ghosts getting mob attack logs and moving the ghost verb to clients
- This should fix the ghosting issues, but it's possible I've missed something. If there's any problems ping me(Nodrak) in #coderbus on IRC and I'll fix it.
- Attack logs moving to ghosts would be an amazing feature, it's not that admins can't get that information already but it makes it much easier. If it can be implemented without all of these bugs, it'd defiantly be an asset
- Fixes Issue 647

Removed logging from the cremator as it was causing runtimes and the cremator to lock up. Fixes Issue 649

Fixed an issue with unjobbanning players.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4044 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-11 19:55:20 +00:00
johnsonmt88@gmail.com
8231234a64 Pile of bugfixes
Nodrak:
- Bags of Holding can no longer be brought to the clown planet
- Made a quick new sprite for broken telescreens
- Removed the clusterbang from the HoS safe. It is currently bugged and not in presentable condition, however, someone is working on it. 
- Added a machine check to shift+click. Partial fixes issue 534 (see Zek's stuff for more.) I'm not really sure of a better way to fix this that wouldn't involve a whole pile of coding...
- Cigarettes now evenly distribute chemicals injected into a pack of cigarettes. Partial fix for issue 548 (see Zek's stuff for more.)

Commit for Zekkeit/39kk9t
- The gibber now provides attack logs of who the mob gibbed, or who the mob was gibbed by. How can you tell who a mob was gibbed by when the mob gets destroyed? Well read the next enhancement!
- Attack logs now transfer to the ghost of the mob who dies
- You can no longer survive cold by cooling yourself down before jumping into space. Fixes issue 206.
- Ghost() is now a client proc, not a mob proc. Fixes issue 442
- Fix for issue 493.
- Added a range check to shift+click. Fixes issue 534.
- Cigarette packs are now limited to (15*number of cigarettes) units of reagents. Fixes Issue 548.
- Added organ inaccuracy to guns. This means, for example, that you wont hit the mob's chest with 100% accuracy. You may end up hitting the mob's arm, or head instead. Accuracy is directly related to distance.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4022 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-10 06:10:22 +00:00
petethegoat@gmail.com
84b9929282 Comitting for Giacom!
In short:
AI messaging
Time of death for health scanners
Most lists are sorted alphabetically

See http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=9220 for detailed information.

I wasn't able to test this as thoroughly as I'd like, but what I could test seems fine.
I don't forsee any issues popping up with this stuff.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3993 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-05 22:47:30 +00:00
johnsonmt88@gmail.com
188b487542 AI's are no longer permanently blinded by power loss. Fixes issue 603
- Thanks to Zekkeit/39kk9t for this fix!

Cultists now get stunned by their own stun rune again.
- Apparently this would have been game-breakingly spammable

Added WJohnston's mech toys as arcade prizes!

Made mech tool code less of a nightmare to navigate:
- Moved mech medical tools into their own .dm file
- Moved unused mech tools into their own .dm file

Fixed a major pAI exploit.

Fixed the odysseus picking up people who were buckled, causing the person to be unable to move.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3982 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-04 19:52:45 +00:00
baloh.matevz@gmail.com
9a94312431 - Added spam-prevention code. If someone sends the same message 5 times in a row, they will get the message "You are nearing the spam filter limit for identical messages." If they continue to send the same message (if they send it 10 times in total) they will get an auto-mute for the channel they are sending it through. The number of identical messages which triggers a warning and automute can be configured in setup.dm
- Added channel-specific admin muting. Admins can now mute someone from IC (say, me and whisper), OOC, PRAY, ADMINHELP (adminhelp, admin pm and asay) and DEADCHAT (say while dead and dsay)
- Added a (?) to adminhelps and prayers which displays the same quick overview that all the other (?)-s show, but for the person adminhelping or praying.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3888 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-22 05:54:43 +00:00
caelaislinn
bcf1b8a0b9 ghosts can understand tajaran
Signed-off-by: caelaislinn <cael_aislinn@yahoo.com.au>
2012-06-11 15:41:13 +10:00
Erthilo
54ec9bdd84 Merge branch 'master' of github.com:Baystation12/Baystation12 into TGUpdates
Conflicts:
	maps/tgstation.2.0.8.dmm
2012-06-08 20:19:27 +01:00
SkyMarshal
f17525173c Plasma and welder fuel no longer create stupid amounts of plasma in the air. 2012-06-08 04:09:49 -07:00
Erthilo
2e8f1932a8 TG: - Deleted ERP.dmi
- Moved some objects into /effect
- Removed the debugger object
Revision: r3739
Author: 	 baloh.matevz
2012-06-07 02:41:38 +01:00
baloh.matevz
2233548788 - Deleted ERP.dmi
- Moved some objects into /effect
- Removed the debugger object

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3739 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-04 21:49:28 +00:00
Erthilo
eeec0be2b2 Runtime prevention for timeofdeath thingy. 2012-05-10 21:45:45 +01:00
Erthilo
e81de2fe86 Fixes respawn not counting deathtime correctly for ghosts. 2012-05-10 15:53:08 +01:00
Erthilo
d21cbab61c TG: Fixed dust() and gib() leaving invisible overlays everywhere
Fixed deaths at the end of nuke rounds, optimised the code a little

gib() is now hgib() (ie it's specific to humans). gibs.dm() now only spawns
generic gibs that could be from any mob.
Likewise for dust.
Awaiting generic dust() and gib() animations.

Fixed (hopefully, depends if firewalls block this method) getruntimelog.
GameMasters no longer have the getruntimelog verb. Instead they have
.giverutimelog . This allows them to grant a specific client access to the
server's runtime logs. (they can grant themself access this way too). NOTE:
runtime logs can be used to meta, only grant access to coders or people you
trust. It may also be wise to ensure they do not play in the current round.

Introducing .getserverlog . It allows any admin above moderator to access ANY
archived server/attack logs. Should mkae processing forum ban requests a lot
easier since all admins with ban capabilities now have access.

getruntimelog renamed to .getruntimelog . File-request spam prevention increased
to 60seconds to discourage access serverlogs too much! They can reach sizes of
4Mb sometimes so please be responsible with them admins.

runtime logs should now be saved to /data/logs/runtime/ (you may have to create
this folder yourself)

ummm... fixed gibs appearing below shuttle turfs. Trimmed some uneeded fluff
text from the logs.
Revision: r3509
Author: 	 elly1...@rocketmail.com
2012-05-06 18:50:52 +01:00
Erthilo
bec822a049 TG: Rewrote the cinematic system to be centralised and controlled by the gameticker,
rather than handled per mob with like, 3 loops and a seperate process for each
mob.dmPlease report any bugs/derps to me asap. I've tested it as much as I can
locally, but because it relates to events that require a large number of players
it's very hard to test.

TODO: I was intending to use dust to kill players off on a nuclear-loss. However
dust() is very very broken. So I've hardcoded everything to die until I can fix
dust().

Added an adminverb for 'Game Master's. It was a debug verb so I could test
cinematics but I've left it in as it might be handy for events, especially if we
get more cinematics. To access it type "cinematic" in full into the input bar as
a Game Master, then follow the prompts. At the moment, it only handles nuclear
stuff (that's all there is anyway). You can choose where the nuke detonated 0=
on station; 1= near station but in space; 2= off the z-level. You can also force
a cinematic from another game-mode to play with the prompt after that one.

Note: All mobs are buckled to a bed located inside the gameticker (odd I know)
whilst a cinematic is playing. The bed is deleted afterwards releasing all
players. If off_station=0 then all mobs will be killed too. This is to stop
people running around and doing stuff during the cinematic. I really didn't want
to add more variables/checks to mobs.
Revision: r3481
Author: 	 elly1...@rocketmail.com
2012-05-05 22:28:05 +01:00
Ren Erthilo
5789cdb463 TG: Prototype for transit escape shuttle/pods. If there are any bugs, ping doohl on
IRC or make an issue.
Revision: r3350
Author: 	 vageyenaman
2012-04-30 02:18:55 +01:00
elly1989@rocketmail.com
515d422b66 Fixed dust() and gib() leaving invisible overlays everywhere
Fixed deaths at the end of nuke rounds, optimised the code a little

gib() is now hgib() (ie it's specific to humans). gibs.dm() now only spawns generic gibs that could be from any mob.
Likewise for dust.
Awaiting generic dust() and gib() animations.

Fixed (hopefully, depends if firewalls block this method) getruntimelog.
GameMasters no longer have the getruntimelog verb. Instead they have .giverutimelog . This allows them to grant a specific client access to the server's runtime logs. (they can grant themself access this way too). NOTE: runtime logs can be used to meta, only grant access to coders or people you trust. It may also be wise to ensure they do not play in the current round.

Introducing .getserverlog . It allows any admin above moderator to access ANY archived server/attack logs. Should mkae processing forum ban requests a lot easier since all admins with ban capabilities now have access.

getruntimelog renamed to .getruntimelog . File-request spam prevention increased to 60seconds to discourage access serverlogs too much! They can reach sizes of 4Mb sometimes so please be responsible with them admins.

runtime logs should now be saved to /data/logs/runtime/ (you may have to create this folder yourself)

ummm... fixed gibs appearing below shuttle turfs. Trimmed some uneeded fluff text from the logs.

PHEW


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3509 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-26 00:50:18 +00:00
Ren Erthilo
fc6e9e6114 TG: Buckling to chairs no longer causes you to drop anything.
Added Nodrak's Jump to Mob verb.
Added Sieve's lantern fix. Commented out the silicate recipe.
Added Skaer's sec cartridge box to the armoury.

Moved the check_if_buckled() proc to mob/living, rather than having it repeated.
Revision: r3168
Author: 	 petethegoat
2012-04-24 18:58:33 +01:00
Ren Erthilo
9fb4c46ca6 TG: - Ghosts with null names are now assigned random names
Revision: r3167
Author: 	 quartz235
2012-04-24 18:44:55 +01:00
Ren Erthilo
2d7c9354d7 TG: - All PM links are now tied to clients and not mobs. What this means is that all
PM links (the links admins get in admin messages which lead to a PM) should now
point directly to the client, if one still exists or report them as
disconnected. This means that there should no longer be problems with clients
which swap mobs.
- Made the player-side admin pm message more visible and obnoxious. Some players
might find it annoying but at least it will not leave much room to complain
about "missing PM-s"
Screenshot:
http://www.kamletos.si/admin%20message%20format.PNG
- Fixed that awkward X in asay messages, which moved whatever mob you were in to
the location of the person who said the message. Replaced it with JMP, which
does the same as the JMP in adminhelps - makes a ghost and moves that ghost to
the location:
Screenshot:
http://www.kamletos.si/admin%20say.PNG
- Ghosts which find themselves locked in any form of container (closets most
commonly) will now (FINALLY) exit the container (and it is any container!) after
they click one of the arrow keys.
 Revision: r3121
Author: 	 baloh.matevz
2012-04-22 23:05:25 +01:00
elly1989@rocketmail.com
575654babb Rewrote the cinematic system to be centralised and controlled by the gameticker, rather than handled per mob with like, 3 loops and a seperate process for each mob.dmPlease report any bugs/derps to me asap. I've tested it as much as I can locally, but because it relates to events that require a large number of players it's very hard to test.
TODO: I was intending to use dust to kill players off on a nuclear-loss. However dust() is very very broken. So I've hardcoded everything to die until I can fix dust().

Added an adminverb for 'Game Master's. It was a debug verb so I could test cinematics but I've left it in as it might be handy for events, especially if we get more cinematics. To access it type "cinematic" in full into the input bar as a Game Master, then follow the prompts. At the moment, it only handles nuclear stuff (that's all there is anyway). You can choose where the nuke detonated 0= on station; 1= near station but in space; 2= off the z-level. You can also force a cinematic from another game-mode to play with the prompt after that one.

Note: All mobs are buckled to a bed located inside the gameticker (odd I know) whilst a cinematic is playing. The bed is deleted afterwards releasing all players. If off_station=0 then all mobs will be killed too. This is to stop people running around and doing stuff during the cinematic. I really didn't want to add more variables/checks to mobs.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3481 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-19 20:33:19 +00:00
SkyMarshal
5b3ad2a925 Made transformations between mobs with organs work better. Destroying a limb removes implants. Implants now go where you select. Fixed some runtimes and retardedness. 2012-04-05 21:55:41 -07:00
Ren Erthilo
c578b76935 Merge cleanup. 2012-03-28 01:12:34 +01:00
vageyenaman@gmail.com
84cbbbcced Prototype for transit escape shuttle/pods. If there are any bugs, ping doohl on IRC or make an issue.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3350 316c924e-a436-60f5-8080-3fe189b3f50e
2012-03-24 01:15:47 +00:00