我正在尝试学习如何使用Javascript编写(虚拟)交易卡牌游戏(类似于魔术飞球)。我已经了解了一些MVC架构和控制器的知识,但这些对我来说都太难了(我没有受过正式的计算机科学教育),我想知道是否有任何好的链接或建议,可以让我在初学者的水平上更多地了解代码架构。
每张“卡牌”都应该被表示为一个对象,所有卡牌规则的逻辑应该包含在一个大型游戏引擎函数中,还是连接在一起的许多小函数?
下面是一个例子: 假设有一张卡牌上写着:“当这张卡牌进入游戏时,抽一张牌。”我应该如何设计游戏以准备这种情况,并且如何触发它(最有效的方式)?是卡牌触发游戏引擎,还是游戏引擎解析每张打出的卡牌?
再举一个例子: 假设有一张卡牌上写着:“你所有的卡牌费用减少1点”,并且它会永久留在游戏中。游戏如何理解需要在这种情况下改变规则?这是一个监听卡牌被打出并中断费用的函数吗?随着每个回合的解决,这条规则存储在哪里?有变量存储游戏的基本规则(全局卡牌费用修改器:0;你的卡牌费用修改器:0)和其他变量存储卡牌引入的新规则(你的卡牌费用修改器:-1),还是这些变量是由游戏引擎动态创建的,因为卡牌改变了规则(你的精灵费用修改器:-2)?当一张卡牌被摧毁时,规则如何知道要更改,从而删除卡牌的规则修改?
我需要一个关于监听器和事件的入门指南吗?(我对它们一无所知,但我偶尔会看到它们的参考资料。)您能指点我一个好的资源吗?
明确一下,我不是要求别人帮我手动谷歌搜索;我是在盲目地摸索并询问是否有人能给我指出正确的单词或短语进行搜索。谢谢!
每张“卡牌”都应该被表示为一个对象,所有卡牌规则的逻辑应该包含在一个大型游戏引擎函数中,还是连接在一起的许多小函数?
下面是一个例子: 假设有一张卡牌上写着:“当这张卡牌进入游戏时,抽一张牌。”我应该如何设计游戏以准备这种情况,并且如何触发它(最有效的方式)?是卡牌触发游戏引擎,还是游戏引擎解析每张打出的卡牌?
再举一个例子: 假设有一张卡牌上写着:“你所有的卡牌费用减少1点”,并且它会永久留在游戏中。游戏如何理解需要在这种情况下改变规则?这是一个监听卡牌被打出并中断费用的函数吗?随着每个回合的解决,这条规则存储在哪里?有变量存储游戏的基本规则(全局卡牌费用修改器:0;你的卡牌费用修改器:0)和其他变量存储卡牌引入的新规则(你的卡牌费用修改器:-1),还是这些变量是由游戏引擎动态创建的,因为卡牌改变了规则(你的精灵费用修改器:-2)?当一张卡牌被摧毁时,规则如何知道要更改,从而删除卡牌的规则修改?
我需要一个关于监听器和事件的入门指南吗?(我对它们一无所知,但我偶尔会看到它们的参考资料。)您能指点我一个好的资源吗?
明确一下,我不是要求别人帮我手动谷歌搜索;我是在盲目地摸索并询问是否有人能给我指出正确的单词或短语进行搜索。谢谢!