From 03e677a8074e7f1d89b6f7614265029e20f4ec10 Mon Sep 17 00:00:00 2001 From: "rastaf.zero@gmail.com" Date: Wed, 6 Apr 2011 17:01:58 +0000 Subject: [PATCH] Monkey mode now wont list name->key after the end of round. Monkeys during monkey mode can use detective's revolver wearing hat and suit (without uniform). Fixed some runtime errors. Added ability for admins to disallow connecting for guests. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1395 316c924e-a436-60f5-8080-3fe189b3f50e --- code/defines/global.dm | 1 + code/game/machinery/bots/ed209bot.dm | 7 ++++--- code/game/machinery/bots/medbot.dm | 8 ++++---- code/game/machinery/bots/secbot.dm | 7 ++++--- code/game/objects/items/weapons/guns_ammo.dm | 2 +- code/modules/admin/admin.dm | 13 +++++++++++++ code/modules/admin/admin_verbs.dm | 15 +++++++++++++++ code/modules/mob/mob.dm | 5 +++++ code/unused/gamemodes/monkey.dm | 6 +++--- 9 files changed, 50 insertions(+), 14 deletions(-) diff --git a/code/defines/global.dm b/code/defines/global.dm index ba57071920c..635dea405ce 100644 --- a/code/defines/global.dm +++ b/code/defines/global.dm @@ -69,6 +69,7 @@ var dna_ident = 1 abandon_allowed = 1 enter_allowed = 1 + guests_allowed = 1 shuttle_frozen = 0 shuttle_left = 0 tinted_weldhelh = 1 //as soon as the thing is sprited, we'll code in the toggle verb, bot for now, it should stay on by default. -errorage //Until you have the actual functionality for it, don't set this on by default. You're putting the cart before the horse. --DH diff --git a/code/game/machinery/bots/ed209bot.dm b/code/game/machinery/bots/ed209bot.dm index 373ddcf665c..87f47f14286 100644 --- a/code/game/machinery/bots/ed209bot.dm +++ b/code/game/machinery/bots/ed209bot.dm @@ -667,10 +667,11 @@ Auto Patrol: []"}, return return -/obj/machinery/bot/ed209/Bumped(M as mob|obj) +/obj/machinery/bot/ed209/Bumped(atom/movable/M as mob|obj) spawn(0) - var/turf/T = get_turf(src) - M:loc = T + if (M) + var/turf/T = get_turf(src) + M:loc = T /obj/machinery/bot/ed209/proc/speak(var/message) for(var/mob/O in hearers(src, null)) diff --git a/code/game/machinery/bots/medbot.dm b/code/game/machinery/bots/medbot.dm index da887bd8378..c9295285a97 100644 --- a/code/game/machinery/bots/medbot.dm +++ b/code/game/machinery/bots/medbot.dm @@ -482,11 +482,11 @@ return return -/obj/machinery/bot/medbot/Bumped(M as mob|obj) +/obj/machinery/bot/medbot/Bumped(atom/movable/M as mob|obj) spawn(0) - var/turf/T = get_turf(src) - M:loc = T - + if (M) + var/turf/T = get_turf(src) + M:loc = T /* * Pathfinding procs, allow the medibot to path through doors it has access to. diff --git a/code/game/machinery/bots/secbot.dm b/code/game/machinery/bots/secbot.dm index fcfdd23a8b4..79d29824b8b 100644 --- a/code/game/machinery/bots/secbot.dm +++ b/code/game/machinery/bots/secbot.dm @@ -648,10 +648,11 @@ Auto Patrol: []"}, return return -/obj/machinery/bot/secbot/Bumped(M as mob|obj) +/obj/machinery/bot/secbot/Bumped(atom/movable/M as mob|obj) spawn(0) - var/turf/T = get_turf(src) - M:loc = T + if (M) + var/turf/T = get_turf(src) + M:loc = T /obj/machinery/bot/secbot/proc/speak(var/message) for(var/mob/O in hearers(src, null)) diff --git a/code/game/objects/items/weapons/guns_ammo.dm b/code/game/objects/items/weapons/guns_ammo.dm index 94b1c7b2762..639f1e8b0e7 100644 --- a/code/game/objects/items/weapons/guns_ammo.dm +++ b/code/game/objects/items/weapons/guns_ammo.dm @@ -443,7 +443,7 @@ obj/item/weapon/gun/revolver/attackby(obj/item/weapon/ammo/a357/A as obj, mob/us /obj/item/weapon/gun/detectiverevolver/afterattack(atom/target as mob|obj|turf|area, mob/user as mob, flag) - var/detective = (istype(user:w_uniform, /obj/item/clothing/under/det) && istype(user:head, /obj/item/clothing/head/det_hat) && istype(user:wear_suit, /obj/item/clothing/suit/det_suit)) + var/detective = ((istype(user:w_uniform, /obj/item/clothing/under/det) || !istype(user, /mob/living/carbon/human)) && istype(user:head, /obj/item/clothing/head/det_hat) && istype(user:wear_suit, /obj/item/clothing/suit/det_suit)) if (flag) return diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index e2b8cf07582..e7d1bf2d60c 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -2241,6 +2241,19 @@ var/showadminmessages = 1 world << "The tinted_weldhelh has been disabled!" log_admin("[key_name(usr)] toggled tinted_weldhelh.") message_admins("[key_name_admin(usr)] toggled tinted_weldhelh.", 1) + +/obj/admins/proc/toggleguests() + set category = "Server" + set desc="Guests can't enter" + set name="Toggle guests" + guests_allowed = !( guests_allowed ) + if (!( guests_allowed )) + world << "Guests may no longer enter the game." + else + world << "Guests may now enter the game." + log_admin("[key_name(usr)] toggled guests game entering [guests_allowed?"":"dis"]allowed.") + message_admins("\blue [key_name_admin(usr)] toggled guests game entering [guests_allowed?"":"dis"]allowed.", 1) + // // //ALL DONE diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 3e1b0b80b20..d1787a5b4bb 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -37,6 +37,7 @@ src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering src.verbs += /obj/admins/proc/toggleooc //toggle ooc src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -176,6 +177,7 @@ src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering src.verbs += /obj/admins/proc/toggleooc //toggle ooc src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -306,6 +308,7 @@ src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering src.verbs += /obj/admins/proc/toggleooc //toggle ooc src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -461,6 +464,7 @@ //src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering //src.verbs += /obj/admins/proc/toggleooc //toggle ooc //src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc //src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -606,6 +610,7 @@ //src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering //src.verbs += /obj/admins/proc/toggleooc //toggle ooc //src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc //src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -747,6 +752,7 @@ //src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering //src.verbs += /obj/admins/proc/toggleooc //toggle ooc //src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc //src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -871,6 +877,7 @@ //src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering src.verbs += /obj/admins/proc/toggleooc //toggle ooc src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc //src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -1026,6 +1033,7 @@ src.verbs -= /obj/admins/proc/toggleaban //abandon mob src.verbs -= /obj/admins/proc/toggleAI //Toggle the AI src.verbs -= /obj/admins/proc/toggleenter //Toggle enterting + src.verbs -= /obj/admins/proc/toggleguests //Toggle guests entering src.verbs -= /obj/admins/proc/toggleooc //toggle ooc src.verbs -= /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc src.verbs -= /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -1455,6 +1463,7 @@ src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering src.verbs += /obj/admins/proc/toggleooc //toggle ooc src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -1485,6 +1494,7 @@ src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering src.verbs += /obj/admins/proc/toggleooc //toggle ooc src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -1515,6 +1525,7 @@ src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering src.verbs += /obj/admins/proc/toggleooc //toggle ooc src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -1552,6 +1563,7 @@ //src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering //src.verbs += /obj/admins/proc/toggleooc //toggle ooc //src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc //src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -1589,6 +1601,7 @@ //src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering //src.verbs += /obj/admins/proc/toggleooc //toggle ooc //src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc //src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -1614,6 +1627,7 @@ //src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering //src.verbs += /obj/admins/proc/toggleooc //toggle ooc //src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc //src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling @@ -1644,6 +1658,7 @@ //src.verbs += /obj/admins/proc/toggleaban //abandon mob src.verbs += /obj/admins/proc/toggleAI //Toggle the AI src.verbs += /obj/admins/proc/toggleenter //Toggle enterting + src.verbs += /obj/admins/proc/toggleguests //Toggle guests entering src.verbs += /obj/admins/proc/toggleooc //toggle ooc src.verbs += /obj/admins/proc/toggleoocdead //toggle ooc for dead/unc //src.verbs += /obj/admins/proc/toggletraitorscaling //toggle traitor scaling diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 726038221fb..2fe9a1d3392 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -1866,6 +1866,11 @@ alert(src,"You have been banned.\nReason : [isbanned]","Ban","Ok") del(src) + if (!guests_allowed && IsGuestKey(src.key)) + log_access("Failed Login: [src] - Guests not allowed") + message_admins("\blue Failed Login: [src] - Guests not allowed") + alert(src,"You cannot play here.\nReason : Guests not allowed","Guests not allowed","Ok") + del(src) if (((world.address == src.address || !(src.address)) && !(host))) host = src.key diff --git a/code/unused/gamemodes/monkey.dm b/code/unused/gamemodes/monkey.dm index 18747bdad85..5df1b06f337 100644 --- a/code/unused/gamemodes/monkey.dm +++ b/code/unused/gamemodes/monkey.dm @@ -62,8 +62,8 @@ else world << "The Research Staff has stopped the monkey invasion!" - for(var/mob/living/carbon/human/human_player in world) - if (human_player.client) - world << "[human_player.key] was [human_player.real_name]." + for(var/mob/living/carbon/monkey/monkey_player in world) + if (monkey_player.client) + world << "[monkey_player.key] was a monkey." return 1 \ No newline at end of file