public CheckLayer(int layerIndex, CHECK_DIRECTION direction, float checkDistance, float minDistance) { mLayerIndex = layerIndex; mDirection = direction; mCheckDistance = checkDistance; mMinDistance = minDistance; if (direction == CHECK_DIRECTION.CD_DOWN) { mDirectionVector = Vector3.down; } else if (direction == CHECK_DIRECTION.CD_UP) { mDirectionVector = Vector3.up; } else if (direction == CHECK_DIRECTION.CD_LEFT) { mDirectionVector = Vector3.left; } else if (direction == CHECK_DIRECTION.CD_RIGHT) { mDirectionVector = Vector3.right; } else if (direction == CHECK_DIRECTION.CD_FORWARD) { mDirectionVector = Vector3.forward; } else if (direction == CHECK_DIRECTION.CD_BACK) { mDirectionVector = Vector3.back; } }
public void addCheckLayer(int layer, CHECK_DIRECTION direction, float checkDistance, float minDistance) { CheckLayer checkLayer = new CheckLayer(layer, direction, checkDistance, minDistance); mCheckLayer.Add(checkLayer); if (!mCheckDirectionList.ContainsKey(direction)) { mCheckDirectionList.Add(direction, new List <CheckLayer>()); } mCheckDirectionList[direction].Add(checkLayer); }
public void addCheckLayer(int layer, CHECK_DIRECTION direction, float checkDistance, float minDistance) { CheckLayer checkLayer = new CheckLayer(layer, direction, checkDistance, minDistance); mCheckLayer.Add(checkLayer); if (!mCheckDirectionList.TryGetValue(direction, out List <CheckLayer> layerList)) { layerList = new List <CheckLayer>(); mCheckDirectionList.Add(direction, layerList); } layerList.Add(checkLayer); }
public void removeCheckLayer(int layer, CHECK_DIRECTION direction) { if (!mCheckDirectionList.TryGetValue(direction, out List <CheckLayer> layerList)) { return; } int count = layerList.Count; for (int i = 0; i < count; ++i) { if (layerList[i].mLayerIndex == layer) { mCheckLayer.Remove(layerList[i]); layerList.RemoveAt(i); break; } } }
public void removeCheckLayer(int layer, CHECK_DIRECTION direction) { if (!mCheckDirectionList.ContainsKey(direction)) { return; } var layerList = mCheckDirectionList[direction]; int count = layerList.Count; for (int i = 0; i < count; ++i) { if (layerList[i].mLayerIndex == layer) { mCheckLayer.Remove(layerList[i]); layerList.RemoveAt(i); break; } } }
public void removeCheckLayer(int layer, CHECK_DIRECTION direction) { if (mCheckDirectionList.ContainsKey(direction)) { CheckLayer checkLayer = null; List <CheckLayer> layerList = mCheckDirectionList[direction]; int count = layerList.Count; for (int i = 0; i < count; ++i) { if (layerList[i].mLayerIndex == layer) { checkLayer = layerList[i]; layerList.RemoveAt(i); break; } } if (checkLayer != null) { mCheckLayer.Remove(checkLayer); } } }