Beispiel #1
0
        public int Bump(Tilemap map, Vector3Int pos, Vector3 offset, float duration, System.Action <int> onFin)
        {
            if (map == null ||
                !map.HasTile(pos) ||
                duration < 0.02f ||
                offset.sqrMagnitude < 0.001f
                )
            {
                return(-1);
            }

            var cmd = GetCMD <BumpCmd>(map, pos, duration, onFin);

            var tran = map.GetTransformMatrix(pos);

            cmd.startPos = tran.GetColumn(3);
            cmd.offset   = offset;

            TilemapUtilties.UnlockFlag(map, pos, TileFlags.LockTransform);
            if (!enabled)
            {
                enabled = true;
            }
            return(cmd.GUID);
        }
Beispiel #2
0
        public int Color(Tilemap map, Vector3Int pos, Color col, float duration, System.Action <int> onFin)
        {
            if (map == null ||
                !map.HasTile(pos) ||
                duration < 0.02f
                )
            {
                return(-1);
            }

            var cmd = GetCMD <ColorCmd>(map, pos, duration, onFin);

            cmd.startColor = map.GetColor(pos);
            cmd.endColor   = col;

            TilemapUtilties.UnlockFlag(map, pos, TileFlags.LockColor);

            if (!enabled)
            {
                enabled = true;
            }
            return(cmd.GUID);
        }
Beispiel #3
0
        public int MoveTo(Tilemap map, Vector3Int pos, Vector3 end, float duration, System.Action <int> onFin)
        {
            if (map == null ||
                !map.HasTile(pos) ||
                duration < 0.02f
                )
            {
                return(-1);
            }

            var cmd = GetCMD <MoveToCmd>(map, pos, duration, onFin);

            var tran = map.GetTransformMatrix(pos);

            cmd.startPos = tran.GetColumn(3);
            cmd.endPos   = new Vector4(end.x, end.y, end.z, cmd.startPos.w);

            TilemapUtilties.UnlockFlag(map, pos, TileFlags.LockTransform);
            if (!enabled)
            {
                enabled = true;
            }
            return(cmd.GUID);
        }