} //今のってるセル public YagiUnit(int yagi_num, int owner_no, PlaneDirection move_plane_direction, CellPosition my_position) { YagiNum = yagi_num; OwnerNo = owner_no; MovePlaneDirection = move_plane_direction; myPosition = my_position; }
public void AddPlane(Plane plane, PlaneDirection direction) { Func <PlaneDirection, String> PlaneStatus = d => PlaneViewStatus[d == PlaneDirection.up ? Plane.PlaneStatusCode.InQueueTakeOff : Plane.PlaneStatusCode.InQueueLanding]; //dGW_Plane.Rows.Insert(0, plane.Number, plane.TimeTakeoff, plane.TimeLanding, plane.LengthTakeOff, plane.FuelResidual, PlaneStatus(direction)); if (direction == PlaneDirection.up) { airport.AddToTakeOffQueue(plane); } else { airport.AddToLandingQueue(plane); } RefreshViewOfAirport(); //TODO Сделать проверку на то, что не добавляется самолет с длиной разбега большей чем максимальная длина ВПП }
/// <summary> /// Gets the <see cref="LordJZ.PlaneDirection"/> that is opposite /// to the provided <see cref="LordJZ.PlaneDirection"/>. /// </summary> /// <param name="direction"> /// The <see cref="LordJZ.PlaneDirection"/> which /// opposite <see cref="LordJZ.PlaneDirection"/> is requested. /// </param> /// <returns> /// The <see cref="LordJZ.PlaneDirection"/> that is opposite /// to the provided <see cref="LordJZ.PlaneDirection"/>. /// </returns> public static PlaneDirection Opposite(this PlaneDirection direction) { switch (direction) { case PlaneDirection.Left: return(PlaneDirection.Right); case PlaneDirection.Top: return(PlaneDirection.Bottom); case PlaneDirection.Right: return(PlaneDirection.Left); case PlaneDirection.Bottom: return(PlaneDirection.Top); default: throw new ArgumentOutOfRangeException("direction"); } }
public void SpawnPlane() { Vector3 position = GetRandomPlanePosition(); PlaneDirection direction = PlaneDirection.LEFT; if (position.x <= 0.0f) { direction = PlaneDirection.RIGHT; } else { direction = PlaneDirection.RIGHT; } GameObject objCreatedPlane = (GameObject)Instantiate(ptrScriptVariable.objPlane, position, Quaternion.identity); objCreatedPlane.GetComponent <EnemyPlaneController>().Direction = direction; }
public static Vector2 Convert2Vector(this PlaneDirection plane_direction) { return(plane_direction.GetCross() == PlaneDirection.Horizontal ? new Vector2(plane_direction.GetSign(), 0) : new Vector2(0, plane_direction.GetSign())); }
public static PlaneDirection GetReverse(this PlaneDirection plane_direction) { return((PlaneDirection)((int)plane_direction * -1)); }
public static PlaneDirection GetCross(this PlaneDirection plane_direction) { return((PlaneDirection)(Math.Abs((int)plane_direction) * 10)); }
public static int GetSign(this PlaneDirection plane_direction) { var dir_int = (int)plane_direction; return(dir_int == 0?0:Math.Sign(dir_int)); }
public static bool IsHorizontal(this PlaneDirection direction) { return(direction == PlaneDirection.Left || direction == PlaneDirection.Right); }
//方向指定する。停止の時はzeroを渡す public void SetDirection(YagiUnit yagi_unit, PlaneDirection plane_direction) { }