d
This commit is contained in:
parent
c3a6f5ff37
commit
4c4e767ec6
73 changed files with 3502 additions and 741 deletions
|
|
@ -5,14 +5,18 @@ function createPlayerService(deps){
|
|||
randomHex,now,cleanName,defaultName,hashToken,writePlayer,readPlayer,
|
||||
withPlayerQueue,withWorldQueue,readWorld,readWorldBoard,normalizeBonuses,
|
||||
earnedScore,publicState,bonusAmount,bonusDelayMs,notifyProfile,
|
||||
purchaseContext,findPurchase,assertAffordable,createPurchase,boardPattern
|
||||
purchaseContext,findPurchase,assertAffordable,createPurchase,starterLineColor,boardPattern
|
||||
}=deps||{};
|
||||
|
||||
const createSession=async nameInput=>{
|
||||
const playerId=randomHex(12),token=randomHex(32),timestamp=now(),name=cleanName(nameInput,defaultName(playerId));
|
||||
const record={playerId,name,tokenHash:hashToken(token),purchases:[],generationBonuses:[],earnedScore:0,economyRevision:0,createdAt:timestamp,updatedAt:timestamp};
|
||||
const record={
|
||||
playerId,name,tokenHash:hashToken(token),purchases:[],generationBonuses:[],
|
||||
starterLineColor:starterLineColor?.(playerId)||null,earnedScore:0,economyRevision:0,
|
||||
createdAt:timestamp,updatedAt:timestamp
|
||||
};
|
||||
await writePlayer(record);
|
||||
return{status:201,body:{playerId,token,name,revision:0,serverTime:timestamp}};
|
||||
return{status:201,body:{playerId,token,name,starterLineColor:record.starterLineColor,revision:0,serverTime:timestamp}};
|
||||
};
|
||||
const updateProfile=async(playerId,nameInput)=>{
|
||||
const name=cleanName(nameInput);if(!name)throw Object.assign(new Error('Player name is required'),{status:400});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue