Unity2D游戏开发2D Roguelike拾荒者

默认教学计划
7524人加入学习
(35人评价)
价格 免费
教学计划

player

把角色拖到Hierarchy进行角色创建

双击Animator来打开动画编辑器

 

 

[展开全文]

using System.Collections; using System.Collections.Generic; using UnityEngine; public class Mapmannner : MonoBehaviour { public GameObject[] outwallarray; public GameObject[] floorarray; public int rows = 10; public int cols = 10; // Use this for initialization void Start() { Initmap(); } // Update is called once per frame void Update() { } //初始化地图 private void Initmap() { for (int x = 0; x < cols; x++) { for (int y = 0; y < rows; y++) { if (x == 0 || y == 0 || x == cols - 1 || y == rows - 1) { int index = Random.Range(0, outwallarray.Length); GameObject.Instantiate(outwallarray[index], new Vector3(x, y, 0), Quaternion.identity); } } } } }

[展开全文]

一步两步,一步两步,似魔鬼的步伐。

using UnityEngine;
using System.Collections;

public class enemy : MonoBehaviour {

    private Vector2 targetPosition;
    private Transform player;
    private Rigidbody2D rigidbody;
    public float smoothing = 8;
    private BoxCollider2D collider;
    private void Start()
    {
        player = GameObject.FindGameObjectWithTag("Player").transform;
        rigidbody = GetComponent<Rigidbody2D>();
        collider = GetComponent<BoxCollider2D>();
        targetPosition = transform.position;
        GameManageer.Instance.enemyList.Add(this);
    }
    void Update()
    {
        rigidbody.MovePosition(Vector2.Lerp(transform.position, targetPosition, smoothing * Time.deltaTime));   
    }
    public void Move()
    {
        Vector2 offset = player.position - transform.position;
        if (offset.magnitude < 1.1f)
        {
            //攻击
        }
        else {
            float x = 0,y = 0;
            if (Mathf.Abs(offset.y) > Mathf.Abs(offset.x))
            //按照y轴移动
            {
                if (offset.y < 0)
                {
                    y = -1;
                }
                else {
                    y = 1;
                }
            }
            //按照X轴移动
            else {
                if (offset.x < 0)
                {
                    x = -1;
                }
                else
                {
                    x = 1;

                }
            }
            collider.enabled = false;
            RaycastHit2D hit = Physics2D.Linecast(targetPosition, targetPosition + new Vector2(x, y));
            collider.enabled = true;
            if (hit.transform == null)
            {
                targetPosition += new Vector2(x, y);
            }
            else {
                if (hit.collider.tag == "food" || hit.collider.tag == "soda") {
                    targetPosition += new Vector2(x, y);
                }
            }
            
        }
        
    }
}

[展开全文]

using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerMove : MonoBehaviour { private Transform m_transform; void Start () { m_transform = this.GetComponent(); } void Update () { if (Input.GetKeyDown(KeyCode.W)) { m_transform.position += new Vector3(0, 1,0); } else if (Input.GetKeyDown(KeyCode.S)) { m_transform.position += new Vector3(0, -1, 0); } else if (Input.GetKeyDown(KeyCode.A)) { m_transform.position += new Vector3(-1, 0, 0); } else if (Input.GetKeyDown(KeyCode.D)) { m_transform.position += new Vector3(1, 0, 0); } } }

[展开全文]
mapHolder = new GameObject ("Map").transform;
GameObject.Instantiate (outWallArray [index], new Vector3 (i, j,0),Quaternion.identity,mapHolder);

一样的效果

[展开全文]

mapHolder = new GameObject("Map").transform;

[展开全文]

游戏完成了,bug一堆,当主角和敌人的下一步是同一个位置,就会异常,当两个敌人下次移动同一个位置就会异常。判断胜利直接给Exit加个碰撞器再加一个tag,用case判定,比老师写的那个简单。最后结尾那个太乱了,没点耐心真看不下去。课程很精彩,能学到不少东西。一如既往爱siki.

[展开全文]

List

positionList.Clear   编译器查找不到的lei

导入 using System.Collections.Generic

 
[展开全文]

creat empty 创建一个空对像,改名为GameManager 然后在它下面添加一个MapManager的脚本来控制地图生成

[展开全文]
prevate void InstantiateItems()
[展开全文]
00001 · 2016-11-06 · 09-代码优化 0

先用连续图片全选拖入面板,生成一个有动画的物体对象,然后在选择一个连续图片拖入这个物体,就给这个物体加入了另一个动画状态。

[展开全文]

Food is finished,you have been starved to death.

[展开全文]

地图管理器 先设置左下角为坐标原点

[展开全文]

授课教师

课程特色

视频(22)
下载资料(1)

学员动态

鸩乏了 开始学习 01-游戏介绍
鸩乏了 加入学习
小魔怪 开始学习 01-游戏介绍
小魔怪 加入学习