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

中英文切换网站国外网建站

中英文切换网站,国外网建站,公司注册公司代理,网站建设完整代码1.脚本布置.参考tank那个demo制作 1.新建空物体,为管理脚本的物体:manager,挂载NetworkManager,kcpTransport,NetworkManagerHud. 2.设置玩家出生点,spawnPoint,设置好初始化的position的位置(*),挂载NetworkStartPosition的脚本 3.新建Player的预制体,挂载NetworkIdentity,Ne…1.脚本布置.参考tank那个demo制作 1.新建空物体,为管理脚本的物体:manager,挂载NetworkManager,kcpTransport,NetworkManagerHud. 2.设置玩家出生点,spawnPoint,设置好初始化的position的位置(*),挂载NetworkStartPosition的脚本 3.新建Player的预制体,挂载NetworkIdentity,NetworkTransform(unreliable)的脚本,还有自己的自定义脚本,注意自定义脚本需要继承NetworkBehaviour,这个在编辑的时候需要改改.下面是主玩家的移动代码MainPlayerControll.cs. 4.新建turret的预制体,挂载rigibody, NetworkIdentity, TurretMove,“rigibody需要关闭重力”. using Mirror; using UnityEngine; using System.Collections; using System.Collections.Generic; using System.Globalization;public class MainPlayerControll : NetworkBehaviour {public float speed 5;public float Rspeed 25;public GameObject turretPrefab;public Transform firepoint;[SyncVar] public int health 10;int lastHealth 0;public TextMesh nameTxt;public override void OnStartLocalPlayer(){base.OnStartLocalPlayer();Camera.main.transform.SetParent(transform);Camera.main.transform.localPosition new Vector3(0, 0.5f, 0);Camera.main.transform.localRotation Quaternion.identity;}public override void OnStopLocalPlayer(){base.OnStopLocalPlayer();Camera.main.transform.SetParent(null);}void Update(){if (health ! lastHealth){nameTxt.text ${gameObject.name} colorred{health}/color;lastHealth health;}if (!isLocalPlayer) return;float horizontalInput Input.GetAxis(Horizontal);float verticalInput Input.GetAxis(Vertical);Vector3 movement transform.forward * verticalInput * speed * Time.deltaTime;Vector3 rotation new Vector3(0f, horizontalInput * Rspeed * Time.deltaTime, 0f);transform.Translate(movement, Space.World);transform.Rotate(rotation);if (Input.GetKeyDown(KeyCode.Space)){CmdFire();}}[Command]void CmdFire(){GameObject projectile Instantiate(turretPrefab, firepoint.position, firepoint.rotation);NetworkServer.Spawn(projectile);}[ServerCallback]void OnTriggerEnter(Collider other){if (other.GetComponentTurretMove() ! null){--health;if (health 0)NetworkServer.Destroy(gameObject);}} }using Mirror; using UnityEngine; using System.Collections; using System.Collections.Generic;public class TurretMove : NetworkBehaviour {public float destroyAfter 2;public Rigidbody rigidBody;public float force 1000;public override void OnStartServer(){Invoke(nameof(DestroySelf), destroyAfter);}void Start(){rigidBody.AddForce(transform.forward * force);}// destroy for everyone on the server[Server]void DestroySelf(){NetworkServer.Destroy(gameObject);}[ServerCallback]void OnTriggerEnter(Collider co) DestroySelf(); } 2.注意:在manager的NetworkManager中,需要给PlayerPrefab赋值,拖入制作的player预制体,transport中拖入同物体的kcpTransport组件.playerspawnMethod选择RoundRobin. player预制体的MainPlayerControll脚本需要拖入子弹的预制体,还要拖入一个开火点,开火点:就是创建一个空物体放在player上作为开火点. 子弹只需要把自己的的rigibody拖进去到TurretMode.cs脚本里 主玩家脚本里的广播的字段 需要这样声明写 [SyncVar] public int health 10; 一些被动碰撞,触发的方法也要加上 [ServerCallback] [ServerCallback]void OnTriggerEnter(Collider other){if (other.GetComponentTurretMove() ! null){--health;if (health 0)NetworkServer.Destroy(gameObject);}}主动触发 如开火:需要加 [Command] [Command]void CmdFire(){GameObject projectile Instantiate(turretPrefab, firepoint.position, firepoint.rotation);NetworkServer.Spawn(projectile);}总结 [Command]用于在客户端调用服务器上的方法。客户端可以使用该标记调用服务器上的方法并将其作为命令进行处理。方法名称必须以 “Cmd” 开头。 [ClientRpc]用于在服务器上调用并在所有连接的客户端上执行的方法。服务器可以使用该标记调用方法并在所有连接的客户端上执行。方法名称可以任意命名。 [TargetRpc]用于在服务器上调用并在特定客户端上执行的方法。服务器可以使用该标记调用方法并在特定的客户端上执行。方法名称可以任意命名。 [ServerCallback]用于指示方法只在服务器上执行不在客户端上执行。该标记用于在服务器上定义特定逻辑或处理服务器端的事件。方法名称可以任意命名。 注意事项 [Command]、[ClientRpc] 和 [TargetRpc] 方法必须在继承自 NetworkBehaviour 的脚本中使用并且需要正确配置网络连接和同步设置。 [Command] 方法只能从客户端调用并且只在服务器上执行。 [ClientRpc] 方法只能在服务器上调用并在所有连接的客户端上执行。 [TargetRpc] 方法只能在服务器上调用并且只在特定的客户端上执行。 [ServerCallback] 方法只在服务器上执行不在客户端上执行。 方法开头规则 [Command] 标记的方法名称必须以 “Cmd” 开头。 [ClientRpc]、[TargetRpc] 和 [ServerCallback] 标记的方法名称可以任意命名。
http://www.w-s-a.com/news/302293/

相关文章:

  • 典型网站开发的流程房屋装修效果图三室一厅
  • 制作微网站多少钱阿里巴巴做网站的电话号码
  • 风铃建站模板安卓手机软件开发外包
  • 深圳市住房和建设局门户网站域名转移影响网站访问吗
  • 做母婴网站赚钱汕头百姓网
  • 那个网站建设好动漫制作技术升本可以升什么专业
  • 网站建设企业响应式网站模板广西建设部投诉网站
  • app营销的特点wordpress优化方案
  • 静安网站建设公司如何编辑wordpress
  • 做网站的职位叫什么问题常州金坛网站建设
  • 保健品网站模板用jsp做的网站前后端交互
  • 网站带后台品牌网页设计图片
  • 保定清苑住房和城乡建设局网站分类信息网站程序
  • 可以做视频推广的网站选择大连网站建设
  • 在线网站开发网站在哪里
  • 建站的步骤上海快速优化排名
  • 招聘网站做一下要多少钱网站设计公司 国际
  • 巩义专业网站建设公司首选seo研究院
  • 大流量网站解决访问量友情链接如何添加
  • 教育网站建设网永康市住房和城乡建设局网站
  • 阿里巴巴官网网站django 做网站的代码
  • 网站建设 军报wordpress 订餐模板
  • 网站虚拟主机 会计处理石家庄站建设费用多少
  • 网站建设 服务内容 费用简述网站开发流程
  • 公司制作网站跟企业文化的关系空间制作网站
  • 浙江建设监理协会网站个人网站设计规划书
  • wordpress太卡了贵州seo推广
  • 企业介绍微网站怎么做的手机软件商城免费下载
  • 新手网站设计定价网站开发销售
  • 网站开发公司oa有没有找人做标书的网站