//* -----------------------------------------------------------------------* /// <summary>方向ボタンのベクトルを計算します。</summary> /// /// <param name="axis">方向ボタンの入力状態。</param> /// <param name="flags">方向ボタンの合成されたフラグ。</param> public static void createVector(IList <bool> axis, out EDirectionFlags flags) { if (axis.Count < 4) { throw new ArgumentOutOfRangeException("axis"); } flags = EDirectionFlags.None; for (int i = 4; --i >= 0;) { if (axis[i]) { flags |= axisFlagsList[i]; } } }
//* -----------------------------------------------------------------------* /// <summary>方向ボタンのベクトルを計算します。</summary> /// /// <param name="axis">方向ボタンの入力状態。</param> /// <param name="vector">方向ボタンのベクトル。</param> /// <param name="flags">方向ボタンの合成されたフラグ。</param> public static void createVector( IList <SInputState> axis, out Vector2 vector, out EDirectionFlags flags) { if (axis.Count < 4) { throw new ArgumentOutOfRangeException("axis"); } vector = Vector2.Zero; flags = EDirectionFlags.None; for (int i = 4; --i >= 0;) { if (axis[i]) { flags |= axisFlagsList[i]; vector += axisVectorList[i]; } } }
/// <summary> /// Constructor /// </summary> /// <param name="block">Block</param> /// <param name="directionFlags">Direction flags</param> /// <param name="instance">Instance</param> public InstantiatedBlock(BlockData block, EDirectionFlags directionFlags, GameObject instance) { Block = block; DirectionFlags = directionFlags; Instance = instance; }
/// <summary> /// Constructor /// </summary> /// <param name="block">Block</param> /// <param name="directionFlags">Direction flags</param> public BlockChange(BlockData block, EDirectionFlags directionFlags) { Block = block; DirectionFlags = directionFlags; }
/// <summary> /// Draw block field /// </summary> /// <param name="blockAssetsSerializedProperty">Block assets serialized property</param> /// <param name="directionFlags">Direction flags</param> private void DrawBlockField(SerializedProperty blockAssetsSerializedProperty, EDirectionFlags directionFlags) { SerializedProperty block_asset_serialized_property = blockAssetsSerializedProperty.GetArrayElementAtIndex((int)(directionFlags)); if (block_asset_serialized_property != null) { EditorGUILayout.PropertyField(block_asset_serialized_property, new GUIContent(directionFlags.ToString())); } }