4.7敌人

2024-03-18 02:32
文章标签 4.7 敌人

本文主要是介绍4.7敌人,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

敌人有各种,那么我们首先创建一种,让其他的敌人种类直接继承前者,再针对实际情况略加修改。

using UnityEngine;
using System.Collections;public class Enemy : MonoBehaviour {// 当前路点public PathNode m_currentNode;public float m_speed = 2;// Use this for initializationvoid Start () {}// Update is called once per framevoid Update () {RotateTo();MoveTo();}// 旋转向目标public void RotateTo(){float current = this.transform.eulerAngles.y;     // 获得当前y轴方向this.transform.LookAt(m_currentNode.transform); // 使用LookAt方向转向目标,因此获得了最终角度// 使用Mathf.MoveTowardsAngle方法获得转由当前y轴转到最终角度的中间值float next = Mathf.MoveTowardsAngle(current, this.transform.eulerAngles.y, 120 * Time.deltaTime);this.transform.eulerAngles = new Vector3(0, next, 0);}public void MoveTo()    // 向目标方向移动{/*MoveTo函数则使敌人沿着当前方向前进,当距离目标路点较近时,该路点作为当前路点,再向下一个路点前进。*/Vector3 pos1 = this.transform.position;Vector3 pos2 = m_currentNode.transform.position;float dist = Vector2.Distance(new Vector2(pos1.x, pos1.z), new Vector2(pos2.x, pos2.z));if(dist < 1.0f){if(m_currentNode.m_next == null)    // 如果到达我方基地{GameManager.Instance.SetDamage(1);// ahuiDestroyMe();}elsem_currentNode = m_currentNode.m_next;}this.transform.Translate(new Vector3(0, 0, m_speed * Time.deltaTime));}public void DestroyMe(){//ahuiDestroy(this.gameObject);}
}

在Unity中,如果不是追求特别复杂的动画效果,我们可以使用Unity中原始的动画播放功能。在带有动画的模型,默认呢被导入到Unity中的时候,会自动设置为Generic,这是一种适配Mecanim动画系统的模式,我们要将他转为Legacy模型。例如:一个跑步动画,bird@run,@后面的run即是动画的名称,这是Unity对动画文件定义的一种命名规则。


接下来是另外一种敌人


using UnityEngine;
using System.Collections;public class AirEnemy : Enemy {// Use this for initializationvoid Start () {}// Update is called once per framevoid Update () {RotateTo();MoveTo();Fly();}void Fly()  // 当高度小于2的时候向上飞行{float flyspeed = 0;if(this.transform.position.y < 2.0f)flyspeed = 1.0f;this.transform.Translate(new Vector3(0, flyspeed * Time.deltaTime, 0));}
}







这篇关于4.7敌人的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/820927

相关文章

Unity教程(十三)敌人状态机

Unity开发2D类银河恶魔城游戏学习笔记 Unity教程(零)Unity和VS的使用相关内容 Unity教程(一)开始学习状态机 Unity教程(二)角色移动的实现 Unity教程(三)角色跳跃的实现 Unity教程(四)碰撞检测 Unity教程(五)角色冲刺的实现 Unity教程(六)角色滑墙的实现 Unity教程(七)角色蹬墙跳的实现 Unity教程(八)角色攻击的基本实现 Unity教程

【C++ Primer Plus习题】4.7

问题: 解答: #include <iostream>#include <string>using namespace std;typedef struct _Pizza{string companyName;float diameter;float wieght;}Pizza;int main(){Pizza p;cout << "请输入披萨的公司名: ";getline

据阿谱尔APO Research调研显示,2023年全球髓内钉市场销售额约为4.7亿美元

根据阿谱尔 (APO Research)的统计及预测,2023年全球髓内钉市场销售额约为4.7亿美元,预计在2024-2030年预测期内将以超过3.82%的CAGR(年复合增长率)增长。 髓内钉市场是指涉及髓内钉制造、分销和销售的行业。髓内钉是一种用于整形外科手术的医疗器械,用于稳定长骨骨折,特别是股骨、胫骨和肱骨。髓内钉通常由不銹钢或钛等材料制成,并插入骨的髓管中,以在愈合过程中提供结构支

