Unity3D技术游戏开发之卡牌和技能详解.docx_第1页
Unity3D技术游戏开发之卡牌和技能详解.docx_第2页
Unity3D技术游戏开发之卡牌和技能详解.docx_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Unity3D技术游戏开发之卡牌和技能详解 经过前面几次的尝试,我们对炉石的代码已经不陌生了。除了网络机制还没有了解以外,本机的逻辑已经比较熟悉了。 接下来继续向暴雪最NB的技能系统进发,我们的目标是: 分析技能的静态数据描述; 分析技能的运行时数据、逻辑组织; 这篇笔记主要记录对其分析静态数据。静态数据组织卡牌数据 卡牌的基本数据对于的AssetFamily为:AssetFamily.CardXML; 数据对于的资源包为“cardxml0.unity3d”; 资源包中的资源类型为:TextAsset; 资源加载使用的接口为:AssetLoaderoadCardXml(); 运行时对应的数据类型为:EntityDef; xml文件中保存有多个Entity对象数据,具体数据例如:卡牌实体 卡牌实体对象对应的AssetFamily为:AssetFamily.CardPrefab; 数据对应的资源包为“cards?.unity3d”,目前共有4个; 资源包中的资源类型为:Prefab; 资源加载对应的接口为:AssetLoaderadCardPrefab(); 卡牌资源使用CardID进行索引,例如“闪金镇步兵”对应“CardID=”CS1_042”; Prefab中的GameObject主要包含:Transform、Material、CardDef,这三个Component; CardDef有很多CustomEditField,主要分为以下几类: EditType.SOUND_PREFAB; Material,主要是Portrait头像; EditType.SPELL,其实是string类型,保存的是Spell对象的资源路径;技能对象 技能对象对应的AssetFamily为:AssetFamily.Spell; 数据对应的资源包为“spells?.unity3d”,目前共有3个; 资源包中的资源类型为:Prefab; 资源加载对应的接口为:AssetLoaderoadSpell(); 卡牌通过CardDef中指定相关技能资源的路径; Prefab中的GameObject主要包含:AudioClip、AudioSource、Material、ParticleSystem、ParticleSystemRenderer、Transform等组件; 涉及到的脚本主要有:PlayerMaker相关的类,Spell及其派生类、SoundDef;我们看到Spell有很多的派生类,这里用到了一个小技巧:GetComponent()是可以把基类作为参数来获得子类对象的。例如,一个对象绑定了ArmorSpell对象,而ArmorSpell是Spell的派生类,那么gameObject.GetComponent()是可以获得这个ArmorSpell对象的。总结一下:卡牌和技能相关的数据主要包括以上三种,其中EntityDef是使用“策划填表”或者类似的方式,而且卡牌和技能资源,则

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论