From 1ad450eb19451be3de958e88e1d2b6516a212b81 Mon Sep 17 00:00:00 2001 From: uporotiy Date: Mon, 27 Dec 2010 11:02:10 +0000 Subject: [PATCH] You need an agressive grip to table now, as well as being within one tile of the table (to nerf teletabling). Teleport only runs once at the beginning of the round, hopefully reducing the lag in wizard rounds. Wizards can't telepot back to their shuttle to afk now. git-svn-id: http://tgstation13.googlecode.com/svn/trunk@707 316c924e-a436-60f5-8080-3fe189b3f50e --- code/defines/area/Space Station 13 areas.dm | 13 ++++++++++++ code/game/algorithm.dm | 1 + code/game/gamemodes/wizard/spell12.dm | 23 ++++++--------------- code/game/objects/tables_racks.dm | 5 ++++- icons/changelog.html | 16 +++++++++++--- tgstation.dme | 4 ++-- 6 files changed, 39 insertions(+), 23 deletions(-) diff --git a/code/defines/area/Space Station 13 areas.dm b/code/defines/area/Space Station 13 areas.dm index b7ad54a2582..e59d745cc90 100644 --- a/code/defines/area/Space Station 13 areas.dm +++ b/code/defines/area/Space Station 13 areas.dm @@ -43,6 +43,19 @@ // (original area before splitting due to sd_DAL) var/list/related // the other areas of the same type as this +/*Adding a wizard area teleport list because motherfucking lag -- Urist*/ +/*I am far too lazy to make it a proper list of areas so I'll just make it run the usual telepot routine at the start of the game*/ +var/list/teleportlocs = list() + +proc/process_teleport_locs() + for(var/area/AR in world) + if(istype(AR, /area/shuttle) || istype(AR, /area/syndicate_station) || istype(AR, /area/wizard_station)) continue + if(teleportlocs.Find(AR.name)) continue + var/turf/picked = pick(get_area_turfs(AR.type)) + if (picked.z == 1) + teleportlocs += AR.name + teleportlocs[AR.name] = AR +/*-----------------------------------------------------------------------------*/ /area/engine/ diff --git a/code/game/algorithm.dm b/code/game/algorithm.dm index 783cac8cf39..53d5186a3f5 100644 --- a/code/game/algorithm.dm +++ b/code/game/algorithm.dm @@ -13,6 +13,7 @@ goon_loadfile() beta_tester_loadfile() LoadBans() + process_teleport_locs() //Sets up the wizard teleport locations spawn(30) //EXPERIMENTAL diff --git a/code/game/gamemodes/wizard/spell12.dm b/code/game/gamemodes/wizard/spell12.dm index 6f6aaaa1b5f..1db8d115103 100644 --- a/code/game/gamemodes/wizard/spell12.dm +++ b/code/game/gamemodes/wizard/spell12.dm @@ -5,7 +5,7 @@ if(!usr.casting()) return var/A usr.verbs -= /mob/proc/teleport - +/* var/list/theareas = new/list() for(var/area/AR in world) if(istype(AR, /area/shuttle) || istype(AR, /area/syndicate_station)) continue @@ -14,14 +14,14 @@ if (picked.z == src.z) theareas += AR.name theareas[AR.name] = AR +*/ - A = input("Area to jump to", "BOOYEA", A) in theareas + A = input("Area to jump to", "BOOYEA", A) in teleportlocs spawn(450) usr.verbs += /mob/proc/teleport - - var/area/thearea = theareas[A] + var/area/thearea = teleportlocs[A] usr.say("SCYAR NILA [uppertext(A)]") usr.spellvoice() @@ -32,7 +32,6 @@ smoke.start() var/list/L = list() for(var/turf/T in get_area_turfs(thearea.type)) - if(T.z != src.z) continue if(!T.density) var/clear = 1 for(var/obj/O in T) @@ -52,17 +51,8 @@ return var/A - var/list/theareas = new/list() - for(var/area/AR in world) - if(istype(AR, /area/shuttle) || istype(AR, /area/syndicate_station)) continue - if(theareas.Find(AR.name)) continue - var/turf/picked = pick(get_area_turfs(AR.type)) - if (picked.z == src.z) - theareas += AR.name - theareas[AR.name] = AR - - A = input("Area to jump to", "BOOYEA", A) in theareas - var/area/thearea = theareas[A] + A = input("Area to jump to", "BOOYEA", A) in teleportlocs + var/area/thearea = teleportlocs[A] var/datum/effects/system/harmless_smoke_spread/smoke = new /datum/effects/system/harmless_smoke_spread() smoke.set_up(5, 0, usr.loc) @@ -70,7 +60,6 @@ smoke.start() var/list/L = list() for(var/turf/T in get_area_turfs(thearea.type)) - if(T.z != src.z) continue if(!T.density) var/clear = 1 for(var/obj/O in T) diff --git a/code/game/objects/tables_racks.dm b/code/game/objects/tables_racks.dm index 6093503b468..7cf9b83e8ad 100644 --- a/code/game/objects/tables_racks.dm +++ b/code/game/objects/tables_racks.dm @@ -97,8 +97,11 @@ /obj/table/attackby(obj/item/weapon/W as obj, mob/user as mob) - if (istype(W, /obj/item/weapon/grab)) + if (istype(W, /obj/item/weapon/grab) && get_dist(src,user)<2) var/obj/item/weapon/grab/G = W + if(G.state<2) + user << "\red You need a better grip to do that!" + return G.affecting.loc = src.loc G.affecting.weakened = 5 for(var/mob/O in viewers(world.view, src)) diff --git a/icons/changelog.html b/icons/changelog.html index 5fe7655fab9..704f0554e94 100644 --- a/icons/changelog.html +++ b/icons/changelog.html @@ -45,7 +45,16 @@

