ID:139450
 
Code:
turf
Entrances
Enterance
Enter(A)
if(ismob(A))
var/mob/M = A
if(M.client)
var/turf/t = src
if(t.loc == "3,33,1")
M.loc = locate(7,91,2)
if(loc == "9,34,1")
M.loc = locate(19,91,2)
if(loc == "14,34,1")
M.loc=locate(31,91,2)
if(loc == "19,34,1")
M.loc=locate(43,91,2)
if(loc == "26,34,1")
M.loc=locate(55,91,2)


Problem description:
I've created a turf that depending on the location of the turf, it'd send the person who enters it to a certain location. It's giving a bit of issues, my guess is the issue is coming at the var/turf/t = src bit, but I'm not entirely sure how to fix that either.

You have to check the x, y, z variables. Using loc will always return something like /atom.
if(src.x == 3 && src.y == 33 && src.z === 1)
In response to Darker Legends
Nope, not working. :/
You're using the loc var without fundamentally understanding it first. Needless to say, the same goes for Darker Legends.

An atom's loc var refers to its containing atom, if any. In other words, if atom X is inside atom B, then X.loc will have the value of B.
The loc of turfs always refers to an /area object, and loc in general will always refer to either null or an object descended from /atom. Thus, comparing loc to a text string (what you did) or comparing a turf's loc to a turf (what Legends did) will always fail.
If you want to check a turf's coordinates, one way is to check its x, y, z vars, but what you should ideally do is identify separate turf instances by other, better means, such as a text identifier stored in the tag var. Also, you should handle on-entrance effects in Entered(), not Enter(); the latter has a specific purpose and is not meant to do any actions. Absentmindedly overriding it like you have will result in movables being unable to enter the location.

Note that the var/turf/t = src bit is not wrong, even though it is useless.
In response to Kaioken
Thanks for the advice. :) Got it working.