ArcGIS API for JavaScript 4.7 最新版教程

由于公司最近有地图开发任务,且DIY需求较高,所以采用了arcgis服务为基础。 网上资料太少,而且都是复制粘贴的东西,懒得看,花了一个星期边看官方说明边做,踩坑无数! 为了同样奋斗在Arcgis服务中的同学少走弯路,故整理一下自己踩的坑和实现的功能。 本博客从最基本的离线服务部署开始讲解,逐步深入,主要包括地图加载时自定义视角,自定义图片点位标注,自定义信息窗体,标注点位重合时如何获取重合

【OCPP】ocpp1.6协议第4.7章节Meter Values的介绍及翻译

目录 4.7、仪表值MeterValues-概述 MeterValues 请求消息 MeterValues 响应消息 使用场景 1. 定期报告 2. 事务相关报告 示例 MeterValues 请求示例 处理 MeterValues 响应 示例代码 构建和发送 MeterValues 请求 可能的错误处理 总结 4.7、仪表值MeterValues-原文译文

71. UE5 RPG 实现敌人召唤技能

在这一篇文章中,我们要实现敌人的召唤师能够召唤自己的仆从进行作战。 要实现这个技能,我们首先创建新的敌人蓝图,用于召唤。接着,我们将实现一个召唤技能基类,在基类中实现在召唤师的周围获取到可以生成的位置点,然后在技能蓝图中在对应的位置生成敌人的Actor,并在后续对其进行优化。接下来,我们将一步步实现此功能。 创建新的敌人 我们首先创建两个新的敌人,这两个恶魔类型的敌人,用于召唤使用。 这里也不

AMD Lisa Su专访:谈与英伟达、Intel竞争 直言Arm不是敌人

AMD CEO Lisa Su(苏姿丰)绝对称得上是芯片届的风云人物,尤其是进入了AI新时代,她的声望达到了十年来最高点。翻看其成长历史,苏姿丰在麻省理工学院获得电气工程博士学位后(在麻省理工学院学习八年半,获得三个电气工程学位),在德州仪器开始了她的职业生涯,她在开发绝缘体上硅晶体管技术方面发挥了重要作用。随后,苏姿丰在 IBM 工作了 12 年,领导了半导体铜互连的开发,领导开发了 PlayS

67. UE5 RPG 创建法师敌人角色

我们设置的敌人类型分三种,分别时战士类型,远程射手,和法师类型。在前面,我们创建了战士和射手类型的,还没有法师类型的,在这一篇文章中,我们创建一个法师类型的角色。 在64. UE5 RPG 创建新的双手攻击怪物里,我们创建了一个新的战士角色,而且也整理角色创建的所需的内容,这里我们将创建敌人的通用的内容省略掉,只解释一下不同的地方。 创建蓝图 我们基于敌人基类创建角色蓝图和动画蓝图 调整胶囊

nodejs最新某东h5st(4.7.2)参数分析与javascript逆向纯算法还原(含算法源码)(2024-06-09)

一、作者声明:     文章仅供学习交流与参考!严禁用于任何商业与非法用途!否则由此产生的一切后果均与作者无关!如有侵权,请联系作者本人进行删除! 二 、写在前面    h5st从4.1一路更新到4.7.2,逐渐vmp化,基本稳定下来。现在小版本也是更新不断!不过小版本并不会受到太大的一个影响,本次文章更新的算法分析还原为最新4.7大版本下的4.7.2小版本~~   没有x-api-ei

OpenCV学习(4.7) Canndy边缘检测

1.目标 在本章中,我们将了解 Canny 边缘检测的概念OpenCV 的功能: cv.Canny() Canny边缘检测是一种经典的边缘检测算法,由John F. Canny在1986年提出。Canny算法的目标是找到图像中真正的边缘,同时尽可能地抑制噪声。Canny算法包括以下几个步骤: 高斯模糊:使用高斯滤波器对图像进行平滑处理,以减少噪声的影响。 计算梯度:使用Sobel算子或