Changelog

-17.12.2010,11:00GMT + + +
Sunday, November 21, 3:34 PST
- +
Tuesday, November 16, 00:20 GMT
  • Cruazy Guest's map is now live.
  • Entire station has been rearranged.
  • @@ -82,7 +92,7 @@
  • Clown stamp added to clown's backpack.
- +
Sunday, November 14, 18:05
  • Major food/drink code overhaul. Food items heal for more but not instantly. Poison, Drug, and "Heat" effects from food items are also non-instant.
  • Preperation for one-way containers and condiments.
  • diff --git a/tgstation.dme b/tgstation.dme index 0b292064f34..9523c649d26 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -89,6 +89,7 @@ #define FILE_DIR "code/modules/mob/living/carbon/monkey" #define FILE_DIR "code/modules/mob/living/silicon" #define FILE_DIR "code/modules/mob/living/silicon/ai" +#define FILE_DIR "code/modules/mob/living/silicon/aihologram" #define FILE_DIR "code/modules/mob/living/silicon/decoy" #define FILE_DIR "code/modules/mob/living/silicon/hivebot" #define FILE_DIR "code/modules/mob/living/silicon/robot" @@ -210,6 +211,7 @@ #include "code\defines\mob\living\silicon\ai.dm" #include "code\defines\mob\living\silicon\decoy.dm" #include "code\defines\mob\living\silicon\hivebot.dm" +#include "code\defines\mob\living\silicon\hologram.dm" #include "code\defines\mob\living\silicon\robot.dm" #include "code\defines\mob\living\silicon\silicon.dm" #include "code\defines\obj\assemblies.dm" @@ -334,7 +336,6 @@ #include "code\game\machinery\flasher.dm" #include "code\game\machinery\Freezer.dm" #include "code\game\machinery\gibber.dm" -#include "code\game\machinery\hologram.dm" #include "code\game\machinery\hydroponics.dm" #include "code\game\machinery\igniter.dm" #include "code\game\machinery\lightswitch.dm" @@ -512,7 +513,6 @@ #include "code\game\objects\items\weapons\clown_items.dm" #include "code\game\objects\items\weapons\explosives.dm" #include "code\game\objects\items\weapons\flamethrower.dm" -#include "code\game\objects\items\weapons\game_kit.dm" #include "code\game\objects\items\weapons\glass.dm" #include "code\game\objects\items\weapons\grenades.dm" #include "code\game\objects\items\weapons\guns_ammo.dm"