Implemented saving/loading of custom input settings Incorporated Input Screen in game Organized UI scripts into folders Deleted some unused UI scripts Reimplemented Fog Blur (by copying modified DoF to assets)
42 lines
1.4 KiB
C#
42 lines
1.4 KiB
C#
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using static Unity.Mathematics.math;
|
|
|
|
public class MapViewDragHandler : MonoBehaviour
|
|
{
|
|
public Camera Camera;
|
|
public float Scaling;
|
|
public ClickCatcher Background;
|
|
private Vector2 _previousPosition;
|
|
private bool _isDragging;
|
|
|
|
void Update()
|
|
{
|
|
var newPosition = Camera.ScreenToWorldPoint(Input.mousePosition);
|
|
|
|
if (!Input.GetMouseButton(0)) _isDragging = false;
|
|
|
|
if (_isDragging) Camera.transform.position -= (Vector3) ((Vector2) newPosition - _previousPosition);
|
|
|
|
if (Background.PointerIsInside)
|
|
{
|
|
if (Input.GetMouseButtonDown(0))
|
|
{
|
|
_previousPosition = newPosition;
|
|
_isDragging = true;
|
|
}
|
|
|
|
if (abs(Input.mouseScrollDelta.y) > .01f)
|
|
{
|
|
var previousPosition = Camera.ScreenToWorldPoint(Input.mousePosition);
|
|
Camera.orthographicSize *= 1 + Input.mouseScrollDelta.y * Scaling;
|
|
Camera.transform.position -= Camera.ScreenToWorldPoint(Input.mousePosition) - previousPosition;
|
|
}
|
|
}
|
|
}
|
|
}
|