Warcorrespondents/Assets/Scripts/事件/WhenPlayerDropInTheHole.cs
Roman d21424dfce 任务:替换现有美术素材和动画、完善游戏的流程化
*:合并了SAIPOVersion
场景【第一关】
1.修复了动画文件丢失的问题
2.制作地面枪光AM
3.制作了机枪枪光AM
*:匹配两处坑的深度和跳跃力度,避免出现跳不上去或者跳太高的问题
4.制作了机枪枪口AC
5.制作地面枪光AC
6.匹配机枪枪口枪光AC和AM,使开枪时播放枪光动画
7.修正玩家掉入坑内后的镜头偏移量
8.加入角色,老兵,使其始终处于待机动画
9.调整了老兵的层数,使得其不能遮挡玩家
10.添加老兵控制脚本,当玩家还没击晕敌人,若玩家想要冲锋上前,则触发对话,老兵转身阻止玩家。若玩家已经击晕敌人,则冲锋上前时不会强制触发对话,但如果玩家按了交互键,则弹出对话【你还挺有能耐】。
11.创建老兵对话形象(因为缺图先随意用了一张)
12.创建了对话【你想送命?】
13.实装了对话【你想送命?】
14.使玩家在砸晕敌人之前无法离开坑
15.使对话【你想送命?】只会触发一次
16.修改投掷系统框架,使得投掷力度成为public变量保存于投掷物堆中,而不是原来的保存在策划接口中
17.使敌人被击中后,播放被击动画,并且机枪停止射击
18.创建对话【你还挺有能耐】
19.给机枪手脚底加了一块地面,使得投掷物能够落在上面
20.给场景放上楼梯
21.布置类似上下坑的触发器,当玩家靠近自动播放下楼梯动画。
22.非常难写,明天再说吧,cnm
2021-09-01 01:50:06 +08:00

55 lines
1.6 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Cinemachine;
public class WhenPlayerDropInTheHole : Event
{
//事件:当玩家调到坑里,主要是改变摄像机视角
private CinemachineVirtualCamera M_Camera;
private Vector3 origin;
private CinemachineTransposer cinemachineTransposer;
private Vector3 target;
[Tooltip("请填入镜头移动的速度")]
public float speed;
void Start()
{
M_Camera = FindObjectOfType<CinemachineVirtualCamera>();
cinemachineTransposer = M_Camera.GetCinemachineComponent<CinemachineTransposer>();
target = cinemachineTransposer.m_FollowOffset;
origin = target;
}
void FixedUpdate()
{
if(!target.Equals(cinemachineTransposer.m_FollowOffset))//当没到目标的时候才移动
{
//每帧都要使得相机的offset向目标移动
cinemachineTransposer.m_FollowOffset += (target - cinemachineTransposer.m_FollowOffset)*//目标偏移量
Time.fixedDeltaTime*//使其与时间无关
speed;//乘以速度
}
}
void OnTriggerEnter2D(Collider2D other)
{
if(other.tag == "Player")
{
//当玩家进入事件范围内
target = new Vector3(7.85360003f,3.38889599f,-10);
}
}
void OnTriggerExit2D(Collider2D other)
{
if(other.tag == "Player")
{
//当玩家离开区域,使视角恢复
target = origin;
}
}
}