工具-unity基础学习总结2

呈上一篇:工具-unity基础学习总结1

30. 角色场景控制及制作

            1. 鼠标指定对应的方向;
            2. 形成光圈的效果;
            3. 对应的角色面朝向对应的方向,并往鼠标指定的方向移动;
            4. 移动的过程中有动画:走,跑,站立;

工具-unity基础学习总结2


31. 角色场景控制及制作

工具-unity基础学习总结2


32. 角色场景中,遇到高或低的地形时,人物角色一直走

工具-unity基础学习总结2


33. 相机跟谁主角

工具-unity基础学习总结2

34. 视野的旋转,拉近拉远的效果;及距离限制

工具-unity基础学习总结2

工具-unity基础学习总结2

35. 鼠标右击,查看水平视野

工具-unity基础学习总结2


36. 鼠标上下滑动,控制上下视野

工具-unity基础学习总结2

37. 从全局来看RPG角色扮演了的游戏开发过程

NPG + 任务系统
   1. UI简单设计
   2. 程序控制
      a. UI不能跟着主角移动
         UICamera.hoveredObject == null
        脚本BarNPC
           1. 当鼠标点击老爷爷的时候,就把UI播放出来
           2. 如果不需要的话,就直接点击关闭
           3. 添加OK按钮;
           4. 三个方法:OnAcceptButton,OnOkButton,OnCancelButton
           5. 两个方法:显示任务进度,显示任务信息
           6. OK按钮的点击(获得金币)
           7. 鼠标指针,当鼠标移动的不同的物体上显示不同的图表(创建类1. 不同图表声明;2. cursorMode 鼠标指针)
           8. 添加右下角不同的功能按钮
           9. 对应不同功能按钮的设置
           10. 读取文本文件(textAsset) textAsset 类型, 读取信息,使用字典类(system.collections.generic)
           11. 背包UI设计,及对应的脚本控制,背包
           12. 物品的拖拽,监听拖拽事件(OnDragDropRealse 方法)注意空格和已经有物体的网格中
           13. Inventory 中查看物品有多少个?(创建类,InventoryItemGrid) setId,得到物品信息,更新物品的信息,清空格子存的物品信息
           14. 拾取物品(随机生成ID,在物品栏中判断是否存在物品,遍历结合 foreach,不存在的情况,寻找方格)
           15. 物品之间的交换(1. 拖拽则对应的信息过去;2. 如果有相应的物品则交换对应的信息;3. 注意归零处理)
           16. 背包的设置和隐藏
           17. 添加物品和减少物品
           18. 当我们鼠标添加到某一个物品时,可以了解某一个物品的信息。
           19. 选择不同的对象显示在左前方(显示头像)
           20. 设置名称、等级及血量条
           21. 右上角设置小地图
           22. 地图中图表的制作
           23. 小地图中角色对象的放大缩小
           24. 当角色碰撞到物体是,无法进行通过
           25. 走向敌人的时候,自动受到攻击
           26. 攻击添加特效效果
           27. 野狼的自动生成,随机产生
           28. 主角添加特效技能系统

不同脚本的使用作用

38. Unity 中GUI函数中的rec()方法

工具-unity基础学习总结2

39. 通过c#脚本来控制,显示的按钮

using UnityEngine;
using System.Collections;

public class PressAnyKey1 : MonoBehaviour {

    // Use this for initialization
    private bool IsAnyKeyDown = false; // 1.通过声明变量,目的用于判断,是否按下任何键;
    private GameObject ContainerButton; //2. 声明游戏物体变量,目的在于,收集查询到组件名字


    void Start () {

        // 在游戏组件中查找对应的组件名字为:“ContainerButton”
        ContainerButton = this.transform.parent.Find("ContainerButton").gameObject;
    }

    // Update is called once per frame
    void Update () {

        if(IsAnyKeyDown == false ){
            if(Input.anyKey){
                ShowButton();

            }

        }

    }

    void ShowButton() { // 自己写了一个方法,来统一管理ShowButton
        ContainerButton.SetActive(true); // 将组件的值设定为:true
        this.gameObject.SetActive(false);// 自己的组件值设定为:false// PressAnyKeyDown
        IsAnyKeyDown = true;    // 如果按下键,则IsAnyKeyDown = true;
    }
}

40. C# 程序 打砖块 实例

工具-unity基础学习总结2

工具-unity基础学习总结2