这里又查出来新冠肺炎的人了,我和她都被困在小区,不让出门,这也就有机会和她辩论辩论打疫苗的事,我没有打疫苗,因为我觉得打了疫苗之后不一定有用,而她早早的就是打了疫苗,那时候打疫苗还需要排很长的队,真就以为打了疫苗之后就安全了,所以我还是说,"疫苗并不是百分之百的免疫病毒,如果能免疫,那也只能是已经发现的病毒,而病毒它们经过自我进化或者变异,疫苗已经攻击不到它们了,"而她就说:"打了疫苗,起码是如果再有原来的病毒来,我们都能免疫,至少不会扩散的很大.她说的是有道理的,若想一针疫苗全免疫,那可不是容易的事,我们有很长的路要走."
说完,抱了抱她,让她别担心,对她说:"我们会挺过去的." 她点点头,回自己的房间去了,我独自在书房,继续独立游戏的架构设计,当我打开项目开始着手角色架构的设计的时候,她又回来了,说:"我不想一个人呆着."
我看了看她,说:"那和我一起设计游戏架构呀?"
她看了看我,因为这几天的事,她心情不好,但是她还是对我笑了笑,说:本来,找个程序员男朋友就不简单,我还找了个程序员中做游戏的男朋友 .
我说:"哈哈,你要是不喜欢听我讲架构,那陪你看剧怎么样? "因为我听出来,有时候女孩子爱一个男孩子,她会欺骗她自己.毕竟,没有女孩子喜欢听编程的事.
她说:"不用了,听你讲,听困了正好去睡觉."
我说:"那好吧,毕竟昨天晚上听到疫情和洪水的消息,她也一夜没睡好."
我尽量的温柔,对她说:"我这次在想,设计一个角色的通用框架,这个框架可以在任何的项目中去使用,那么要达到这个目标,那么旧的细细的拆分角色的一些功能模块,比如:角色的属性,其中角色的属性就有,血量,蓝量,速度".
"啊,是不是还得有攻击力啊?"她问.
"不,这个攻击力不应该放在角色属性中,为什么呢?那就是因为攻击力附加在角色的使用武器上"
"哦,对,攻击力随着武器的更换而更换,那有没有基础攻击力呢?"
"基础攻击力也算是武器的一种,只不过这个武器是没有武器"
我接着说,"还有,角色受玩家控制,但是它也受AI脚本的控制,比如在一个场景中,和你对战的既有可能是真实的玩家,也有可能是个AI,也就是玩家经常说的:"假人"."
我继续说道:"其实这里还牵扯到许多东西,比如,UI上面显示的角色图标,以及生产角色的逻辑." 她皱了皱眉,耸了耸鼻子,我特爱看她耸鼻子的样子,耸鼻子的时候,嘴巧妙的做成一个很酷的动作,好像在坏笑.
她说:"有点复杂,我玩游戏的时候没想那么多."
我刮了一下她的鼻头,"其实还有许多功能,比如角色出来的时候初始等级,如果兵营级数高,那么产出的角色等级也高.等等等等"
她悟性极高,马上就想到了,立马说道:"是不是要写父类,特殊的功能写成接口?"
我愕然,她说她智商120,她绝对少说了,最起码140,仅仅是这几天的说话中谈到编程,没想到,她就已经超过了学了好几个月的人了.
我说:"对,就是这个设计思路,从代码上看是这样的:"
using UnityEngine; using UnityEngine.AI; public abstract class Icharacter { protected string m_Name; protected GameObject m_GameObject = null; protected NavMeshAgent m_NavMeshAgent = null; protected AudioSource m_Audio = null; protected string m_IconSpriteName = ""; protected bool m_bKilled = false; protected bool m_checkKilled = false; protected float m_RemoveTimer = -1.5f; protected bool m_c_bCanRemove = false; //构造函数 public Icharacter() { } //设置角色共有的基本属性 public void setGameObject(GameObject go) { m_GameObject = go; m_NavMeshAgent = go.GetComponent<NavMeshAgent>(); m_Audio = go.GetComponent<AudioSource>(); } public GameObject GetGamoObject() { return m_GameObject; } public void Release() { if (m_GameObject != null) { GameObject.Destroy(m_GameObject); } } public string GetName() { return m_Name; } public void SetIcon(string path) { m_IconSpriteName = path; } public string GetIconSpriteName() { return m_IconSpriteName; } }
那么敌方和己方就是这样的
public abstract class iSoldier : Icharacter { public iSoldier() { } } public abstract class Ienemy : Icharacter { public Ienemy() { } }
到这里,她打了打哈欠,应该是困了,我只好柔声说道:我讲完了,"把她抱到她房间里,替她盖好被子.然后出来,想着今天中午给她做个什么呢?海鲜面好了.
…END…
本文转载自网络,原文链接:https://mp.weixin.qq.com/s/vlOUg46B5bcmToX-fjavJQ...
一、PostgreSQL行业位置 一 行业位置 首先我们看一看RDS PostgreSQL在整个行业当...
中国最?好的一朵云飘进了华瑞银行。阿里云将进一步助力华瑞银行All in Cloud。 -...
很长时间没有更新原创文章了,但是还一直在思考和沉淀当中,后面公众号会更频繁...
查看表结构,sbtest1有主键、k_1二级索引、i_c二级索引 CREATE TABLE `sbtest1` ...
在TOP云(zuntop.com)科技租赁过服务器的站长都知道独立服务器在价格上比VPS主...
2020年对于云计算行业来说是突破性的一年,因为公共云供应商增加了收入,而疫情...
9月17日,2020云栖大会上,阿里云正式发布工业大脑3.0。 阿里云智能资深产品专家...
定义 this是函数运行时自动生成的内部对象,即调用函数的那个对象。(不一定很准...
最近,DevOps的采用导致了企业计算的重大转变。除无服务器计算,动态配置和即付...