日排行周排行月排行日推荐周推荐月推荐

腊文小说>电影交互式游戏有哪些>第67章 杂交版的实现

第67章 杂交版的实现(第1页)

对於穿越前的那个世界来说,植物大战殭尸的二次开发並不非常容易。

每一种独特的新玩法都相当於是从头开始做了一遍。

这自然跟这部作品本身的架构有点关係。

这款09年就已经发售了的作品基於c++开发,使用的並不是现代那些成熟完整的游戏框架,在各个方面都有一定的缺陷。

但林琅从头做一遍,自然不会再老老实实地去一比一照抄,从开发之初,他就选用了c#作为主架构的首选语言。

哪怕不藉助harmonyx这种注入补丁,他也能够轻鬆加入各种模组支持。

得益於他內置的程序集加载器,只要模组的结构符合规范,便可以在启动游戏时动態热加载这些置於外部资源中的模组。

也因此,增加新的植物、殭尸、玩法等的工作量也得以骤降。

对於植物大战殭尸这款游戏来说,杂交版的完整体量已经完全可以当作dlc来卖了。

不过林琅不打算这么做,也不准备完整復刻杂交版出来。

毕竟只是一个用来当作模组开发教学的项目,只要能利用到那些接口就足够了。

过於繁多的內容反而会打击玩家的创造热情,这些应该由他们自己去发掘。

这套体系想要实现起来非常简单。

一个完全面向对象的高级语言,对於游戏来说是非常优雅的。

首先这些所有新增的植物,自然还是要遵循植物大战殭尸的底层逻辑,继承自同一个基类,也就是实体类。

为了便於使用,林琅已经提前对实体类进行了诸多衍生实现。

比如殭尸类、植物类、射弹类等,它们皆出自实体,却又各有不同。

而这些子类也自然都有著易用的实现。

就如林琅现在打算做的『双发仙人掌,自然就继承自植物类中的『射手类。

顾名思义,不论是豌豆射手、双发豌豆、机枪、还是双向等,它们皆可以继承自该类。

只需要覆写它內置的发射函数和弹丸种类的定义,便可以定製出一款截然不同的植物。

而对於不会编程的玩家来说,林琅也贴心的准备了一个完全可视化的工具。

射速、弹速、子弹类型、子弹路径、击中行为……

他几乎为所有可以设想到的情况都预置了接口,实现了一套完全数据化驱动的体系。

这套机制可以让玩家在完全0代码基础的条件下肆意发挥自己的想像力。

你甚至可以做出一个发射樱桃炸弹的机枪射手!

没错,弹丸可不一定要是豌豆或是尖刺之类的。

林琅一不做二不休,乾脆將子弹的限制移除,让所有基於实体类的实现都可以被当作弹丸。

而为了兼容这一点,他又將子弹的移动剥离成单独的脚本,以动態掛载的形式实现。

这套机制非常巧妙,它就像是把所有东西都给『插件化了一般。

我们大可以將任何东西都视作一个容器,一个能够填入任何脚本的容器。

书友推荐:见微知著(弟妹 H)总裁和他的娇艳女秘书下厨房小说TXT最新章节列表交易沦陷我偷奸了同学的妈妈我的年轻岳母暗恋对象假装被她催眠后)蝶变在言情文里撩直男男主陈放顾静姝【年代婊】重生后又娇媚勾人(nph 插足)破云吃了肉,就不能吃我了玻璃罐里的珍珠和蛇软腰潘多拉的复仇病态痴迷(校园青梅竹马1v1H)青花冷(先婚后爱H)皇嫂古代猎户的养家日常
书友收藏:和重口味母狗肉便器谈恋爱是什么感觉?官场:救了女领导后,我一路飞升反派:我的母亲是大帝山河稷母子乱伦与露出的经历清冷端庄的人妻美母和高傲圣洁的仙子师尊肏成眼里只有肉棒的淫乱痴女反向狩猎极品家丁玉德仙坊新篇我的年轻岳母浊尘寻欢录玻璃罐里的珍珠和蛇官路扶摇册母为后2:乱云再起混在女帝身边的假太监官途,搭上女领导之后!苍衍雷烬被染绿的幸福同人女神攻略调教手册交易沦陷在言情文里撩直男男主