基于VUE实现的餐厅经营游戏项目源码

WebMOOC 餐厅游戏

项目介绍

实现了一个类游戏的餐厅经营模拟,涉及的前端知识有移动端 HTML 页面布局及样式实现。实现了厨师、顾客等角色的关键操作,完成从顾客等位、点菜、烹饪、用餐、支付的一系列状态变更的数据、信息、交互、展现的变化及处理。

项目效果图

项目中角色的状态介绍:

  • 厨师的状态

状态名称状态描述
free未开工,等待顾客点菜
working已接单,正在做菜
speeding被顾客疯狂点击,加速做菜一段时间
complete完成当前菜的制作,等待客人确认

在这里插入图片描述

  • 顾客的状态

状态名称状态描述
waiting位于等待队列,等待就坐
free当前座位没有人(属于餐厅内座位的状态)
siting已下单,等待厨师接单并制作
eating正在进食
appease所有菜都超时,需要安抚后离开
pay点的菜已经吃完,准备结账

在这里插入图片描述

  • 食物的状态

状态名称状态描述
waiting顾客已下单,等待厨师接单
doing厨师已接单,正在做菜
completed厨师已做完,等待顾客接单
eating正在被顾客食用
eatup已被顾客吃完
destroy等待时间已超时

在这里插入图片描述

部分游戏设定:

需求文档中的内容基本全部完成,这里介绍一些比较重要的部分和自设定的部分。

时间设定

  • 每周7天,每天6小时,每小时30秒

  • 头部的时间栏背景色设为动态变化的,用来提示距离下一天的时间。

  • 每小时结束时自动收集还未主动收集的金币,并将顾客请走。

  • 每一天结束时自动安抚还未主动安抚的顾客,并将顾客请走。

  • 每周结束后自动结算厨师工资,每天¥20,若周内某天没有工作,则当天没有工资(万恶的资本家!)。

顾客设定

  • 顾客从预先设定的18个候选顾客中随机产生。

  • 游戏开始一秒后会来第一个顾客,随后每隔三秒会随机产生一名顾客,顾客可能来,也可能不来。

  • 每个顾客每天只能来餐厅一回。等待队列最长为5个,顾客到了之后若等待人数超过5人,则会离开,今天之内不会再来。

  • 点击等待队列后顾客立即从队列中去除,先出现菜单栏,点菜之后就坐。

厨师设定

  • 厨师开始做菜时,减去做菜的成本,当成本大于现有现金时,显示为负值

  • 解雇厨师时,支付厨师¥140

  • 厨师做好菜后给顾客上菜,如果该顾客等待已经超时,则等待5秒,若还是没有其他顾客点这个菜,就将这个菜作废掉,进入下一个状态。

  • 顾客点击厨师头像可以加速当前菜的制作,同时厨师背景发生改变,一段时间后变回来,每个顾客最多只能让同一个厨师加速一次

食物设定

  • 食物的价格和和成本都是预先设定的,各不相同,每个菜成本大约为价格的一半。

  • 顾客食用食物的速度也不相同,但比等待食物的速度要快。

  • 顾客用餐是串行的,只有完成一个菜的用餐才会进行下一个菜,用餐顺序按上菜顺序进行。

优化及适配

  1. 已在谷歌浏览器和vivo z3真机中做过测试,显示效果良好
  2. 项目用vue框架并使用vue-cli脚手架进行开发,使用vuex进行全局状态管理,并使用Apache2在远程服务器上进行了部署上线。
  3. 背景图进行了压缩,最终大小只有80k左右

完整项目源码下载地址:基于VUE实现的餐厅经营游戏项目源码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/515122.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

巨控560:走向国际,我们的设备如何拥抱远程控制技术?

走向国际,我们的设备如何拥抱远程控制技术? 描述:随着国内设备走向国际市场,客户需求的多样性和不确定性大大增加。本文将深入探讨在这一背景下,是否有必要为我们的设备加装远程PLC控制模块,以及如何应对频…

分布式系统架构中的相关概念

1.1、衡量网站的性能指标 响应时间:指执行一个请求从开始到最后收到响应数据所花费的总体时间。并发数:指系统同时能处理的请求数量。 并发连接数:指的是客户端向服务器发起请求,并建立了TCP连接。每秒钟服务器连接的总TCP数量请…

基于SSM+Jsp+Mysql的图书仓储管理系统

开发语言:Java框架:ssm技术:JSPJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包…

ospf的路由计算

LSA是链路状态信息(描述接口信息),路由器将接口信息发给其他路由器,LSA有6个分类,1,2类描述区域内信息,3类是区域间的,5类是外部路由,4类是对5类的补充,7类是…

