Переходы между днями
This commit is contained in:
parent
71502b0653
commit
26db1ea66d
4 changed files with 42 additions and 25 deletions
|
@ -101,6 +101,8 @@ public partial class Player : CharacterBody2D
|
|||
|
||||
private PackedScene _dialogBox = GD.Load<PackedScene>("res://prefabs/Dialog.tscn");
|
||||
|
||||
public ColorRect CRect { get; private set; }
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
_sprite = (AnimatedSprite2D)FindChild("AnimatedSprite2D");
|
||||
|
@ -111,6 +113,7 @@ public partial class Player : CharacterBody2D
|
|||
_camera = (Camera2D)FindChild("Camera2D");
|
||||
_footsteps = (AudioCollection)FindChild("Footsteps");
|
||||
_doorSounds = (AudioCollection)FindChild("DoorSounds");
|
||||
CRect = (ColorRect)FindChild("ColorRect");
|
||||
}
|
||||
|
||||
public override void _PhysicsProcess(double delta)
|
||||
|
@ -119,19 +122,7 @@ public partial class Player : CharacterBody2D
|
|||
{
|
||||
case State.Normal:
|
||||
|
||||
if (_camera.Offset != _cameraDefaultPosition)
|
||||
{
|
||||
if (_currentCameraTransitionTime < CameraTransitionTime)
|
||||
{
|
||||
_camera.Offset = _cameraChatLogPosition.Lerp(_cameraDefaultPosition,
|
||||
(float)(_currentCameraTransitionTime * 1 / CameraTransitionTime));
|
||||
_currentCameraTransitionTime += delta;
|
||||
}
|
||||
else
|
||||
{
|
||||
_currentCameraTransitionTime = 0;
|
||||
}
|
||||
}
|
||||
HideChatLog(delta);
|
||||
|
||||
Vector2 velocity = Velocity;
|
||||
|
||||
|
@ -179,12 +170,30 @@ public partial class Player : CharacterBody2D
|
|||
ShowChatLog(delta);
|
||||
break;
|
||||
case State.Wait:
|
||||
_camera.Offset = _cameraDefaultPosition;
|
||||
break;
|
||||
default:
|
||||
throw new ArgumentOutOfRangeException();
|
||||
}
|
||||
}
|
||||
|
||||
private void HideChatLog(double delta)
|
||||
{
|
||||
if (_camera.Offset != _cameraDefaultPosition)
|
||||
{
|
||||
if (_currentCameraTransitionTime < CameraTransitionTime)
|
||||
{
|
||||
_camera.Offset = _cameraChatLogPosition.Lerp(_cameraDefaultPosition,
|
||||
(float)(_currentCameraTransitionTime * 1 / CameraTransitionTime));
|
||||
_currentCameraTransitionTime += delta;
|
||||
}
|
||||
else
|
||||
{
|
||||
_currentCameraTransitionTime = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void ShowChatLog(double delta)
|
||||
{
|
||||
if (_camera.Offset != _cameraChatLogPosition)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue