当前位置: 首页 > news >正文

qq排名优化网站如何购买网站服务器

qq排名优化网站,如何购买网站服务器,请人做网站要注意什么,石狮网站建设费用Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释#xff0c;可供学习Alex教程的人参考 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili Player.cs using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; u…Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释可供学习Alex教程的人参考 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili Player.cs using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; using UnityEngine;public class Player : MonoBehaviour {[Header(Move Info)]public float moveSpeed;//定义速度与xInput相乘控制速度的大小public float jumpForce;[Header(Collision Info)][SerializeField] private Transform groundCheck;//transform类代表的时物体的位置,后面会来定位子组件的位置 [SerializeField] private float groundCheckDistance;[SerializeField] private Transform wallCheck;//transform类代表的时物体的位置,后面会来定位子组件的位置 [SerializeField] private float wallCheckDistance;[SerializeField] private LayerMask whatIsGround;//LayerMask类与Raycast配合https://docs.unity3d.com/cn/current/ScriptReference/Physics.Raycast.html#region 定义Unity组件public Animator anim { get; private set; }//这样才能配合着拿到自己身上的animator的控制权public Rigidbody2D rb { get; private set; }//配合拿到身上的Rigidbody2D组件控制权#endregion#region 定义Statespublic PlayerStateMachine stateMachine { get; private set; }public PlayerIdleState idleState { get; private set; }public PlayerMoveState moveState { get; private set; }public PlayerJumpState jumpState { get; private set; }public PlayerAirState airState { get; private set; }//与其说是airState不如说是FallState#endregionprivate void Awake(){stateMachine new PlayerStateMachine();//通过构造函数在构造时传递信息idleState new PlayerIdleState(this, stateMachine, Idle);moveState new PlayerMoveState(this, stateMachine, Move);jumpState new PlayerJumpState(this, stateMachine, Jump);airState new PlayerAirState(this, stateMachine, Jump);//this 就是 Player这个类本身}//Awake初始化所以State为所有State传入各自独有的参数及animBool以判断是否调用此动画与animatoin配合完成private void Start(){anim GetComponentInChildrenAnimator();//拿到自己身上的animator的控制权rb GetComponentRigidbody2D();stateMachine.Initialize(idleState);}private void Update()//在mano中update会自动刷新但其他没有mano的不会故需要在这个updata中调用其他脚本中的函数stateMachine.currentState.update以实现 //stateMachine中的update{stateMachine.currentState.Update();//反复调用CurrentState的Update函数}public void SetVelocity(float _xVelocity,float _yVelocity){rb.velocity new Vector2(_xVelocity, _yVelocity);//将rb的velocity属性设置为对应的想要的二维向量。因为2D游戏的速度就是二维向量}//控制速度的函数此函数在其他State中可能会使用但仅能通过player.SeVelocity调用public bool IsGroundDetected(){return Physics2D.Raycast(groundCheck.position, Vector2.down, groundCheckDistance, whatIsGround);}//通过RayCast检测是否挨着地面,https://docs.unity3d.com/cn/current/ScriptReference/Physics.Raycast.html//xxxxxxxx() xxxxxxxx xxxxxxxxxx() return xxxxxxxxx;private void OnDrawGizmos(){Gizmos.DrawLine(groundCheck.position, new Vector3(groundCheck.position.x, groundCheck.position.y - groundCheckDistance));//绘制一条从 from(前面的) 开始到 to后面的 的线。Gizmos.DrawLine(wallCheck.position, new Vector3(wallCheck.position.x wallCheckDistance, wallCheck.position.y ));//绘制一条从 from(前面的) 开始到 to后面的 的线。}//画线函数 }PlayerState.cs using System.Collections; using System.Collections.Generic; using System.Security.Authentication.ExtendedProtection; using UnityEngine; //被继承的总类后面的所以state都需要继承它 //实际上Player并没有进入过这个状态没有调用此脚本所有的调用均属于此脚本的子脚本 public class PlayerState {protected PlayerStateMachine stateMachine;//创建PlayerStateMachine类以承接来自Player.cs传过来的东西protected Player player;//创建Player类以承接来自Player.cs传过来的东西#region Unity组件protected Rigidbody2D rb;//纯简化将player.rb -- rb#endregionprivate string animBoolName;//控制此时的anim的BOOL值protected float xInput;//设置一个可以保存当前是否在按移动键的变量public PlayerState(Player _player,PlayerStateMachine _stateMachine,string _animBoolName){this.player _player;this.stateMachine _stateMachine; this.animBoolName _animBoolName;}//构造函数用于传递信息public virtual void Enter(){player.anim.SetBool(animBoolName, true);//通过animator自带的函数将animator里的Bool值改变为想要的值rb player.rb;//纯简化将player.rb -- rb}public virtual void Update(){xInput Input.GetAxisRaw(Horizontal);//对于键盘和游戏杆输入该值将处于 -1...1 的范围内。 由于未对输入进行平滑处理键盘输入将始终为 -1、0 或 1。 如果您想自己完成键盘输入的所有平滑处理这非常有用。player.anim.SetFloat(yVelocity, rb.velocity.y);//通过animator自带的函数将animator里的Float值改变为想要的值,改变yVelocity以控制Jump与Fall动画的切换}public virtual void Exit(){player.anim.SetBool(animBoolName, false);//通过animator自带的函数将animator里的Bool值改变为想要的值}}PlayerStateMachine.cs using System.Collections; using System.Collections.Generic; using UnityEngine;public class PlayerStateMachine {public PlayerState currentState { get; private set; }public void Initialize(PlayerState _startState){currentState _startState;currentState.Enter();}//初始化状态函数及通过将idleState传送进来以便于调用idleState中的Enter函数public void ChangeState(PlayerState _newState){currentState.Exit();currentState _newState;currentState.Enter();}//更改状态函数//1.调用当前状态的Exit函数使动画为false//2.传入新的状态替换原来的状态//3.调用新的状态的Enter函数 }PlayerGroundState.cs using System.Collections; using System.Collections.Generic; using UnityEngine; //GroundState用于保证只有在Idle和Move这两个地面状态下才能调用某些函数并且稍微减少一点代码量 public class PlayerGroundState : PlayerState {public PlayerGroundState(Player _player, PlayerStateMachine _stateMachine, string _animBoolName) : base(_player, _stateMachine, _animBoolName){}public override void Enter(){base.Enter();}public override void Update(){base.Update();if (Input.GetKeyDown(KeyCode.Space)player.IsGroundDetected()){stateMachine.ChangeState(player.jumpState);}//空格切换为跳跃状态}public override void Exit(){base.Exit();}}PlayerIdleState.cs using System.Collections; using System.Collections.Generic; using UnityEngine;public class PlayerIdleState : PlayerGroundState//继承函数获得PlayerState里的所有函数和参数 {public PlayerIdleState(Player _player, PlayerStateMachine _stateMachine, string _animBoolName) : base(_player, _stateMachine, _animBoolName){}//构造函数用于传递信息。//当外补New出对象时New出的对象里传入参数public override void Enter(){base.Enter();}public override void Exit(){base.Exit();}public override void Update(){base.Update();if(xInput ! 0){stateMachine.ChangeState(player.moveState);//在这里我们能使用Player里的东西主要是因为我们通过构造函数传过来Player实体如果不传则无法使用已经存在了的Player实体。}} }PlayerMoveState.cs using System.Collections; using System.Collections.Generic; using UnityEngine;public class PlayerMoveState : PlayerGroundState {public PlayerMoveState(Player _player, PlayerStateMachine _stateMachine, string _animBoolName) : base(_player, _stateMachine, _animBoolName){}//构造函数用于传递信息。//当外补New出对象时New出的对象里传入参数public override void Enter(){base.Enter();}public override void Exit(){base.Exit();}public override void Update(){base.Update();player.SetVelocity(xInput*player.moveSpeed, rb.velocity.y);//player.rb.velocity.y默认的为0,player.moveSpeed在player中定义但可以在Unity引擎中更改if (xInput0){stateMachine.ChangeState(player.idleState);//在这里我们能使用Player里的东西主要是因为我们通过构造函数传过来Player实体如果不传则无法使用已经存在了的Player实体。}} }PlayerJumpState.cs using System.Collections; using System.Collections.Generic; using UnityEngine;public class PlayerJumpState : PlayerState {public PlayerJumpState(Player _player, PlayerStateMachine _stateMachine, string _animBoolName) : base(_player, _stateMachine, _animBoolName){}public override void Enter(){base.Enter();rb.velocity new Vector2(rb.velocity.x, player.jumpForce);//将y轴速度改变}public override void Update(){base.Update();if (rb.velocity.y 0)//当速度小于0时切换为airState{stateMachine.ChangeState(player.airState);//与其说是airState不如说是FallState}}public override void Exit(){base.Exit();}}PlayerAirState.cs using System.Collections; using System.Collections.Generic; using UnityEngine;public class PlayerAirState : PlayerState {public PlayerAirState(Player _player, PlayerStateMachine _stateMachine, string _animBoolName) : base(_player, _stateMachine, _animBoolName){}public override void Enter(){base.Enter();}public override void Update(){base.Update();if (player.IsGroundDetected()){stateMachine.ChangeState(player.idleState);}//暂时使用因为这样写是由错误的}public override void Exit(){base.Exit();}}
文章转载自:
http://www.morning.jjsxh.cn.gov.cn.jjsxh.cn
http://www.morning.fqpyj.cn.gov.cn.fqpyj.cn
http://www.morning.dtfgr.cn.gov.cn.dtfgr.cn
http://www.morning.ailvturv.com.gov.cn.ailvturv.com
http://www.morning.rttkl.cn.gov.cn.rttkl.cn
http://www.morning.mwlxk.cn.gov.cn.mwlxk.cn
http://www.morning.ryztl.cn.gov.cn.ryztl.cn
http://www.morning.hsxkq.cn.gov.cn.hsxkq.cn
http://www.morning.fyskq.cn.gov.cn.fyskq.cn
http://www.morning.lrflh.cn.gov.cn.lrflh.cn
http://www.morning.jzkqg.cn.gov.cn.jzkqg.cn
http://www.morning.nqwkn.cn.gov.cn.nqwkn.cn
http://www.morning.qqbjt.cn.gov.cn.qqbjt.cn
http://www.morning.jfbgn.cn.gov.cn.jfbgn.cn
http://www.morning.txhls.cn.gov.cn.txhls.cn
http://www.morning.qcsbs.cn.gov.cn.qcsbs.cn
http://www.morning.twwts.com.gov.cn.twwts.com
http://www.morning.ntwfr.cn.gov.cn.ntwfr.cn
http://www.morning.czcbl.cn.gov.cn.czcbl.cn
http://www.morning.mszls.cn.gov.cn.mszls.cn
http://www.morning.ygwbg.cn.gov.cn.ygwbg.cn
http://www.morning.rtkgc.cn.gov.cn.rtkgc.cn
http://www.morning.yrcxg.cn.gov.cn.yrcxg.cn
http://www.morning.lbywt.cn.gov.cn.lbywt.cn
http://www.morning.xqgh.cn.gov.cn.xqgh.cn
http://www.morning.fygbq.cn.gov.cn.fygbq.cn
http://www.morning.fjptn.cn.gov.cn.fjptn.cn
http://www.morning.ftsmg.com.gov.cn.ftsmg.com
http://www.morning.mlzyx.cn.gov.cn.mlzyx.cn
http://www.morning.fpczq.cn.gov.cn.fpczq.cn
http://www.morning.pjftk.cn.gov.cn.pjftk.cn
http://www.morning.hongjp.com.gov.cn.hongjp.com
http://www.morning.tnzwm.cn.gov.cn.tnzwm.cn
http://www.morning.fpxsd.cn.gov.cn.fpxsd.cn
http://www.morning.qzbwmf.cn.gov.cn.qzbwmf.cn
http://www.morning.nxcgp.cn.gov.cn.nxcgp.cn
http://www.morning.rtzd.cn.gov.cn.rtzd.cn
http://www.morning.mnjyf.cn.gov.cn.mnjyf.cn
http://www.morning.gywfp.cn.gov.cn.gywfp.cn
http://www.morning.cbnxq.cn.gov.cn.cbnxq.cn
http://www.morning.knnhd.cn.gov.cn.knnhd.cn
http://www.morning.ymdhq.cn.gov.cn.ymdhq.cn
http://www.morning.jxfsm.cn.gov.cn.jxfsm.cn
http://www.morning.kfmnf.cn.gov.cn.kfmnf.cn
http://www.morning.hdscx.cn.gov.cn.hdscx.cn
http://www.morning.wnxqf.cn.gov.cn.wnxqf.cn
http://www.morning.lltdf.cn.gov.cn.lltdf.cn
http://www.morning.rdlxh.cn.gov.cn.rdlxh.cn
http://www.morning.kljhr.cn.gov.cn.kljhr.cn
http://www.morning.lgnbr.cn.gov.cn.lgnbr.cn
http://www.morning.xykst.cn.gov.cn.xykst.cn
http://www.morning.zxfr.cn.gov.cn.zxfr.cn
http://www.morning.pngdc.cn.gov.cn.pngdc.cn
http://www.morning.rxcqt.cn.gov.cn.rxcqt.cn
http://www.morning.tgfsr.cn.gov.cn.tgfsr.cn
http://www.morning.pwqyd.cn.gov.cn.pwqyd.cn
http://www.morning.yesidu.com.gov.cn.yesidu.com
http://www.morning.kqfdrqb.cn.gov.cn.kqfdrqb.cn
http://www.morning.mhrzd.cn.gov.cn.mhrzd.cn
http://www.morning.llmhq.cn.gov.cn.llmhq.cn
http://www.morning.qljxm.cn.gov.cn.qljxm.cn
http://www.morning.jlboyuan.cn.gov.cn.jlboyuan.cn
http://www.morning.ysbrz.cn.gov.cn.ysbrz.cn
http://www.morning.rjqtq.cn.gov.cn.rjqtq.cn
http://www.morning.nbwyk.cn.gov.cn.nbwyk.cn
http://www.morning.shinezoneserver.com.gov.cn.shinezoneserver.com
http://www.morning.ytrbq.cn.gov.cn.ytrbq.cn
http://www.morning.stwxr.cn.gov.cn.stwxr.cn
http://www.morning.nhgfz.cn.gov.cn.nhgfz.cn
http://www.morning.mymz.cn.gov.cn.mymz.cn
http://www.morning.zgdnz.cn.gov.cn.zgdnz.cn
http://www.morning.dytqf.cn.gov.cn.dytqf.cn
http://www.morning.nhdmh.cn.gov.cn.nhdmh.cn
http://www.morning.yswxq.cn.gov.cn.yswxq.cn
http://www.morning.nfbkp.cn.gov.cn.nfbkp.cn
http://www.morning.mjglk.cn.gov.cn.mjglk.cn
http://www.morning.dqpnd.cn.gov.cn.dqpnd.cn
http://www.morning.djxnn.cn.gov.cn.djxnn.cn
http://www.morning.nsfxt.cn.gov.cn.nsfxt.cn
http://www.morning.rrgm.cn.gov.cn.rrgm.cn
http://www.tj-hxxt.cn/news/271532.html

相关文章:

  • wordpress 网站提速软件设计师中级含金量
  • 做区域县城招聘网站东莞新闻最新消息今天
  • 想做一个网站公司做百度网站要多少钱
  • 做网站干什么用网站建设员
  • wordpress一键建站服务商标有哪些
  • 网站 关键词库去哪个网站可以接单做ps等等
  • 湖北皇奥建设工程有限公司网站汕头招聘网官网
  • 官方网站建设合同编程软件自学网
  • 网站闭站保护网站开发排名
  • 机关门户网站建设意义酒类网站建设策划书
  • 网站群建设费用建设网站要什么时候开始
  • 网站建设准备国际新闻最新消息今天2024年
  • 江门网站制作维护手机h5制作软件哪个好
  • 温州网站开发平台解除网站被拦截的方法
  • 龙采网站建设资源分享平台网站建设规划书 预算
  • 网站维护公司谷歌的网站打不开
  • 米课做网站苏州公司排名
  • 中国建设银行网站-诚聘英才唯品会网站页面设计
  • 网站注册页面跳出怎么做网站开发遇到过哪些技术难点
  • 掼蛋网站建设大连网络公司联系方式
  • 网站开发写好了怎么发布seo执行招聘
  • 网站功能项目报价凡客网站官网
  • 戴尔网站建设目标免费高清视频素材app哪里找
  • h5技术建设网站的知识做网站特别简单的软件
  • 戚墅堰做网站价格视频剪辑在哪里学
  • 宁波企业网站优化报价专业网站推广的公司哪家好
  • 微信商城网站建设多少钱网站建设168
  • 柳州做网站优化运维管理系统
  • 地方网站盈利wordpress空白页面
  • 犀牛云网站建设公司yyf做的搞笑视频网站