企微知识库优缺点解析:如何让其效益最大化

企业搭建企微知识库,作为企业内部知识的集中存储和共享平台,为企业带来了很多便利。但是,任何事物都有其两面性,企微知识库也不例外。今天我们就来详细探讨搭建企微知识库的优点和缺点,如何在使用企微知识库时使其发挥…

【群晖】NASTOOL-自动化处理影音视频工具

【群晖】NASTOOL-自动化处理影音视频 本文主要从获取、部署、使用、配置等方面进行手把手教学如何使用nastool工具进行影音视频自动化处理。从此靠别繁琐的网上各个网址找资源-下载-复制-改名-刮削等操作。 准备 DSM 7.1 (我使用的是群晖 7.1 系统,不管…

【一站式学会Kotlin】第一节 kotlin 介绍

作者介绍: 百度资深Android工程师T6,在百度任职7年半。 目前:成立赵小灰代码工作室,欢迎大家找我开发Android、微信小程序、鸿蒙项目。 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默。给大家…

并发编程之线程池的应用以及一些小细节的详细解析

线程池在实际中的使用 实际开发中,最常用主要还是利用ThreadPoolExecutor自定义线程池,可以给出一些关键的参数来自定义。 在下面的代码中可以看到,该线程池的最大并行线程数是5,线程等候区(阻塞队列)是3,即…

【Java集合进阶】list常见的方法和五种遍历方式数据结构

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【python】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收藏…

03-04java基础之数据类型举例

1、需要特殊注意的数据类型举例 1)定义float类型,赋值时需要再小数后面带f float num11.2f; System.out.println(num1);2)定义double类型,赋值时直接输入小数就可以 3)另外需要注意,float类型的精度问题…

修改element-ui table组件展开/收起图标、支持点击行展开/收起、隐藏不可展开行得图标

Element中table默认支持的,展开和收起功能,如下: 针对表格的展开收起,本文改造的主要有3点: 1、修改展开/收起的图标; 2、对于不支持展开/收起的行,隐藏图标; 3、点击行&#xff0…

AcWing---转圈游戏---快速幂

太久没写快速幂了... 这是一道数学题orz,能看出来的话答案就是 ,但是很大,同时还要mod n,直接用快速幂即可。 快速幂模版: long long int power(long long int a,long long int b,long long int mod){long long int r…

c++20协程详解(一)

前言 本文是c协程第一篇,主要是让大家对协程的定义,以及协程的执行流有一个初步的认识,后面还会出两篇对协程的高阶封装。 在开始正式开始协程之前,请务必记住,c协程 不是挂起当前协程,转而执行其他协程&a…

Shell脚本之基本语法

目录 一、变量定义 变量命名规则: 变量的赋值: 只读变量: 删除变量: 二、变量的类型 自定义变量: 环境变量: 位置参数: 预定义变量: 三、键盘输入 四、数值运算 为什么…

Failed to resolve import “Home/components/HomeNew.vue“. Does the file exist?

错误信息 [plugin:vite:import-analysis] Failed to resolve import "/apis/home.js" from "src/views/Home/components/HomeNew.vue". Does the file exist? 错误原因 路径错误 解决方法

mysql-FIND_IN_SET包含查询

如图所示,需要查询字段ancestorid中包含14的所有数据,使用FIND_IN_SET即可实现,不需要使用模糊查找like 示例sql: SELECT * FROM mt_fire_template WHERE FIND_IN_SET(14,ancestorid) 结果

安装Pillow库的方法最终解答!_Python第三方库

安装Python第三方库Pillow 我的环境:Window10,Python3.7,Anaconda3,Pycharm2023.1.3 pillow库 Pillow库是一个非常强大的图像处理库。它提供了广泛的图像处理功能,让我们可以轻松地读取和保存图像、创建缩略图和合并到…

LeetCode-94. 二叉树的中序遍历【栈 树 深度优先搜索 二叉树】

LeetCode-94. 二叉树的中序遍历【栈 树 深度优先搜索 二叉树】 题目描述:解题思路一:递归解题思路二:迭代解题思路三:0 题目描述: 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 示例 1&#xff1…

【Redis系列】Redis安装与使用

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Maven 项目之快速选择环境配置文件

Maven项目中,多环境之间如何进行配置文件的切换。在我们开发的过程中,经常会出现开发环境、测试环境、生产环境等之间的切换,如果我们每次都去替换配置文件,就会跟繁琐,这个时候就可以创建多个环境,同时在对…