Skip to content

Latest commit

 

History

History
33 lines (30 loc) · 2.07 KB

REPORT.md

File metadata and controls

33 lines (30 loc) · 2.07 KB

软件工程实训报告

代码结构分析

前端设计

后端 有关SpringBoot的设计

Controller:

  1. GameController:调用业务层方法来控制游戏逻辑; controller层的功能为本次游戏请求和响应控制; controller层负责本次前后端交互,接受前端请求,,接收返回的数据,最后返回具体的页面和数据到客户端。

entity:

  1. ItemEntity:设计物品类,赋予物品名称、物品重量、物品id、所有者类型以及所有者id这些相关属性参与游戏交互。
  2. PlayerEntity:设计玩家类,玩家默认设计只有一个人,赋予玩家id,玩家携带最大重量以及上一个到达的房间有关属性。
  3. RoomEntity:设计房间类,设计相关属性和方法。

model:

  1. GetPlayerInfoResponse:整理响应请求玩家所需要的信息
  2. GetRoomInfoResponse:整理响应请求房间所需要的信息
  3. Status:返回的响应信息
  4. StatusResponse:该类用于整理返回的响应信息

service:

  1. PlayerService:
  2. RoomService:

store:

  1. ItemStore:
  2. PathStore:
  3. RoomStore:

扩展功能(具体实现见代码文件)

  1. 扩展游戏,使得一个房间里可以存放任意数量的物件,每个物件可以有一个描述和一个重量值,玩家进入一个房间后,可以通过“look”命令查看当前房间的信息以及房间内的所有物品信息;
  2. 在游戏中实现一个“back”命令,玩家输入该命令后会把玩家带回上一个房间;
  3. 在游戏中实现一个更高级的“back”命令,重复使用它就可以逐层回退几个房间,直到把玩家带回到游戏的起点;
  4. 在游戏中增加具有传输功能的房间,每当玩家进入这个房间,就会被随机地传输到另一个房间;
  5. 在游戏中新建一个独立的Player类用来表示玩家,并实现下列功能需求: 一个玩家对象应该保存玩家的姓名等基本信息,也应该保存玩家当前所在的房间; 玩家可以随身携带任意数量的物件,但随身物品的总重量不能操过某个上限值;