ID:148326
 
ok in a game i have random combat i walk around, go into battle, you get the point.WHen you die you move location (Like in all things in byond, almost) Except it still things your on the random combat area and it eniteates Combat in a safe zone, this a bug or is it my programming do you think?
Your programming.
In response to Garthor (#1)
HeHe, ok but i dont see whats wrong, in the deathcheck i do src.loc=locate(loc,loc,loc) For the moving, and this is what the random combat turf is like:

turf
Battle_Grass
name = "Grass"
icon = 'grass.dmi'
icon_state="grass"
Enter()
if (!usr.client){return}
if(!usr.Bnum)
var/C=rand(1,30)
if(C<8)
var{M;M1;M2;M3;A1;A2;R}
M=new/mob/monsters/Monster1
R=rand(1,2)
if(R==2){M1=new/mob/monsters/Monster1}
else{..()}
if(R==1){M2=new/mob/monsters/Monster1}
else{..()}
if(R<2){M2=new/mob/monsters/Monster1}
else{..()}
if(R>1){M3=new/mob/monsters/Monster1}
else{..()}
A1=new/mob/Allied/Allied1
A2=new/mob/Allied/Allied1
usr.Rbattle(M,M1,M2,M3,A1,A2)
return 1
New()
..()
icon_state=pick(icon_states(icon))
In response to Wanabe (#2)
Look up locate() . It doesn't take 3 turfs as arguments.
In response to Alathon (#3)
Alathon wrote:
Look up locate() . It doesn't take 3 turfs as arguments.

in the referance this is what it says:

"

locate proc
Format:
locate(Type) in Container
locate(X,Y,Z)
locate(Tag)
locate(TextRef)
Returns:
An object of the specified type or the turf at the given coordinates. If a text string is given in place of an object type, the object with the same tag is found. If a container is given, only objects directly within that object are searched.
Args:
Type: An object prototype or tag. If locate() is being used in an assignment to a variable with a declared type, this argument is optional and will default to the type of the variable being assigned.
Container: An optional container object. (The default is world.)
X,Y,Z: A set of numerical coordinates.
Tag: The value of an object's tag variable.
TextRef: An embedded object reference created by the \ref text macro.
Types are matched in the same manner as istype(). In other words, locate(/obj) could return an instance of something derived from /obj, such as /obj/armor.

If there is more than one instance of the specified type, the first one found will be chosen.

Example:
var/mob/shopkeeper/M = locate()
if(M)
usr << "Found the shopkeeper."
else
usr << "Could not find the shopkeeper."

This looks for a mob of a type /mob/shopkeeper in the world (world.contents).

Example:
usr.Move(locate(/turf/Home))

This "teleports" the usr to a turf of the type /turf/Home.

Example:
usr.Move(locate(1,2,3))

This moves the usr to the turf at coordinates (x,y,z) = (1,2,3). "

by src.loc=locate(loc,loc,loc) I meant (x,y,z) not moving via the turf.
In response to Wanabe (#4)
Any one, please help me.
In response to Wanabe (#5)
You're meant to READ the reference, not copy and paste stuff from it.