JavaScript大富翁,复刻了童年与小伙伴玩的经典大富翁游戏。
在线试玩:https://seanboy.club/game/monopoly
- 配置选项框:选择金钱、玩家人数、电脑人数
- 选择角色框:选择角色
- 主地图:通过grid布局实现,通过JS动态添加棋格;中间的超大格子用来存放各种游戏信息,从上到下依次为:当前玩家、游戏选项、掷骰子区、玩家信息区。
- 各种组件:角色棋子、房子、升级房子的动画、购买框、消息框、地产信息卡片。
- 选择人数
- 选择角色
- 游戏开局
- 掷骰子
- 角色根据骰子点数setInterval移动
- setTimeout停下后触发棋格事件
- 事件完成后轮到下一个玩家
- 处理买地和升级地产
- 判断玩家顺序(避开停止和破产状态)
- 判断玩家破产
- 判断游戏结束
- 角色棋子
- 名字
- 金钱
- 状态(活跃或破产)
- 停止(代表天数,默认为0)
- 是否玩家控制
- 对应DOM节点
- 当前在棋格位置
- 棋格
- 地名
- 地价
- 状态(对应普通地产的等级或特殊区域)
- 对应DOM节点
- 机会命运
- 说明文字
- 金钱数值
- 是否停止
- 实现所有界面内容显示相关内容
- 这个大富翁是19年10月11日开始制作的,那时刚学JavaScript才半个月。最终花了7天左右时间做出了完整,无bug,游戏性强的版本(共两千多行代码)。
- 半年后,20年4月7日晚上,打算往前端方向发展求职之后,从现在的视角用原生JS重制了一遍,把多达一千五百行的JS代码缩到了仅六百多行,并新增了不少功能。
- 下一步将结合Vue框架来重制,很是期待现代化框架的功力能帮助我省多少功夫。