由于某些原因,我的深度系统表现得异常怪异。我的玩家角色的深度非常完美。当我走在建筑物后面时,角色实际上就在建筑物后面!但是,由于某些原因,建筑物会相互弹出,但前提是我的玩家角色位于建筑物的y坐标上方。如果我的角色在上述建筑物下面,它们都会弹出。谁能帮助我解决这个问题?
代码如下:
var _dg=depth_grid;
var _inst_num=instance_number(obj_depth_system);
//below is for resizing the grid
ds_grid_resize(depth_grid,2, _inst_num);
//below adds instance info to grid
var _yy = 0;
with(obj_depth_system)
{
_dg[# 0,_yy]=id;
_dg[# 1,_yy] = y;
_yy++;
}
//below sorts the grid so that the ones with the biggest y variables end up at the top
ds_grid_sort(_dg,1,false);
//below goes through the grid and draws everything
var _inst;
_yy = 0;
repeat (_inst_num)
{
//below pulls out an id
_inst = _dg[# 0, _yy];
//below gets the instance to draw itself
with(_inst)
{
_inst.depth= layer_get_depth("collision") + _yy;
}
_yy++;
}
此外,如果有帮助,则建筑对象和角色对象都是obj_depth_system的子代。