zoukankan      html  css  js  c++  java
  • Unity 角色场景传送功能

    传送触发器

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.SceneManagement;

    //玩家传送触发器及传送点
    public class StreetChanger : MonoBehaviour {

    public string sceneName;//传送的场景的名字
    public float transTime;//传送等待的时间,比如在此时间内让场景屏幕变黑,有过渡感
    private bool locked = true;//自加锁,保证同一个场景中的多个传送器只有一个运行
    public int pathPoint;//表示和场景中的哪个点相对应,所对应的点在目标场景的SceneControl中

    // Update is called once per frame
    void Update () {
    if (SceneControl.state == 1&&!locked) {//当场景信息的状态为1表示当前进入传送状态,locked表示传送点数据有当前的StreetChanger来传送
    transTime -= Time.deltaTime;
    if (transTime <= 0) SceneManager.LoadScene(sceneName);
    }

    }

    //如果进入触发区域的对象为玩家,并且按下I键,场景处于空闲状态,那么进行传送过程
    private void OnTriggerStay2D(Collider2D collision)
    {
    if (collision.gameObject.tag.Equals("Player") && Input.GetKeyDown(KeyCode.I)&&SceneControl.state==0) {
    SceneControl.state = 1;
    SceneControl.pathPoint = pathPoint;
    locked = false;
    }
    }
    }

    ---------------------------------------------------------------------------------------------------------------------------------------

    场景控制器,用于控制场景中的一些通用信息的类

    public class SceneControl : MonoBehaviour {
    [SerializeField]
    public static int state;//0正常,1改变场景,2交互
    public static int pathPoint;//角色传送到当前场景时对应通过的路径点标记

    public List<WayPoint> list = new List<WayPoint>();//保存的当前场景中的所有传送点触发器的对象
    public Transform player;

    private void Start()
    {
    //场景初始加载,遍历当前所有触发点,找到角色在该场景的传送位置
    foreach (WayPoint point in list) {
    if (point.pathPoint == pathPoint && point.PointAnchor && player) {
    player.position = point.PointAnchor.position;
    break;
    }
    }

    }

  • 相关阅读:
    Web 应用程序中的安全向量 – ASP.NET MVC 4 系列
    成员资格、授权 – ASP.NET MVC 4 系列
    数据注解和验证 – ASP.NET MVC 4 系列
    表单和 HTML 辅助方法– ASP.NET MVC 4 系列
    模型(Model)– ASP.NET MVC 4 系列
    Razor 视图引擎 – ASP.NET MVC 4 系列
    视图(View) – ASP.NET MVC 4 系列
    控制器(Controller) – ASP.NET MVC 4 系列
    简介 – ASP.NET MVC 4 系列
    一般处理程序处理图片(动态给图片加上水印、保存缩略图、验证码)
  • 原文地址:https://www.cnblogs.com/xiaoahui/p/10312247.html
Copyright © 2011-2022 走看看