XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFESpaceNinjaServer

A simple server for a small space ninja game

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFESpaceNinjaServer

feat: implement stepSequencers.php (#327)

f1237d56
Sainan <sainan@calamity.gg>
提交于

代码差异

3 个文件 +17 -1
Added src/controllers/api/stepSequencersController.ts +14 -0
@@ -0,0 +1,14 @@
1 import { RequestHandler } from "express";
2 import { getAccountIdForRequest } from "@/src/services/loginService";
3 import { getInventory } from "@/src/services/inventoryService";
4 import { IStepSequencer } from "@/src/types/inventoryTypes/inventoryTypes";
5
6 export const stepSequencersController: RequestHandler = async (req, res) => {
7 const accountId = await getAccountIdForRequest(req);
8 const inventory = await getInventory(accountId);
9 const stepSequencer = JSON.parse(req.body.toString()) as IStepSequencer;
10 delete stepSequencer.ItemId;
11 const stepSequencerIndex = inventory.StepSequencers.push(stepSequencer);
12 const changedInventory = await inventory.save();
13 res.json(changedInventory.StepSequencers[stepSequencerIndex - 1]); // unsure about the expected response format, but it seems anything works.
14 };
Modified src/routes/api.ts +2 -0
@@ -50,6 +50,7 @@ import { setSupportedSyndicateController } from "@/src/controllers/api/setSuppor
50 50 import { shipDecorationsController } from "@/src/controllers/api/shipDecorationsController";
51 51 import { startDojoRecipeController } from "@/src/controllers/api/startDojoRecipeController";
52 52 import { startRecipeController } from "@/src/controllers/api/startRecipeController";
53 import { stepSequencersController } from "@/src/controllers/api/stepSequencersController";
53 54 import { surveysController } from "@/src/controllers/api/surveysController";
54 55 import { syndicateSacrificeController } from "../controllers/api/syndicateSacrificeController";
55 56 import { trainingResultController } from "@/src/controllers/api/trainingResultController";
@@ -117,6 +118,7 @@ apiRouter.post("/setShipCustomizations.php", setShipCustomizationsController);
117 118 apiRouter.post("/shipDecorations.php", shipDecorationsController);
118 119 apiRouter.post("/startDojoRecipe.php", startDojoRecipeController);
119 120 apiRouter.post("/startRecipe.php", startRecipeController);
121 apiRouter.post("/stepSequencers.php", stepSequencersController);
120 122 apiRouter.post("/syndicateSacrifice.php", syndicateSacrificeController);
121 123 apiRouter.post("/trainingResult.php", trainingResultController);
122 124 apiRouter.post("/updateChallengeProgress.php", updateChallengeProgressController);
Modified src/types/inventoryTypes/inventoryTypes.ts +1 -1
@@ -831,7 +831,7 @@ export interface IStepSequencer {
831 831 NotePacks: INotePacks;
832 832 FingerPrint: string;
833 833 Name: string;
834 ItemId: IOid;
834 ItemId?: IOid;
835 835 }
836 836
837 837 export interface INotePacks {